mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-13 05:44:24 +00:00
Refactoring : tabulation with 4 spaces
This commit is contained in:
parent
332ee277d3
commit
e6a47ddcbc
@ -1,184 +1,185 @@
|
||||
/* jslint vars: true */
|
||||
/*jslint indent: 3 */
|
||||
/* global moment, $ */
|
||||
/*jslint indent: 4 */
|
||||
/* global moment, $, window */
|
||||
'use strict';
|
||||
|
||||
var chill = function() {
|
||||
|
||||
/* intialiase the pikaday module */
|
||||
function initPikaday(locale) {
|
||||
var i18n_trad = {
|
||||
fr: {
|
||||
previousMonth : 'Mois précédent',
|
||||
nextMonth : 'Mois suivant',
|
||||
months : ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
|
||||
weekdays : ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
|
||||
weekdaysShort : ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam']
|
||||
},
|
||||
nl: {
|
||||
previousMonth : 'Vorig maand',
|
||||
nextMonth : 'Volgende maand',
|
||||
months : ['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December'],
|
||||
weekdays : ['Zondag','Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag'],
|
||||
weekdaysShort : ['Zon','Ma','Di','Wo','Do','Vri','Zat']
|
||||
}
|
||||
};
|
||||
|
||||
var pikaday_options = {
|
||||
format: 'D-M-YYYY',
|
||||
yearRange: [parseInt(moment().format('YYYY')) - 100, parseInt(moment().format('YYYY'))],
|
||||
};
|
||||
|
||||
if(locale in i18n_trad) {
|
||||
pikaday_options.i18n = i18n_trad[locale];
|
||||
}
|
||||
|
||||
$('.datepicker').pikaday(
|
||||
pikaday_options
|
||||
);
|
||||
}
|
||||
|
||||
/* emulate the position:sticky */
|
||||
function emulateSticky() {
|
||||
var need_emulation = false;
|
||||
|
||||
$('.sticky-form-buttons').each(function(i,stick_element) {
|
||||
if($(stick_element).css('position') !== 'sticky') {
|
||||
need_emulation = true;
|
||||
stick_element.init_offset_top = $(stick_element).offset().top;
|
||||
}
|
||||
});
|
||||
|
||||
function emulate() {
|
||||
$('.sticky-form-buttons').each(function(i,stick_element) {
|
||||
if (($(window).scrollTop() + $(window).height()) < stick_element.init_offset_top) {
|
||||
//sticky at bottom
|
||||
$(stick_element).css('position','fixed');
|
||||
$(stick_element).css('bottom','0');
|
||||
$(stick_element).css('top','');
|
||||
$(stick_element).css('width',$(stick_element).parent().outerWidth());
|
||||
} else if (stick_element.init_offset_top < $(window).scrollTop()) {
|
||||
//sticky at top
|
||||
$(stick_element).css('position','fixed');
|
||||
$(stick_element).css('top','0');
|
||||
$(stick_element).css('bottom','');
|
||||
$(stick_element).css('width',$(stick_element).parent().outerWidth());
|
||||
} else {
|
||||
//no sticky
|
||||
$(stick_element).css('position','initial');
|
||||
$(stick_element).css('bottom','');
|
||||
$(stick_element).css('width','');
|
||||
$(stick_element).css('top','');
|
||||
/* intialiase the pikaday module */
|
||||
function initPikaday(locale) {
|
||||
var i18n_trad = {
|
||||
fr: {
|
||||
previousMonth : 'Mois précédent',
|
||||
nextMonth : 'Mois suivant',
|
||||
months : ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
|
||||
weekdays : ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
|
||||
weekdaysShort : ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam']
|
||||
},
|
||||
nl: {
|
||||
previousMonth : 'Vorig maand',
|
||||
nextMonth : 'Volgende maand',
|
||||
months : ['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December'],
|
||||
weekdays : ['Zondag','Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag'],
|
||||
weekdaysShort : ['Zon','Ma','Di','Wo','Do','Vri','Zat']
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
if(need_emulation) {
|
||||
$(window).scroll(function() {
|
||||
emulate();
|
||||
});
|
||||
var pikaday_options = {
|
||||
format: 'D-M-YYYY',
|
||||
yearRange: [parseInt(moment().format('YYYY')) - 100, parseInt(moment().format('YYYY'))],
|
||||
};
|
||||
|
||||
emulate();
|
||||
}
|
||||
}
|
||||
if(locale in i18n_trad) {
|
||||
pikaday_options.i18n = i18n_trad[locale];
|
||||
}
|
||||
|
||||
$('.datepicker').pikaday(
|
||||
pikaday_options
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display an alert message when the user wants to leave a page containing a given form
|
||||
* in a given state.
|
||||
*
|
||||
* The action of displaying the form be parametrised as :
|
||||
* - always display the alert message when leaving
|
||||
* - only display the alert message when the form contains some modified fields.
|
||||
*
|
||||
* @param{string} form_id An identification string of the form
|
||||
* @param{string} alert_message The alert message to display
|
||||
* @param{boolean} check_unsaved_data If true display the alert message only when the form
|
||||
* contains some modified fields otherwise always display the alert when leaving
|
||||
* @return nothing
|
||||
*/
|
||||
function _generalDisplayAlertWhenLeavingForm(form_id, alert_message, check_unsaved_data) {
|
||||
var form_submitted = false;
|
||||
var unsaved_data = false;
|
||||
|
||||
$(form_id)
|
||||
.submit(function() {
|
||||
form_submitted = true;
|
||||
})
|
||||
.on('reset', function() {
|
||||
unsaved_data = false;
|
||||
});
|
||||
/* emulate the position:sticky */
|
||||
function emulateSticky() {
|
||||
var need_emulation = false;
|
||||
|
||||
$.each($(form_id).find(':input'), function(i,e) {
|
||||
$(e).change(function() {
|
||||
unsaved_data = true;
|
||||
});
|
||||
});
|
||||
$('.sticky-form-buttons').each(function(i,stick_element) {
|
||||
if($(stick_element).css('position') !== 'sticky') {
|
||||
need_emulation = true;
|
||||
stick_element.init_offset_top = $(stick_element).offset().top;
|
||||
}
|
||||
});
|
||||
|
||||
$(window).bind('beforeunload', function(){
|
||||
if((!form_submitted) && (unsaved_data || !check_unsaved_data)) {
|
||||
return alert_message;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function checkNullValuesInChoices(choice_name) {
|
||||
var choices;
|
||||
console.log(choice_name);
|
||||
choices = $("input[name='"+choice_name+"']:checked");
|
||||
if (choices.size() === 0) {
|
||||
$.each($("input[name='"+choice_name+"']"), function (i, e) {
|
||||
if (e.value === "") {
|
||||
e.checked = true;
|
||||
}
|
||||
function emulate() {
|
||||
$('.sticky-form-buttons').each(function(i,stick_element) {
|
||||
if (($(window).scrollTop() + $(window).height()) < stick_element.init_offset_top) {
|
||||
//sticky at bottom
|
||||
$(stick_element).css('position','fixed');
|
||||
$(stick_element).css('bottom','0');
|
||||
$(stick_element).css('top','');
|
||||
$(stick_element).css('width',$(stick_element).parent().outerWidth());
|
||||
} else if (stick_element.init_offset_top < $(window).scrollTop()) {
|
||||
//sticky at top
|
||||
$(stick_element).css('position','fixed');
|
||||
$(stick_element).css('top','0');
|
||||
$(stick_element).css('bottom','');
|
||||
$(stick_element).css('width',$(stick_element).parent().outerWidth());
|
||||
} else {
|
||||
//no sticky
|
||||
$(stick_element).css('position','initial');
|
||||
$(stick_element).css('bottom','');
|
||||
$(stick_element).css('width','');
|
||||
$(stick_element).css('top','');
|
||||
}
|
||||
});
|
||||
}
|
||||
//}
|
||||
//});
|
||||
}
|
||||
|
||||
/**
|
||||
* Display an alert message when the user wants to leave a page containing a given
|
||||
* modified form.
|
||||
*
|
||||
* @param{string} form_id An identification string of the form
|
||||
* @param{string} alert_message The alert message to display
|
||||
* @return nothing
|
||||
*/
|
||||
function displayAlertWhenLeavingModifiedForm(form_id, alert_message) {
|
||||
_generalDisplayAlertWhenLeavingForm(form_id, alert_message, true);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Display an alert message when the user wants to leave a page containing a given
|
||||
* form that was not submitted.
|
||||
*
|
||||
* @param{string} form_id An identification string of the form
|
||||
* @param{string} alert_message The alert message to display
|
||||
* @return nothing
|
||||
*/
|
||||
function displayAlertWhenLeavingUnsubmittedForm(form_id, alert_message) {
|
||||
_generalDisplayAlertWhenLeavingForm(form_id, alert_message, false);
|
||||
}
|
||||
if(need_emulation) {
|
||||
$(window).scroll(function() {
|
||||
emulate();
|
||||
});
|
||||
|
||||
/* Enable the following behavior : when the user change the value
|
||||
of an other field, its checkbox is checked.
|
||||
*/
|
||||
function checkOtherValueOnChange() {
|
||||
$('.input-text-other-value').each(function() {
|
||||
$(this).change(function() {
|
||||
var checkbox = $(this).parent().find('input[type=checkbox][value=_other]')[0];
|
||||
$(checkbox).prop('checked', ($(this).val() !== ''));
|
||||
});
|
||||
});
|
||||
}
|
||||
emulate();
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
initPikaday: initPikaday,
|
||||
emulateSticky: emulateSticky,
|
||||
checkOtherValueOnChange: checkOtherValueOnChange,
|
||||
displayAlertWhenLeavingModifiedForm: displayAlertWhenLeavingModifiedForm,
|
||||
displayAlertWhenLeavingUnsubmittedForm: displayAlertWhenLeavingUnsubmittedForm,
|
||||
checkNullValuesInChoices: checkNullValuesInChoices,
|
||||
};
|
||||
|
||||
/**
|
||||
* Display an alert message when the user wants to leave a page containing a given form
|
||||
* in a given state.
|
||||
*
|
||||
* The action of displaying the form be parametrised as :
|
||||
* - always display the alert message when leaving
|
||||
* - only display the alert message when the form contains some modified fields.
|
||||
*
|
||||
* @param{string} form_id An identification string of the form
|
||||
* @param{string} alert_message The alert message to display
|
||||
* @param{boolean} check_unsaved_data If true display the alert message only when the form
|
||||
* contains some modified fields otherwise always display the alert when leaving
|
||||
* @return nothing
|
||||
*/
|
||||
function _generalDisplayAlertWhenLeavingForm(form_id, alert_message, check_unsaved_data) {
|
||||
var form_submitted = false;
|
||||
var unsaved_data = false;
|
||||
|
||||
$(form_id)
|
||||
.submit(function() {
|
||||
form_submitted = true;
|
||||
})
|
||||
.on('reset', function() {
|
||||
unsaved_data = false;
|
||||
})
|
||||
;
|
||||
|
||||
$.each($(form_id).find(':input'), function(i,e) {
|
||||
$(e).change(function() {
|
||||
unsaved_data = true;
|
||||
});
|
||||
});
|
||||
|
||||
$(window).bind('beforeunload', function(){
|
||||
if((!form_submitted) && (unsaved_data || !check_unsaved_data)) {
|
||||
return alert_message;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO : DOC
|
||||
*/
|
||||
function checkNullValuesInChoices(choice_name) {
|
||||
var choices;
|
||||
choices = $("input[name='"+choice_name+"']:checked");
|
||||
if (choices.size() === 0) {
|
||||
$.each($("input[name='"+choice_name+"']"), function (i, e) {
|
||||
if (e.value === "") {
|
||||
e.checked = true;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Display an alert message when the user wants to leave a page containing a given
|
||||
* modified form.
|
||||
*
|
||||
* @param{string} form_id An identification string of the form
|
||||
* @param{string} alert_message The alert message to display
|
||||
* @return nothing
|
||||
*/
|
||||
function displayAlertWhenLeavingModifiedForm(form_id, alert_message) {
|
||||
_generalDisplayAlertWhenLeavingForm(form_id, alert_message, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display an alert message when the user wants to leave a page containing a given
|
||||
* form that was not submitted.
|
||||
*
|
||||
* @param{string} form_id An identification string of the form
|
||||
* @param{string} alert_message The alert message to display
|
||||
* @return nothing
|
||||
*/
|
||||
function displayAlertWhenLeavingUnsubmittedForm(form_id, alert_message) {
|
||||
_generalDisplayAlertWhenLeavingForm(form_id, alert_message, false);
|
||||
}
|
||||
|
||||
/* Enable the following behavior : when the user change the value
|
||||
of an other field, its checkbox is checked.
|
||||
*/
|
||||
function checkOtherValueOnChange() {
|
||||
$('.input-text-other-value').each(function() {
|
||||
$(this).change(function() {
|
||||
var checkbox = $(this).parent().find('input[type=checkbox][value=_other]')[0];
|
||||
$(checkbox).prop('checked', ($(this).val() !== ''));
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
return {
|
||||
initPikaday: initPikaday,
|
||||
emulateSticky: emulateSticky,
|
||||
checkOtherValueOnChange: checkOtherValueOnChange,
|
||||
displayAlertWhenLeavingModifiedForm: displayAlertWhenLeavingModifiedForm,
|
||||
displayAlertWhenLeavingUnsubmittedForm: displayAlertWhenLeavingUnsubmittedForm,
|
||||
checkNullValuesInChoices: checkNullValuesInChoices,
|
||||
};
|
||||
} ();
|
||||
|
Loading…
x
Reference in New Issue
Block a user