No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

117 líneas
2.8KB

  1. $(document).ready(function() {
  2. opendistrib_dropdown_tooltip();
  3. });
  4. function opendistrib_dropdown_tooltip() {
  5. if($('.dropdown-bs-toggle').length) {
  6. //$('.dropdown-toggle').dropdown() ;
  7. }
  8. if($('[data-bs-toggle="tooltip"]').length) {
  9. // $('[data-bs-toggle="tooltip"]').tooltip() ;
  10. var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
  11. var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
  12. return new bootstrap.Tooltip(tooltipTriggerEl);
  13. });
  14. }
  15. }
  16. /**
  17. * Retourne un prix sans taxe sur base du prix avec tax
  18. *
  19. * @param priceWithTax
  20. * @param taxRate
  21. * @returns {string}
  22. */
  23. function getPrice(priceWithTax, taxRate) {
  24. return numberDecimals(parseFloat(parseFloat(priceWithTax) / (taxRate + 1)), 5);
  25. }
  26. /**
  27. * Retourne un prix avec taxe sur base du prix sans taxe
  28. *
  29. * @param priceWithoutTax
  30. * @param taxRate
  31. * @returns {string}
  32. */
  33. function getPriceWithTax(priceWithoutTax, taxRate) {
  34. return numberDecimals(parseFloat(parseFloat(priceWithoutTax) * (taxRate + 1)), 2);
  35. }
  36. function numberDecimals(num, decimals) {
  37. return Number(num).toFixed(decimals) ;
  38. }
  39. /**
  40. * Formate un prix en l'arrondissant et en ajoutant le sigle de la monnaie
  41. *
  42. * @param price
  43. * @returns {string}
  44. */
  45. function formatPrice(price) {
  46. return numberDecimals(price, 2).replace('.', ',') + ' €';
  47. }
  48. /**
  49. * Formate une date au format jj/mm/yyyy
  50. * @param date
  51. * @returns {*}
  52. */
  53. function formatDate(date) {
  54. if (date) {
  55. return ('0' + date.getDate()).slice(-2) + '/' + ('0' + (date.getMonth() + 1)).slice(-2) + '/' + date.getFullYear();
  56. }
  57. return false;
  58. }
  59. /**
  60. * Equivalent de console.log (ne déclenche pas d'erreur si la console est fermé)
  61. *
  62. * @param msg
  63. */
  64. function log(msg) {
  65. try {
  66. console.log(msg);
  67. } catch (e) {
  68. }
  69. }
  70. /**
  71. * Convertit un formulaire ou un objet en JSON (utilisé pour l'envoie de donnée en ajax)
  72. */
  73. $.fn.serializeObject = function () {
  74. var o = {};
  75. var a = this.serializeArray();
  76. $.each(a, function () {
  77. if (o[this.name] !== undefined) {
  78. if (!o[this.name].push) {
  79. o[this.name] = [o[this.name]];
  80. }
  81. o[this.name].push(this.value || '');
  82. } else {
  83. o[this.name] = this.value || '';
  84. }
  85. });
  86. return o;
  87. };
  88. function getDateFormatted(date) {
  89. var _d = date.getDate(),
  90. d = _d > 9 ? _d : '0' + _d,
  91. _m = date.getMonth() + 1,
  92. m = _m > 9 ? _m : '0' + _m,
  93. formatted = date.getFullYear() + '-' + m + '-' + d;
  94. return formatted;
  95. }
  96. //Affiche une alert au click sur un bouton submit lorsqu'un utilisateur admin tente de modifer un établissement
  97. function userNotAllowToEdit() {
  98. alert('Vous n\'êtes pas autorisé à effectuer cette action');
  99. return false;
  100. }