You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
2.3KB

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