您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

lechatdesnoisettes.js 4.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. $(document).ready(function() {
  2. chat_calendar() ;
  3. chat_datepicker() ;
  4. chat_vrac() ;
  5. chat_email_masse() ;
  6. $('button[data-toggle=popover]').popover() ;
  7. chat_ordre_produits()
  8. }) ;
  9. function chat_ordre_produits() {
  10. var fixHelper = function(e, ui) {
  11. ui.children().each(function() {
  12. $(this).width($(this).width());
  13. });
  14. return ui;
  15. };
  16. $(".produit-index table tbody").sortable({
  17. items: "> tr",
  18. appendTo: "parent",
  19. //helper: "clone"
  20. helper: fixHelper,
  21. stop: function(event, ui) {
  22. var tab_ordre = {} ;
  23. var ordre = 1 ;
  24. $(".produit-index table tbody tr").each(function() {
  25. tab_ordre[$(this).attr('data-key')] = ordre ;
  26. ordre++ ;
  27. }) ;
  28. console.log(tab_ordre) ;
  29. $.get('index.php',{
  30. r: 'produit/ordre',
  31. tab: JSON.stringify(tab_ordre)
  32. }) ;
  33. }
  34. }).disableSelection();
  35. }
  36. function chat_email_masse() {
  37. $('#ids-users .label').click(function() {
  38. if($(this).hasClass('label-default')) {
  39. $(this).removeClass('label\-default') ;
  40. $(this).addClass('label-danger') ;
  41. }
  42. else if($(this).hasClass('label-danger'))
  43. $(this).removeClass('label-danger').addClass('label-default') ;
  44. }) ;
  45. $('#email-masse-form button[type=submit]').click(function() {
  46. $(this).attr('disabled','disabled').html('Envoyer ...') ;
  47. chat_email_masse_send() ;
  48. return false ;
  49. }) ;
  50. }
  51. function chat_email_masse_send() {
  52. var user = $('#ids-users .label-default:first') ;
  53. if(user.size()) {
  54. $('input[name=id_user]').val(user.data('id')) ;
  55. $.post('index.php?r=user/mail',$('#email-masse-form').serialize(), function(retour) {
  56. user.removeClass('label-default').addClass('label-success') ;
  57. setTimeout("chat_email_masse_send()",30000) ;
  58. }) ;
  59. }
  60. else {
  61. alert('Fini !') ;
  62. }
  63. }
  64. function chat_vrac() {
  65. $('.edit-vrac').click(function() {
  66. if($('.vrac').css('display') == 'none')
  67. $('.vrac').show() ;
  68. else
  69. $('.vrac').hide() ;
  70. }) ;
  71. }
  72. function chat_datepicker() {
  73. $('.datepicker').datepicker({dateFormat:'dd/mm/yy'}) ;
  74. }
  75. function chat_calendar() {
  76. if($('#page-commande').size()) {
  77. var events = new Array ;
  78. $('ul#jours-production li').each(function() {
  79. var date = $(this).html() ;
  80. events.push({
  81. title: 'Production',
  82. start: date,
  83. allDay: true
  84. }) ;
  85. }) ;
  86. jQuery('#calendar').fullCalendar({
  87. header: {
  88. left:"prev,next",
  89. center: "title",
  90. //right:"month,agendaWeek,agendaDay"
  91. right:""
  92. },
  93. lang:"fr-fr",
  94. loading:function loading(bool) {
  95. if (bool) $('#loading').show();
  96. else $('#loading').hide();
  97. },
  98. dayClick: function(date, jsEvent, view) {
  99. var url = $(location).attr('href') ;
  100. var tab_url = url.split('?') ;
  101. $(location).attr('href',tab_url[0]+'?r=commande/index&date='+date.format());
  102. },
  103. eventRender: function (event, element) {
  104. var dataToFind = moment(event.start).format('YYYY-MM-DD');
  105. $("td[data-date='"+dataToFind+"']").addClass('dayWithEvent');
  106. },
  107. //eventBackgroundColor: '#000000',
  108. events: events,
  109. id:"calendar"
  110. });
  111. if($('#current-date').val())
  112. $('td[data-date='+$('#current-date').val()+']').addClass('current-date') ;
  113. }
  114. }
  115. /* French initialisation for the jQuery UI date picker plugin. */
  116. /* Written by Keith Wood (kbwood{at}iinet.com.au),
  117. Stéphane Nahmani (sholby@sholby.net),
  118. Stéphane Raimbault <stephane.raimbault@gmail.com> */
  119. (function( factory ) {
  120. if ( typeof define === "function" && define.amd ) {
  121. // AMD. Register as an anonymous module.
  122. define([ "../jquery.ui.datepicker" ], factory );
  123. } else {
  124. // Browser globals
  125. factory( jQuery.datepicker );
  126. }
  127. }(function( datepicker ) {
  128. datepicker.regional['fr'] = {
  129. closeText: 'Fermer',
  130. prevText: 'Précédent',
  131. nextText: 'Suivant',
  132. currentText: 'Aujourd\'hui',
  133. monthNames: ['janvier', 'février', 'mars', 'avril', 'mai', 'juin',
  134. 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
  135. monthNamesShort: ['janv.', 'févr.', 'mars', 'avril', 'mai', 'juin',
  136. 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'],
  137. dayNames: ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'],
  138. dayNamesShort: ['dim.', 'lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.'],
  139. dayNamesMin: ['D','L','M','M','J','V','S'],
  140. weekHeader: 'Sem.',
  141. dateFormat: 'dd/mm/yy',
  142. firstDay: 1,
  143. isRTL: false,
  144. showMonthAfterYear: false,
  145. yearSuffix: ''};
  146. datepicker.setDefaults(datepicker.regional['fr']);
  147. return datepicker.regional['fr'];
  148. }));