dorsale 2.6.1 → 2.6.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (124) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/dorsale/devise.sass +4 -0
  3. data/app/pdfs/dorsale/billing_machine/invoice_single_vat_pdf.rb +49 -49
  4. data/app/pdfs/dorsale/billing_machine/quotation_pdf_common_methods.rb +2 -4
  5. data/lib/dorsale/version.rb +1 -1
  6. data/spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb +2 -6
  7. data/spec/controllers/dorsale/billing_machine/quotations_controller_spec.rb +4 -0
  8. data/spec/controllers/dorsale/comments_controller_spec.rb +3 -4
  9. data/spec/controllers/dorsale/customer_vault/corporations_controller_spec.rb +4 -1
  10. data/spec/controllers/dorsale/customer_vault/individuals_controller_spec.rb +4 -1
  11. data/spec/controllers/dorsale/customer_vault/people_controller_spec.rb +4 -0
  12. data/spec/controllers/dorsale/flyboy/folders_controller_spec.rb +5 -1
  13. data/spec/controllers/dorsale/flyboy/task_comments_controller_spec.rb +4 -5
  14. data/spec/controllers/dorsale/flyboy/tasks_controller_spec.rb +4 -10
  15. data/spec/controllers/dorsale/small_data/filters_controller_spec.rb +44 -41
  16. data/spec/dummy/app/assets/stylesheets/application.sass +2 -0
  17. data/spec/dummy/app/controllers/application_controller.rb +2 -0
  18. data/spec/dummy/app/views/devise/sessions/new.html.erb +28 -0
  19. data/spec/dummy/app/views/layouts/application.html.slim +15 -14
  20. data/spec/dummy/db/development.sqlite3 +0 -0
  21. data/spec/dummy/db/seeds.rb +2 -1
  22. data/spec/dummy/db/test.sqlite3 +0 -0
  23. data/spec/dummy/log/development.log +4474 -0
  24. data/spec/dummy/log/test.log +65094 -0
  25. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/0QyALFKA66NxFrhSL8nqPMX8zTLWrgcfGBmSlORYwM4.cache +1 -0
  26. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/0YWC9zSZNGN566OL4W7d_cGoyqdPLFb_FUQP058dEYM.cache +0 -0
  27. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/1zYbEeXsUzyAeOUd9nCPqyx-vGGU6dbWLZXYIazeHg8.cache +0 -0
  28. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/4gGo1Wy5-9f4zQ4XSusHquuHZcw89mfqRMSc0a1XjrY.cache +0 -0
  29. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/6fsadZ-yp5pEkQpsvNuTchbPL_Q8AENrLoc2G0iU5ds.cache +1 -0
  30. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/9nk3IyzuX8GDB5ZxPDiNBCrmn5zU37kcEiYJsykdHu4.cache +0 -0
  31. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/A-TCGMpSKZgtGFKoNIf3C9dTB2Uefl8-lXQDIbl9gfU.cache +94 -0
  32. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/BVJuhpEWyIfpcDZ2G1-2wFr50D2j32xl4rOmR-NW9lY.cache +2 -0
  33. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/BoTkQY-2LlshRj_u0eZLAQ8paTGk0fEydSMj016Yduk.cache +0 -0
  34. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/C_HDkHJkEjjsOQQm3ERwC0f2Uy2bMyCVcm_vEgOVspU.cache +1 -0
  35. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/D-ckg16_pBs9Gy5CP80KNdzcdF3scT-BjFFeFT_nIUE.cache +0 -0
  36. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/DCjMbZGF_QYjXMtk2wxS2WdEpEEW2wHBZDTtoWPt9VY.cache +1 -0
  37. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Efrkj-A5vBHcpGvfz1rIlDCf3MmPV8me9wzI8-Wm07k.cache +0 -0
  38. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Emz6WPv0c-Hu69iDSSY_p3q8dQv2xfT847ontilnzJM.cache +1 -0
  39. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/FQvbw-3T2j1o0lJp3lV4227IvVxPQx5tmQu4ClMMRYQ.cache +1 -0
  40. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Ji2S9bbj9k2WJvADSj4_qVhK_dULIqYPOn3oI1B2yB8.cache +1 -0
  41. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/JsqlGLc2ynS9gZSd8wkUUEqeLC27lDet9Fof-_kIZyw.cache +0 -0
  42. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/K1w1yKZL5uujfwDC5ioBBym8ADDWPMtZn4eVQ7y9huc.cache +1 -0
  43. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/KCDu_Vi0unecNRffNgugjzMXEK9Rlh7MVf1-2pGtfyo.cache +0 -0
  44. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/KQ7cSPt-VYvsoVRxpcOOJZKSTFBWifRP5dfCbVYwyvI.cache +0 -0
  45. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/MU6VNG3bjKo-63vD99TKGcB2cdguNkG1BUWAfyifcXo.cache +1 -0
  46. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/MVZo9QPkh0L_7p-T1jXaO4Hwq0bTNKDT5nT7DgkeTFI.cache +1 -0
  47. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Mnh2mHTkaFt-fhZAcdjWUbDIotNWzDxu8Q8IvW8ot6M.cache +1 -0
  48. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/PBUu8g6dAom_1M3s7fm6XOuur99Pn3o4wN1ANE6rFa0.cache +1 -0
  49. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Po9CY9TOIFKWTFIl9qVRe9sv6Dqq3GypVIZ3Z_cGYhE.cache +0 -0
  50. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/RqtVtDQuH7vuxU1g-3W1UBf0RxW_heBDMbzCof1vGUU.cache +3 -0
  51. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/UJbQ6XtnOLLEvnilnK0JJi2MzQhicNKNwQxC6SftQ2Q.cache +1 -0
  52. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/VKahsavxWM2F1SZdVB4rpQIdrDBlOUryFdm1lBB7AsE.cache +0 -0
  53. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/WlaXczm6aGuoLKg4QaJMVZr8A2WBIrXdpCs32aOhoIQ.cache +1 -0
  54. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ZZPUisN6VuLj0hE3MESjgF0MLUw_CI8EPnaudSTnZn0.cache +0 -0
  55. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/_5CmTIgC35ho5FNm3Xp2gPufRTi8Y82L90c7ahjI9TQ.cache +0 -0
  56. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/_s_9dNdEm6-7X52t_dT0WdnteU80sCGvdbmlZqouNxI.cache +1 -0
  57. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/a3i8UhNe40ETW5UkoQepVxlkv9bcqxj5akAnmxGwGvU.cache +0 -0
  58. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/aRhKfHl3RzCW_nRGPsKn3YRlYrgyzFivoY-LFnfWTx0.cache +0 -0
  59. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/b3KrA6ilFE2NbJ8mhBWoa0XkYJ6GhiwTV4HFsrA0a1o.cache +0 -0
  60. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/e7CR7oQ5ZVfEJxr5cNpqf0r4ZQ8nzwabxkg9BugnQ2I.cache +0 -0
  61. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/fF_FNptGZTt0GdQHGqPXJKtW8xaszmgKJ9Y3c3rFvaQ.cache +0 -0
  62. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/gPZLF3v0FetBtEu34A-nYWlTmtXEQA5xcMuRvfjyhkA.cache +0 -0
  63. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/hR_ArK-USwWanvC92L6fnVtP3zI-ZdU7K7tccDbYdNM.cache +0 -0
  64. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/iT8qiY3Qu1pfzfoTqaZDV-915Q2eYa_XPFNI3zxsOUk.cache +0 -0
  65. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/iVnOdT9sEi9BwhIYymMHaoWoqxeuutyLP31vHdjLfag.cache +1 -0
  66. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/isSmUQ0OerYjA2fS2Ax6v9uHutvlDU_ek_uzA1BmuDs.cache +1 -0
  67. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/j-fG9mvIZXoiaANgzTTDklqDGuJNx841ijCpW1OuZ9Y.cache +1 -0
  68. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/jQ7P4KoG3JMZGOqk-jftI_8RZ1jzbxjfr_WoX8Er0wE.cache +1 -0
  69. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/k7rjawxbQmwFF3uimULhlGwsm39nlRMdSmLGE2nIfS8.cache +1 -0
  70. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ks2mD-ZZbM-6HhnauFWml-HL-wMzgMP02tHIN3jroKg.cache +1 -0
  71. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/l-6SNWRfreTi-mqhehc7hXAHhgmUs3IuFgaxGzDfAM8.cache +1 -0
  72. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/n46BSm148ZR6ZyhITLqTh2y16SmwWH2ktR02KGtsfGA.cache +0 -0
  73. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/p78VeyId3QTLqQTHebdERNVPv2wBQKxcENM2kz00DHA.cache +72 -0
  74. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ppgyIakjEINmAS9rXGilwUtgLZI6XqQCKI6YQy1GE7Q.cache +0 -0
  75. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/qCVV09cnr1Dz3xto0MbMBVhjEsWdEL8kGf93cJH7s40.cache +0 -0
  76. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/qsLHPof9TYCq1iA_lIcJiakKe50APw95wJ5E-mwjNwY.cache +2 -0
  77. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/rOC4NYay7xJCoUP1fVLlD0UmZ6nJkFvB8sVaG1jrvZI.cache +1 -0
  78. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/u4ulyeXo--KOhUq1NZp0akBaB8a65TCTBEOT0_nYx1M.cache +1 -0
  79. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/v9WsK-Ekhm_1yAghhvLPcc7Yhm1DGzq66_gH9j70ihI.cache +2 -0
  80. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/xBsouu_CL-n171o84VQBoyGrmVJvLcrr56LfrnMkvPI.cache +0 -0
  81. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/xt02H--gzubi2pWZGDxSjYj8Eb3BmXMOAshd62RI8Fc.cache +2 -0
  82. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/-Ap1qd6dCtp3-d9DKD9Hr_ka7mGHnbmbg_50uTUagzs.cache +0 -0
  83. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/-gxRJNze13ecIQg8lvdnCKmcmPu-N-8kVVHbL8NDVE4.cache +1 -0
  84. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/0IQ53sHSbK4qmnuLgZ1fRMIa2vqXVnwgiHX2kK4BAv4.cache +1 -0
  85. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/0QyALFKA66NxFrhSL8nqPMX8zTLWrgcfGBmSlORYwM4.cache +1 -0
  86. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/1gN0EpTOT_Smf1i_BP0YxEbtJ6hrQB_4-QbJvYOUe68.cache +0 -0
  87. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/1zYbEeXsUzyAeOUd9nCPqyx-vGGU6dbWLZXYIazeHg8.cache +0 -0
  88. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/3aRd-An2NCoKTckvzyi96dHyat_5op8JMNDdkcM2Q_U.cache +1 -0
  89. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/7V0nBqubpkvjavh8N0blUGnJ98-bTztMiZZqFoPCKR0.cache +1 -0
  90. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/8ZSYry4qiv6Dryjgi-VKZL4O02pCiQuPeSUcb91DuPg.cache +1 -0
  91. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/9nk3IyzuX8GDB5ZxPDiNBCrmn5zU37kcEiYJsykdHu4.cache +0 -0
  92. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/CMollIXS6QD8V8TiotZ6tDLMK4az6s5G6VdS2leJSHA.cache +1 -0
  93. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/EVea0W0GFKeY-1St4Ln82O0Mqx-BG5ZHJsWzOH1SoYU.cache +0 -0
  94. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Efrkj-A5vBHcpGvfz1rIlDCf3MmPV8me9wzI8-Wm07k.cache +0 -0
  95. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Emz6WPv0c-Hu69iDSSY_p3q8dQv2xfT847ontilnzJM.cache +1 -0
  96. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Ji2S9bbj9k2WJvADSj4_qVhK_dULIqYPOn3oI1B2yB8.cache +1 -0
  97. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/K1w1yKZL5uujfwDC5ioBBym8ADDWPMtZn4eVQ7y9huc.cache +1 -0
  98. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/KCDu_Vi0unecNRffNgugjzMXEK9Rlh7MVf1-2pGtfyo.cache +0 -0
  99. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/M7WHTxFMUD8qFpt4fTy4X8KmSivxvuN8NxkuYKacYz8.cache +0 -0
  100. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/MVZo9QPkh0L_7p-T1jXaO4Hwq0bTNKDT5nT7DgkeTFI.cache +1 -0
  101. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Mnh2mHTkaFt-fhZAcdjWUbDIotNWzDxu8Q8IvW8ot6M.cache +1 -0
  102. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/PBUu8g6dAom_1M3s7fm6XOuur99Pn3o4wN1ANE6rFa0.cache +1 -0
  103. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Po9CY9TOIFKWTFIl9qVRe9sv6Dqq3GypVIZ3Z_cGYhE.cache +0 -0
  104. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/VKahsavxWM2F1SZdVB4rpQIdrDBlOUryFdm1lBB7AsE.cache +0 -0
  105. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/WmponbeSorrU67isZs6kmJ-V-mC6mVPFYHAtZJgC-o0.cache +1 -0
  106. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/_5CmTIgC35ho5FNm3Xp2gPufRTi8Y82L90c7ahjI9TQ.cache +0 -0
  107. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/aRhKfHl3RzCW_nRGPsKn3YRlYrgyzFivoY-LFnfWTx0.cache +0 -0
  108. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/drr3o9qJpZkXb0k03d8vEm45K5Bvb4-lQndFU5ux_eU.cache +0 -0
  109. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/e7CR7oQ5ZVfEJxr5cNpqf0r4ZQ8nzwabxkg9BugnQ2I.cache +0 -0
  110. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/gPZLF3v0FetBtEu34A-nYWlTmtXEQA5xcMuRvfjyhkA.cache +0 -0
  111. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/gd4ZuKLSWQir0T2-7Ec_5P04gB-N1h16BTGnDJPobdE.cache +0 -0
  112. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/h-CRS8ETZKyovfmFQkG2s-71BqZUIqGCkEJhRxBvZPc.cache +0 -0
  113. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/hR_ArK-USwWanvC92L6fnVtP3zI-ZdU7K7tccDbYdNM.cache +0 -0
  114. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/id3wJWomlnB9EEqfvqYUjGFZlgiWSZGCCN7qgTQ34ps.cache +1 -0
  115. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/isSmUQ0OerYjA2fS2Ax6v9uHutvlDU_ek_uzA1BmuDs.cache +1 -0
  116. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/k7rjawxbQmwFF3uimULhlGwsm39nlRMdSmLGE2nIfS8.cache +1 -0
  117. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/p78VeyId3QTLqQTHebdERNVPv2wBQKxcENM2kz00DHA.cache +72 -0
  118. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/qsLHPof9TYCq1iA_lIcJiakKe50APw95wJ5E-mwjNwY.cache +2 -0
  119. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/rOC4NYay7xJCoUP1fVLlD0UmZ6nJkFvB8sVaG1jrvZI.cache +1 -0
  120. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/sH-p3cEYYHs56D5Avz87an9HlNOIAqAaWMFyKZnCg3I.cache +0 -0
  121. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/u4ulyeXo--KOhUq1NZp0akBaB8a65TCTBEOT0_nYx1M.cache +1 -0
  122. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/v9WsK-Ekhm_1yAghhvLPcc7Yhm1DGzq66_gH9j70ihI.cache +2 -0
  123. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/xt02H--gzubi2pWZGDxSjYj8Eb3BmXMOAshd62RI8Fc.cache +2 -0
  124. metadata +176 -1
@@ -0,0 +1 @@
1
+ "%���.DK��9���i��ꆳ��� T\B�9�
@@ -0,0 +1 @@
1
+ "%�v�,黌���l�,�m���+h��E��~
@@ -0,0 +1,94 @@
1
+ I"(function() {
2
+ accounting.settings = {
3
+ number: {
4
+ precision: 2,
5
+ thousand: " ",
6
+ decimal: ","
7
+ }
8
+ };
9
+
10
+ window.str2num = function(str) {
11
+ return parseFloat(String(str).replace(",", ".").replace(/[^0-9\.]+/g, "")) || 0.0;
12
+ };
13
+
14
+ window.num2str = function(num) {
15
+ num = parseFloat(num);
16
+ return accounting.formatNumber(num);
17
+ };
18
+
19
+ $(document).on("ready page:load cocoon:after-insert", function() {
20
+ $("#billing_machine-form input.number").keyup(function() {
21
+ var advance, balance, commercial_discount, discount_rate, raw_total_excluding_taxes, total_excluding_taxes, total_including_taxes, vat_amount;
22
+ total_excluding_taxes = 0.0;
23
+ $("#billing_machine-form .line").map(function() {
24
+ var line_total, quantity, unit_price;
25
+ if (parseInt($(this).find("input[name*=destroy]").val()) === 1) {
26
+ return;
27
+ }
28
+ quantity = str2num($(this).find(".line-quantity input").val());
29
+ unit_price = str2num($(this).find(".line-unit_price input").val());
30
+ line_total = unit_price * quantity;
31
+ $(this).find(".line-total input").val(num2str(line_total));
32
+ return total_excluding_taxes += line_total;
33
+ });
34
+ commercial_discount = str2num($(".commercial_discount input").val());
35
+ raw_total_excluding_taxes = total_excluding_taxes;
36
+ total_excluding_taxes = raw_total_excluding_taxes - commercial_discount;
37
+ $(".total_excluding_taxes input").val(num2str(total_excluding_taxes));
38
+ discount_rate = commercial_discount / raw_total_excluding_taxes;
39
+ vat_amount = 0.0;
40
+ $("#billing_machine-form .line").map(function() {
41
+ var discounted_line_total, line_total, line_vat_amount, vat_rate;
42
+ if (parseInt($(this).find("input[name*=destroy]").val()) === 1) {
43
+ return;
44
+ }
45
+ if ($(this).find(".line-vat_rate input").length > 0) {
46
+ vat_rate = str2num($(this).find(".line-vat_rate input").val());
47
+ } else {
48
+ vat_rate = str2num($("#totals-table .vat_rate input").val());
49
+ }
50
+ line_total = str2num($(this).find(".line-total input").val());
51
+ discounted_line_total = line_total - (line_total * discount_rate);
52
+ line_vat_amount = discounted_line_total * vat_rate / 100;
53
+ return vat_amount += line_vat_amount;
54
+ });
55
+ $(".vat_amount input").val(num2str(vat_amount));
56
+ total_including_taxes = total_excluding_taxes + vat_amount;
57
+ $(".total_including_taxes input").val(num2str(total_including_taxes));
58
+ if ($(".advance input").length > 0 && $(".balance input").length > 0) {
59
+ advance = str2num($(".advance input").val());
60
+ balance = total_including_taxes - advance;
61
+ return $(".balance input").val(num2str(balance));
62
+ }
63
+ });
64
+ $("#billing_machine-form input").keyup();
65
+ $("#billing_machine-form input.number").blur(function() {
66
+ return $("#billing_machine-form input.number").map(function() {
67
+ var formatted_number;
68
+ formatted_number = num2str(str2num($(this).val()));
69
+ return $(this).val(formatted_number);
70
+ });
71
+ });
72
+ $("#billing_machine-form input.number").blur();
73
+ $("#billing_machine-form input.number").focus(function() {
74
+ if (str2num($(this).val()) === 0) {
75
+ return $(this).val("");
76
+ }
77
+ });
78
+ $("#billing_machine-form textarea").keyup(function() {
79
+ return this.rows = this.value.split("\n").length;
80
+ });
81
+ $("#billing_machine-form textarea").keyup();
82
+ $("#billing_machine-form .line textarea").map(function() {
83
+ return this.value = this.value.trim();
84
+ });
85
+ return $("#billing_machine-form a.delete").click(function() {
86
+ $(this).parents("td").find("input").val(1);
87
+ $(this).parents("tr").hide();
88
+ $("#billing_machine-form input").keyup();
89
+ return false;
90
+ });
91
+ });
92
+
93
+ }).call(this);
94
+ :ET
@@ -0,0 +1,2 @@
1
+ "%��0"��Ut�Cn�vZ����Ӭ+�*�$l�
2
+ R
@@ -0,0 +1 @@
1
+ I"�/Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/modals.coffee?type=application/javascript&pipeline=self&id=df0a2a4de0a2f24e9bd73ec631ada244d0c8a1bf21b949d347acd4ff591b34c3:ET
@@ -0,0 +1 @@
1
+ I"~app/assets/stylesheets/application.sass?type=text/css&id=a5e896a79432b1897ab0981f2b397561fcefd6f41403802cb6febebc08d6e22b:ET
@@ -0,0 +1 @@
1
+ "%�m�┳R��8��2G�Jp��;�� \[(�"XO�
@@ -0,0 +1 @@
1
+ I"�/Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/billing_machine/all.coffee?type=application/javascript&pipeline=self&id=bcfe2fd77cd4f4d0e69a362fe597bf4fe6ceaaa2f74bc5997c98225ebb9bfb08:ET
@@ -0,0 +1 @@
1
+ "%�7<��pSeq9UCt�,&��Q�_RHGEV��
@@ -0,0 +1 @@
1
+ "%5_A��eu�Xuђ�{;�>�hh�9<�Dp6
@@ -0,0 +1 @@
1
+ "%�[7��sl~; �٨��pd�a���.P�,�\�
@@ -0,0 +1 @@
1
+ "%��,h����VcQ��Ԕ�������lK�A)2�
@@ -0,0 +1 @@
1
+ "%�G���A%�f9[�e��)2I����PH�@�
@@ -0,0 +1 @@
1
+ "%�v�,黌���l�,�m���+h��E��~
@@ -0,0 +1,3 @@
1
+ [o:Set:
2
+ @hash{
3
+ I"environment-version:ETTI"environment-paths;TTI"jprocessors:type=application/javascript&file_type=application/javascript&engines=.coffee&pipeline=self;TTI"ofile-digest:///Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/billing_machine/all.coffee;TTI"dfile-digest:///Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/billing_machine;TT
@@ -0,0 +1 @@
1
+ I"�app/assets/javascripts/application.coffee?type=application/javascript&pipeline=self&id=89ccdb88b3427961aa6704e487ace670c22802026b36c9cfd2ca23e9209930d9:ET
@@ -0,0 +1 @@
1
+ I"�app/assets/javascripts/application.coffee?type=application/javascript&id=54785f777c31508a70c90f78f53e71f0250ef3918e8bf78802595af6db7fee41:ET
@@ -0,0 +1 @@
1
+ I"�app/assets/stylesheets/application.sass?type=text/css&pipeline=self&id=7272233e52b34ba901a5a33c54393ed4c9a9c4bf25d84cb5712e22ea8398ebf5:ET
@@ -0,0 +1 @@
1
+ I"�app/assets/stylesheets/application.sass?type=text/css&pipeline=self&id=25225c195a7bb221cc2c649905677ee23020093cdc5185625d0525b021e3f776:ET
@@ -0,0 +1 @@
1
+ "%�Y�gY;��]��&2X�ۀ-�-G�=)�M
@@ -0,0 +1 @@
1
+ I"�app/assets/stylesheets/application.sass?type=text/css&pipeline=self&id=919b29781680c0db5a32c5cc73e62edde57b6b3ff32feeb509469143c48372cd:ET
@@ -0,0 +1 @@
1
+ I"�/Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/all.js?type=application/javascript&pipeline=self&id=17c4856710d60aa321b07bb2a98871591e2b7fcec5f20d086e11a2249411e4d0:ET
@@ -0,0 +1 @@
1
+ I"~app/assets/stylesheets/application.sass?type=text/css&id=16aa82272e86849d270f0bd0913687242a777cd2bf13de4026ac02494873d466:ET
@@ -0,0 +1 @@
1
+ I"~app/assets/stylesheets/application.sass?type=text/css&id=fa4d342f7aff1e5d18e9bda29315f503e6f5ec885da9bf24ad4a943934919543:ET
@@ -0,0 +1,72 @@
1
+ I"�(function() {
2
+ window.modal = {
3
+ i18n: {
4
+ loading: "Loading...",
5
+ error: "Error."
6
+ },
7
+ template: "<div id='modal' class='modal'>\n <div class='modal-overlay modal-close'></div>\n <button class='modal-close'></button>\n <div class='modal-body'>\n {{content}}\n </div>\n</div>",
8
+ _generateModalHTML: function(content) {
9
+ return $(modal.template.replace("{{content}}", content));
10
+ },
11
+ open: function(content) {
12
+ modal.close();
13
+ $("body").addClass("modal-open");
14
+ $("body").append(modal._generateModalHTML(content));
15
+ return $(document).trigger("modal:open");
16
+ },
17
+ close: function() {
18
+ $("#modal").remove();
19
+ $("body").removeClass("modal-open");
20
+ $(document).trigger("modal:close");
21
+ return false;
22
+ },
23
+ openUrl: function(url, type, data) {
24
+ if (type == null) {
25
+ type = "GET";
26
+ }
27
+ if (data == null) {
28
+ data = {};
29
+ }
30
+ modal.open(modal.i18n.loading);
31
+ return $.ajax({
32
+ url: url,
33
+ type: type,
34
+ data: data,
35
+ dataType: "html",
36
+ success: function(data) {
37
+ return modal.open(data);
38
+ },
39
+ error: function() {
40
+ return modal.open(modal.i18n.error);
41
+ }
42
+ });
43
+ },
44
+ _callbacks: {
45
+ links: function() {
46
+ modal.openUrl(this.href);
47
+ return false;
48
+ },
49
+ forms: function() {
50
+ modal.openUrl(this.href, this.action, $(this).serialize());
51
+ return false;
52
+ },
53
+ escape: function(event) {
54
+ if (event.keyCode === 27) {
55
+ return modal.close();
56
+ }
57
+ }
58
+ },
59
+ setup: function() {
60
+ $(document).off("keyup", modal._callbacks.escape).on("keyup", modal._callbacks.escape);
61
+ $(".modal-close").off("click", modal.close).on("click", modal.close);
62
+ $("a[data-modal=1], .modal-body a:not([data-modal=0])").off("click", modal._callbacks.links).on("click", modal._callbacks.links);
63
+ return $("form[data-modal=1], .modal-body form:not([data-modal=0])").off("submit", modal._callbacks.forms).on("submit", modal._callbacks.forms);
64
+ }
65
+ };
66
+
67
+ $(document).on("ready page:load modal:open", function() {
68
+ return modal.setup();
69
+ });
70
+
71
+ }).call(this);
72
+ :ET
@@ -0,0 +1,2 @@
1
+ "%I�(�Ҭ0�F\��rQ���ׂ�s�
2
+ 㬉b
@@ -0,0 +1 @@
1
+ "%� \������������г�dӅ~��� &kp
@@ -0,0 +1 @@
1
+ "%� \������������г�dӅ~��� &kp
@@ -0,0 +1,2 @@
1
+ [o:Set:
2
+ @hash{ I"environment-version:ETTI"environment-paths;TTI"jprocessors:type=application/javascript&file_type=application/javascript&engines=.coffee&pipeline=self;TTI"bfile-digest:///Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/modals.coffee;TT
@@ -0,0 +1,2 @@
1
+ "%��0"��Ut�Cn�vZ����Ӭ+�*�$l�
2
+ R
@@ -0,0 +1 @@
1
+ I"�app/assets/stylesheets/application.sass?type=text/css&pipeline=self&id=8c04eaa31f52bffcac13e9d4f3e928d5860645e36bd2679e7ac2059f6f4868d8:ET
@@ -0,0 +1 @@
1
+ I"�app/assets/stylesheets/application.sass?type=text/css&pipeline=self&id=a9466ba485a943603c8e1eb1172f6d74268bca071ba01a4cb27f965f479df95d:ET
@@ -0,0 +1 @@
1
+ "%���.DK��9���i��ꆳ��� T\B�9�
@@ -0,0 +1 @@
1
+ I"�app/assets/javascripts/application.coffee?type=application/javascript&pipeline=self&id=b3beb170a42f9960a351df512bc61fdca87627626768140a333cc47ba881e95e:ET
@@ -0,0 +1 @@
1
+ I"�/Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/modals.coffee?type=application/javascript&pipeline=self&id=4c4f5be08b82d4cdff8d21c24d242d515f8ef2c3d8efbe7edffca2a7fefef749:ET
@@ -0,0 +1 @@
1
+ I"�app/assets/javascripts/application.coffee?type=application/javascript&id=cfee0491e29c94614804a0dbc9ac541d11d75649680268598c00d0b691357c69:ET
@@ -0,0 +1 @@
1
+ I"~app/assets/stylesheets/application.sass?type=text/css&id=a4caa6ef8c571cbb473c1c2cbcf3dc299a8641478ab1cc95b8eb459ff7033041:ET
@@ -0,0 +1 @@
1
+ "%�m�┳R��8��2G�Jp��;�� \[(�"XO�
@@ -0,0 +1 @@
1
+ "%�7<��pSeq9UCt�,&��Q�_RHGEV��
@@ -0,0 +1 @@
1
+ "%5_A��eu�Xuђ�{;�>�hh�9<�Dp6
@@ -0,0 +1 @@
1
+ "%��,h����VcQ��Ԕ�������lK�A)2�
@@ -0,0 +1 @@
1
+ "%�G���A%�f9[�e��)2I����PH�@�
@@ -0,0 +1 @@
1
+ "%�v�,黌���l�,�m���+h��E��~
@@ -0,0 +1 @@
1
+ I"�/Users/benoit/www/agilidee/dorsale/app/assets/javascripts/dorsale/all.js?type=application/javascript&pipeline=self&id=475a8c4c5c4e6ca0d7e5aacd97df3b6162ae43b041783989227adfb46284b0d1:ET
@@ -0,0 +1 @@
1
+ I"~app/assets/stylesheets/application.sass?type=text/css&id=6986709bf93630c444c11225098c3623bd2558b882b782307df892214bace6a5:ET
@@ -0,0 +1 @@
1
+ "%�Y�gY;��]��&2X�ۀ-�-G�=)�M
@@ -0,0 +1,72 @@
1
+ I"�(function() {
2
+ window.modal = {
3
+ i18n: {
4
+ loading: "Loading...",
5
+ error: "Error."
6
+ },
7
+ template: "<div id='modal' class='modal'>\n <div class='modal-overlay modal-close'></div>\n <button class='modal-close'></button>\n <div class='modal-body'>\n {{content}}\n </div>\n</div>",
8
+ _generateModalHTML: function(content) {
9
+ return $(modal.template.replace("{{content}}", content));
10
+ },
11
+ open: function(content) {
12
+ modal.close();
13
+ $("body").addClass("modal-open");
14
+ $("body").append(modal._generateModalHTML(content));
15
+ return $(document).trigger("modal:open");
16
+ },
17
+ close: function() {
18
+ $("#modal").remove();
19
+ $("body").removeClass("modal-open");
20
+ $(document).trigger("modal:close");
21
+ return false;
22
+ },
23
+ openUrl: function(url, type, data) {
24
+ if (type == null) {
25
+ type = "GET";
26
+ }
27
+ if (data == null) {
28
+ data = {};
29
+ }
30
+ modal.open(modal.i18n.loading);
31
+ return $.ajax({
32
+ url: url,
33
+ type: type,
34
+ data: data,
35
+ dataType: "html",
36
+ success: function(data) {
37
+ return modal.open(data);
38
+ },
39
+ error: function() {
40
+ return modal.open(modal.i18n.error);
41
+ }
42
+ });
43
+ },
44
+ _callbacks: {
45
+ links: function() {
46
+ modal.openUrl(this.href);
47
+ return false;
48
+ },
49
+ forms: function() {
50
+ modal.openUrl(this.href, this.action, $(this).serialize());
51
+ return false;
52
+ },
53
+ escape: function(event) {
54
+ if (event.keyCode === 27) {
55
+ return modal.close();
56
+ }
57
+ }
58
+ },
59
+ setup: function() {
60
+ $(document).off("keyup", modal._callbacks.escape).on("keyup", modal._callbacks.escape);
61
+ $(".modal-close").off("click", modal.close).on("click", modal.close);
62
+ $("a[data-modal=1], .modal-body a:not([data-modal=0])").off("click", modal._callbacks.links).on("click", modal._callbacks.links);
63
+ return $("form[data-modal=1], .modal-body form:not([data-modal=0])").off("submit", modal._callbacks.forms).on("submit", modal._callbacks.forms);
64
+ }
65
+ };
66
+
67
+ $(document).on("ready page:load modal:open", function() {
68
+ return modal.setup();
69
+ });
70
+
71
+ }).call(this);
72
+ :ET