Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

common.js 2.5KB

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