diff options
| author | Michel Etienne | 2012-10-01 20:31:41 +0200 |
|---|---|---|
| committer | Michel Etienne | 2012-10-01 20:31:41 +0200 |
| commit | a3fa25fe5ca2e1c02d88a7898ddc8ad7c8757475 (patch) | |
| tree | e1c066baca790deb8aab36108766208f54f58bb9 /app/assets/javascripts | |
| parent | 8d09e6fbf7c7e804e9c4c80fce195755b572492c (diff) | |
| download | chouette-core-a3fa25fe5ca2e1c02d88a7898ddc8ad7c8757475.tar.bz2 | |
refactor time-table-edit
Diffstat (limited to 'app/assets/javascripts')
| -rw-r--r-- | app/assets/javascripts/public/jquery.ui.datepicker-i18n.js | 9 | ||||
| -rw-r--r-- | app/assets/javascripts/time_tables.js.coffee | 39 |
2 files changed, 47 insertions, 1 deletions
diff --git a/app/assets/javascripts/public/jquery.ui.datepicker-i18n.js b/app/assets/javascripts/public/jquery.ui.datepicker-i18n.js index 3d0d55b46..b7748a77a 100644 --- a/app/assets/javascripts/public/jquery.ui.datepicker-i18n.js +++ b/app/assets/javascripts/public/jquery.ui.datepicker-i18n.js @@ -53,7 +53,14 @@ jQuery(function($){ monthNamesShort: $.datepicker.regional[ $('html').attr('lang') ].monthNamesShort, monthNames: $.datepicker.regional[ $('html').attr('lang') ].monthNames } ); - $(element).datepicker("setDate", $.datepicker.parseDate('yy-mm-dd', $(element).val() ) ); + if ($(element).val().indexOf('/') >= 0) + { + $(element).datepicker("setDate", $.datepicker.parseDate('dd/mm/y', $(element).val() ) ); + } + else + { + $(element).datepicker("setDate", $.datepicker.parseDate('yy-mm-dd', $(element).val() ) ); + } }); $("form").submit(function(event) { diff --git a/app/assets/javascripts/time_tables.js.coffee b/app/assets/javascripts/time_tables.js.coffee new file mode 100644 index 000000000..b85376edb --- /dev/null +++ b/app/assets/javascripts/time_tables.js.coffee @@ -0,0 +1,39 @@ +jQuery -> +# add trigger to hide/show application dates and periods + switch_dates = (event) -> + event.preventDefault() + $('.time_tables .dates.content').toggle('slow') + $('a.dates .switcher').toggle() + + $('.time_tables a.dates').click(switch_dates) + + switch_periods = (event) -> + event.preventDefault() + $('.time_tables .periods.content').toggle('slow') + $('a.periods .switcher').toggle() + + $('.time_tables a.periods').click(switch_periods) + +# add trigger when creating new date or period entries to activate datepicker + tt_datepickerI18n = (index, element) -> + # do nothig if a datepicker is already attached + return if ($(element).hasClass('hasDatepicker') ) + $(element).datepicker({ + dateFormat: "dd/mm/y", + dayNamesShort: $.datepicker.regional[ $('html').attr('lang') ].dayNamesShort, + dayNames: $.datepicker.regional[ $('html').attr('lang') ].dayNames, + monthNamesShort: $.datepicker.regional[ $('html').attr('lang') ].monthNamesShort, + monthNames: $.datepicker.regional[ $('html').attr('lang') ].monthNames + }) + $(element).datepicker("setDate", $.datepicker.parseDate('dd/mm/y', $(element).val() ) ) if ($(element).val().indexOf('/') >= 0) + $(element).datepicker("setDate", $.datepicker.parseDate('yy-mm-dd', $(element).val() ) ) if ($(element).val().indexOf('/') < 0) + + after_inserts = -> + $('input[type="date"]').each(tt_datepickerI18n) + + bind_after_inserts = -> + $('#periods_content').bind('insertion-callback',after_inserts) + $('#dates_content').bind('insertion-callback',after_inserts) + #after_inserts() + + $(document).ready(bind_after_inserts) if $('.time_tables').length > 0 |
