eliot.absences.saisie.saisie.GridAbsencesView = Ext.extend(Ext.util.Observable, {
- constructor: function(config) {
+ constructor:function (config) {
// Config par défaut
var cfg = {
- storeAppel: undefined,
- storeAbsences: undefined,
+ storeAppel:undefined,
+ storeAbsences:undefined,
storePlagesHoraires:undefined
};
var Constantes = eliot.absences.saisie.saisie.Constantes;
this.addEvents(
- Constantes.eventId.actionModifieDetailsPrincipalsAbsence,
- Constantes.eventId.actionSupprimeAbsence,
- Constantes.eventId.actionScrollBar
- );
+ Constantes.eventId.actionModifieDetailsPrincipalsAbsence,
+ Constantes.eventId.actionSupprimeAbsence,
+ Constantes.eventId.actionScrollBar
+ );
// Construit la configuration des colonnes de la table des appels à
// partir des données de plages horaires
var columnsConfig = this.construitGridAppelColumnsConfig(
- cfg.storeAppel,
- cfg.storePlagesHoraires
- );
+ cfg.storeAppel,
+ cfg.storePlagesHoraires
+ );
// ColumnModel
var cm = new Ext.ux.grid.LockingColumnModel({
- defaults: {
- sortable: false,
- menuDisabled : true
+ defaults:{
+ sortable:false,
+ menuDisabled:true
},
- columns: columnsConfig
+ columns:columnsConfig
});
// GridPanel
this.grid = new Ext.grid.GridPanel({
- store: cfg.storeAbsences,
- enableColumnMove: false,
- enableColumnResize: false,
- border: false,
- cm: cm,
- view: new Ext.ux.grid.LockingGridView()
+ store:cfg.storeAbsences,
+ enableColumnMove:false,
+ enableColumnResize:false,
+ border:false,
+ cm:cm,
+ view:new Ext.ux.grid.LockingGridView()
});
this.observeGrilleAbsences();
// Menu contextuel
this.menuContextuel =
- new eliot.absences.saisie.saisie.MenuContextuelAbsencesView();
+ new eliot.absences.saisie.saisie.MenuContextuelAbsencesView();
//Fenêtre de modification des absences
this.windowEditeAbsenceView =
- new eliot.absences.saisie.saisie.WindowEditeAbsenceView();
+ new eliot.absences.saisie.saisie.WindowEditeAbsenceView();
this.observeMenuContextuel(this.menuContextuel);
this.observeWindowEditeAbsenceView(this.windowEditeAbsenceView);
/**
* Observe le composant graphique grid des absences
*/
- observeGrilleAbsences : function () {
+ observeGrilleAbsences:function () {
var Constantes = eliot.absences.saisie.saisie.Constantes;
this.grid.addListener({
cellclick:{
- fn: function(grid, rowIndex, columnIndex, event) {
+ fn:function (grid, rowIndex, columnIndex, event) {
eliot.absences.Message.resetMessages();
if (columnIndex > 0) { // Pas pour la colonne des élèves
var dataIndex =
- this.getAppelIdFromColumnIndex(columnIndex);
+ this.getAppelIdFromColumnIndex(columnIndex);
if (dataIndex !== Constantes.id.storeAppelDataIndexVide) {
this.fireEvent(
- eliot.absences.saisie.saisie.Constantes.
- eventId.actionModifieDetailsPrincipalsAbsence,
- grid.getStore().getAt(rowIndex),
- this.getAppelIdFromColumnIndex(columnIndex)
- )
+ eliot.absences.saisie.saisie.Constantes.
+ eventId.actionModifieDetailsPrincipalsAbsence,
+ grid.getStore().getAt(rowIndex),
+ this.getAppelIdFromColumnIndex(columnIndex),
+ columnIndex
+ )
}
}
},
- scope: this
+ scope:this
},
- bodyscroll: {
- fn: function(scrollLeft, scrollTop) {
+ bodyscroll:{
+ fn:function (scrollLeft, scrollTop) {
this.fireEvent(eliot.absences.saisie.saisie.Constantes.eventId.
- actionScrollBar,
- scrollLeft
- );
+ actionScrollBar,
+ scrollLeft
+ );
},
- scope: this
+ scope:this
},
- cellcontextmenu: {
- fn: function(grid, rowIndex, columnIndex, e) {
+ cellcontextmenu:{
+ fn:function (grid, rowIndex, columnIndex, e) {
if (columnIndex > 0) { // Pas pour la colonne des élèves
var dataLigneAppel = grid.getStore().getAt(rowIndex);
var idAppel = this.getAppelIdFromColumnIndex(columnIndex);
var absenceInfo = dataLigneAppel.get(idAppel);
this.menuContextuel.showAt(
- rowIndex,
- e,
- dataLigneAppel,
- absenceInfo
- );
+ rowIndex,
+ e,
+ dataLigneAppel,
+ absenceInfo
+ );
}
},
- scope: this
+ scope:this
}
});
},
/**
* @private
*/
- observeMenuContextuel: function(menuContextuel) {
+ observeMenuContextuel:function (menuContextuel) {
var Constantes = eliot.absences.saisie.saisie.Constantes;
menuContextuel.addListener(
- Constantes.eventId.actionEditeDetailsAbsence,
- this.actionEditeDetailsAbsence,
- this
- );
+ Constantes.eventId.actionEditeDetailsAbsence,
+ this.actionEditeDetailsAbsence,
+ this
+ );
menuContextuel.addListener(
- Constantes.eventId.actionSupprimeAbsence,
- function(dataLigneAppel, appelId) {
- this.fireEvent(
- Constantes.eventId.actionSupprimeAbsence,
- dataLigneAppel,
- appelId
- );
- },
- this
- );
+ Constantes.eventId.actionSupprimeAbsence,
+ function (dataLigneAppel, appelId) {
+ this.fireEvent(
+ Constantes.eventId.actionSupprimeAbsence,
+ dataLigneAppel,
+ appelId
+ );
+ },
+ this
+ );
},
- observeWindowEditeAbsenceView : function(windowEditeAbsenceView) {
+ observeWindowEditeAbsenceView:function (windowEditeAbsenceView) {
var Constantes = eliot.absences.saisie.saisie.Constantes;
windowEditeAbsenceView.addListener(
- Constantes.eventId.actionSupprimeAbsence,
- function(dataLigneAppel, appelId) {
- this.fireEvent(
- Constantes.eventId.actionSupprimeAbsence,
- dataLigneAppel,
- appelId
- );
- },
- this
- );
+ Constantes.eventId.actionSupprimeAbsence,
+ function (dataLigneAppel, appelId) {
+ this.fireEvent(
+ Constantes.eventId.actionSupprimeAbsence,
+ dataLigneAppel,
+ appelId
+ );
+ },
+ this
+ );
//TOIMP récupérer les paramètres
windowEditeAbsenceView.addListener(
- Constantes.eventId.actionModifieDetailsRetardDepart,
- function(dataAppelLigne, appelEtId, retradDepartInfo) {
- this.fireEvent(
- Constantes.eventId.actionModifieDetailsRetardDepart,
- dataAppelLigne,
- appelEtId,
- retradDepartInfo
- );
- },
- this
- );
+ Constantes.eventId.actionModifieDetailsRetardDepart,
+ function (dataAppelLigne, appelEtId, retradDepartInfo) {
+ this.fireEvent(
+ Constantes.eventId.actionModifieDetailsRetardDepart,
+ dataAppelLigne,
+ appelEtId,
+ retradDepartInfo
+ );
+ },
+ this
+ );
},
- observeGridAppelView : function(gridAppelView) {
+ observeGridAppelView:function (gridAppelView) {
var Constantes = eliot.absences.saisie.saisie.Constantes;
gridAppelView.addListener(
- Constantes.eventId.actionScrollBar,
- this.setScrollBarPosition,
- this
- );
+ Constantes.eventId.actionScrollBar,
+ this.setScrollBarPosition,
+ this
+ );
},
/**
* @param storeAppel le store contenant les données sur les appels
* @param storePlagesHoraires contient les données des plages horaires
*/
- construitGridAppelColumnsConfig: function(storeAppel, storePlagesHoraires) {
+ construitGridAppelColumnsConfig:function (storeAppel, storePlagesHoraires) {
var Constantes = eliot.absences.saisie.saisie.Constantes;
var resultat = [];
// Ajout de la colonne 'élève'
resultat.push({
- header: ' ',
- width: eliot.absences.saisie.saisie.Constantes.dimension.largeurColonneEleve,
- dataIndex : 'eleveNom',
- locked: true,
- renderer: this.rendererEleve
+ header:' ',
+ width:eliot.absences.saisie.saisie.Constantes.dimension.largeurColonneEleve,
+ dataIndex:'eleveNom',
+ locked:true,
+ renderer:this.rendererEleve
});
var index = 0;
// Ajout des colonnes de plages horaire
storeAppel.each(
- function(dataAppel) {
- var idAppel = dataAppel.get('idAppel');
- var dataIndex;
- if ((idAppel !== '') && (idAppel.charAt(0) !== '-')) {
- dataIndex = 'appel' + idAppel;
- index = index + dataAppel.get('largeur');
- }
- else {
- dataIndex = Constantes.id.storeAppelDataIndexVide;
- index++;
- }
-
- var plageOuverte = storePlagesHoraires.getAt(index - 1).data.ouvert;
- var plageId = storePlagesHoraires.getAt(index - 1).data.id;
-
- resultat.push({
- header: ' ',
- width: dataAppel.get('largeur') * eliot.absences.saisie.saisie.
- Constantes.dimension.largeurColonnePlageHoraire,
- dataIndex : dataIndex,
- renderer : this.rendererAppelLigne.createDelegate(
- this,
- [plageOuverte, plageId],
- 3
- )
- })
- },
- this
- );
+ function (dataAppel) {
+ var idAppel = dataAppel.get('idAppel');
+ var dataIndex;
+ if ((idAppel !== '') && (idAppel.charAt(0) !== '-')) {
+ dataIndex = 'appel' + idAppel;
+ index = index + dataAppel.get('largeur');
+ }
+ else {
+ dataIndex = Constantes.id.storeAppelDataIndexVide;
+ index++;
+ }
+
+ var plageOuverte = storePlagesHoraires.getAt(index - 1).data.ouvert;
+ var plageId = storePlagesHoraires.getAt(index - 1).data.id;
+
+ resultat.push({
+ header:' ',
+ width:dataAppel.get('largeur') * eliot.absences.saisie.saisie.
+ Constantes.dimension.largeurColonnePlageHoraire,
+ dataIndex:dataIndex,
+ renderer:this.rendererAppelLigne.createDelegate(
+ this,
+ [plageOuverte, plageId],
+ 3
+ )
+ })
+ },
+ this
+ );
return resultat;
},
- rendererEleve: function(eleveNom, obj, record) {
+ rendererEleve:function (eleveNom, obj, record) {
var eleveId = record.get('eleveId');
return '<a href="#" onclick="eliot.ficheeleve.Application.' +
- 'afficheFicheEleve(' + eleveId + ',' + false +');">' + eleveNom + '</a>';
+ 'afficheFicheEleve(' + eleveId + ',' + false + ');">' + eleveNom + '</a>';
},
- rendererAppelLigne : function(dataAppelLigne, obj, record, open, plageId) {
+ rendererAppelLigne:function (dataAppelLigne, obj, record, open, plageId) {
var Constantes = eliot.absences.saisie.saisie.Constantes;
var divCellule = '';
if (open) {
var absJournee = record.get('plage' + plageId);
if (absJournee) {
dataCellule = {
- nonValable : absJournee.nonValable,
- previsionnel : absJournee.previsionnel,
- motifId : absJournee.motifId,
- retard : absJournee.retard,
- depart : absJournee.depart,
- couleur : absJournee.couleur
+ nonValable:absJournee.nonValable,
+ previsionnel:absJournee.previsionnel,
+ motifId:absJournee.motifId,
+ retard:absJournee.retard,
+ depart:absJournee.depart,
+ couleur:absJournee.couleur
}
}
if (dataAppelLigne) {
if (dataAppelLigne.motifId) {
dataCellule = {
- nonValable : dataAppelLigne.nonValable,
- previsionnel : dataAppelLigne.previsionnel,
- motifId : dataAppelLigne.motifId,
- retard : dataAppelLigne.retard,
- depart : dataAppelLigne.depart,
- couleur : dataAppelLigne.couleur
+ nonValable:dataAppelLigne.nonValable,
+ previsionnel:dataAppelLigne.previsionnel,
+ motifId:dataAppelLigne.motifId,
+ retard:dataAppelLigne.retard,
+ depart:dataAppelLigne.depart,
+ couleur:dataAppelLigne.couleur
}
}
}
classTypeAbsence = "motifAbsPrevisionnelle";
}
- if (dataCellule.motifId == eliot.absences.saisie.saisie.Modele.
- data.idMotifSansMotif) {
+ if (dataCellule.motifId == eliot.absences.saisie.saisie.Modele.
+ data.idMotifSansMotif) {
classMotif = "motifAucun";
}
}
divCellule = '<div class="' + classMotif +
- '" style="background-color:' +
- dataCellule.couleur + ';height:14px;">' +
- '<div class="' + classTypeAbsence + '">' +
- divRetard +
- divDepart +
- '</div>' +
- '</div>';
+ '" style="background-color:' +
+ dataCellule.couleur + ';height:14px;">' +
+ '<div class="' + classTypeAbsence + '">' +
+ divRetard +
+ divDepart +
+ '</div>' +
+ '</div>';
}
} else {
divCellule =
- '<div style="background-color:' +
- Constantes.couleurs.plageHoraireFermee +
- ';height:14px;"></div>';
+ '<div style="background-color:' +
+ Constantes.couleurs.plageHoraireFermee +
+ ';height:14px;"></div>';
}
return divCellule;
},
- getAppelIdFromColumnIndex : function (columnIndex) {
+ getAppelIdFromColumnIndex:function (columnIndex) {
return this.grid.getColumnModel().getDataIndex(columnIndex);
},
- actionEditeDetailsAbsence : function (dataAppelLigne, appelId) {
+ actionEditeDetailsAbsence:function (dataAppelLigne, appelId) {
var dataAppel = this.storeAppel.getById(appelId);
this.windowEditeAbsenceView.afficherWindowEditeAbsenceView(
- dataAppelLigne,
- dataAppel
- );
+ dataAppelLigne,
+ dataAppel
+ );
},
- setScrollBarPosition : function (scrollLeft) {
+ setScrollBarPosition:function (scrollLeft) {
this.grid.getView().scroller.dom.scrollLeft = scrollLeft;
}