ldapsaisie/trunk/includes/js/LSformElement_date_field.js
Benjamin Renard acd0c69e23 - config.inc.php : Ajout d'une constante LS_CSS_DIR
- Ajout d'un LSformElement Date :
  -> includes/class/class.LSattr_ldap_date.php
  -> includes/class/class.LSattr_html_date.php
  -> includes/class/class.LSformElement_date.php
  -> includes/class/class.LSformRule_date.php
  -> includes/libs/jscalendar
  -> includes/js/LSformElement_date.js
  -> includes/js/LSformElement_date_field.js
  -> templates/images/calendar.png
- LSformElement : Ajout d'une méthode exportValues() utilisée par
  LSform::exportValues()
- LSform :
  -> Utlisation de LSformElement::exportValues() pour exporter les données
  du formulaire
  -> Méthode setValuesFromPostData() est désormais invoqué à chaque invocation
  de la méthode validate()
- LSformElement_select_object : Ajout d'une méthode exportValues() pour coller
  au nouveau mode d'exportation des données de l'annuaire
- LSldapObjet : Correction d'un bug potentiel (foreach sur une variable à false)
  dans la méthode updateData()
- LSsession :
  -> Méthode addCssFile() & addJSscript() : ajout d'un paramètre pour la
  possibilité d'inclusion de fichier externe (hors des dossiers par défaut
  ex: les libs)
  -> Utilisation de la Constante LS_CSS_DIR au lieu d'une chemin en dure
  -> Paramètrage JS depuis Php :
    -> Méthode addJSconfigParam() : ajouter un paramètre de config. JS
    -> Méthode displayTemplate() adaptée pour
    -> top.tpl : adapté pour afficher une div contenant les paramètres JSONisés
    -> LSdefault.css : adapté pour ne pas afficher la div contenant les params.
    -> LSdefault.js : récupère les informations et Initialise une variable
    javascript LSjsConfig
- LSconfirmBox : Correction d'un debug : "delete this;"
2008-07-18 14:02:46 +00:00

46 lines
1.4 KiB
JavaScript

var LSformElement_date_field = new Class({
initialize: function(calendarBtn){
this.calendarBtn = calendarBtn;
this.calendarBtn.addEvent('click',this.onCalendarBtnClick.bind(this));
// Récupération des paramètres à partir de l'attribut 'rem' du bouton
this.params = varLSdefault.LSjsConfig[this.calendarBtn.id];
if (!$type(this.params)) {
this.params={};
}
if (!$type(this.params.format)) {
this.params.format = "%d/%m/%Y, %H:%M:%S";
}
if (!$type(this.params.firstDayOfWeek)) {
this.params.firstDayOfWeek=0;
}
this.input = calendarBtn.getParent().getFirst();
this.input.addEvent('click',this.onCalendarBtnClick.bind(this));
this.date = Date.parseDate(this.input.value,this.params.format);
this.calendar = new Calendar(
this.params.firstDayOfWeek,
this.date,
this.onChangeCalendar.bind(this),
this.onCloseCalendar.bind(this)
);
this.calendar.setDateFormat(this.params.format);
this.calendar.showsTime = true;
this.calendar.create();
},
onCalendarBtnClick: function() {
this.calendar.showAtElement(this.calendarBtn);
},
onChangeCalendar: function(calendar, date) {
this.input.value = date;
},
onCloseCalendar: function() {
this.calendar.hide();
}
});