Advertisement
Guest User

Untitled

a guest
Sep 2nd, 2015
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. var $ = require("jquery")
  2. var Backbone = require("backbone")
  3. var _ = require("underscore")
  4. var moment = require("moment")
  5. var Pikaday = require("pikaday")
  6. var DatePickerView = Backbone.View.extend({
  7.  
  8. initialize() {
  9. this.data = JSON.parse(this.$('.js-dataLangDate').html())
  10. this.currentLang = $('html').prop('lang')
  11. this.format = this.data.lang[this.currentLang].format
  12. this.formatEN = "MM/DD/YYYY"
  13.  
  14. this.datePickers = _.map(
  15. this.$(".js-DatePicker"),
  16. (node) => new Pikaday({
  17. field : node,
  18. firstDay : 1,
  19. minDate : new Date(),
  20. format: this.format,
  21. i18n: this.data.lang[this.currentLang].i18n,
  22. container: node.closest("#adg-DatePickerContainer"), // L'ID de mon Container
  23.  
  24. onDraw: function(){
  25. this.el.children[0].innerHTML =
  26. `<div class="pika-title-text" >` +
  27. $(node).data('title') +
  28. `</div>` +
  29. this.el.children[0].innerHTML
  30. }
  31. })
  32. )
  33.  
  34. //this.initialRender()
  35. },
  36.  
  37. events : {
  38. "change .js-DatePicker" : "changeDate"
  39. },
  40.  
  41. changeDate(e){
  42. var target = e.target;
  43. if($(target).hasClass('js-DatePicker-dateStart')){
  44. var startDate = moment(this.$(".js-DatePicker-dateStart").val(), this.format);
  45. for(var i= 0; i < this.datePickers.length; i++){
  46. if ($(this.datePickers[i]._o.field).hasClass("js-DatePicker-dateEnd")){
  47. var dateStart = moment(startDate);
  48. var dateEnd = this.datePickers[i].getMoment();
  49. this.datePickers[i].setMinDate(dateStart.add(1, "days").toDate());
  50. var diffDate = dateEnd.diff(dateStart, 'days');
  51. if(diffDate < 1){
  52. this.datePickers[i].setMoment(dateStart);
  53. }
  54. }
  55. }
  56. }
  57.  
  58. /*if($(target).hasClass('js-DatePicker-dateEnd')){
  59. var endDate = moment(this.$(".js-DatePicker-dateEnd").val(), this.format);
  60. for(var i= 0; i < this.datePickers.length; i++){
  61. if ( _.indexOf(this.datePickers[i]._o.field.classList, "js-DatePicker-dateStart") !== -1){
  62. this.datePickers[i].setMaxDate(moment(endDate).subtract("days",1));
  63. }
  64. }
  65. }*/
  66.  
  67. },
  68.  
  69. initialRender() {
  70. this.$('.js-DatePicker').val('')
  71. }
  72.  
  73.  
  74. })
  75.  
  76. module.exports = DatePickerView
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement