dorsale 2.6.1 → 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2b7376b6c7d46d198bbede8be8663db10631de53
4
- data.tar.gz: 6b83f90d10b65ccc90b864f6f4fd0aaeb795d732
3
+ metadata.gz: 28eb1c98bdece057979af2bc922aaca17f24f3e9
4
+ data.tar.gz: a7033e420547043adc5e9a096f541d6196c06498
5
5
  SHA512:
6
- metadata.gz: 57aef075a9310b76cca63a2f7da3b3e9e6edfb5d2e7b25689c78800e2d14f3bb452fb0c177f52c88287df18aeb70a452deb0ebc44399b1551025723fc235b33a
7
- data.tar.gz: 24765f16d7bba8aef49ffe422c7f506e01b265beda6eebf86a292886819b95447ce1e5fc30c49edb5ca54bf23d9a4cd605f71aa21524a593cdc40a84fe85059e
6
+ metadata.gz: 9e27c04cec5d074974d8a54848037b144bff4fb706d11da476bf206bb3e56d95559f408aed6f058b60a1ed82e4062406d97bb1a20da36b69b28776ce5827618c
7
+ data.tar.gz: 09c33cdf4e97216007092392cab0d875d214fa49a5ef5b2d2b77c8459eef796a6650138fc3cdf848222f34db2a7de5961b84cee49a1966f6c3d2f82a8cb1b7c0
@@ -0,0 +1,4 @@
1
+ body[class*=devise] #main,
2
+ body[data-controller*=devise] #main,
3
+ max-width: 40em
4
+ margin: auto
@@ -37,6 +37,7 @@ module Dorsale
37
37
 
38
38
  def header_height; 90.mm; end
39
39
  def logo_height; 32.mm; end
40
+ def logo_width; 50.mm; end
40
41
 
41
42
  def footer_height; 40.mm; end
42
43
  def footer_top_height; 15.mm; end
@@ -107,12 +108,12 @@ module Dorsale
107
108
  def build_logo
108
109
  return if logo_path.nil?
109
110
 
110
- width = 3.2.cm
111
111
  height = logo_height
112
+ width = logo_width
112
113
 
113
114
  bounding_box [bounds.left, bounds.top], width: width, height: height do
114
115
  draw_bounds_debug
115
- image logo_path, width: (bounds.width - 1.cm)
116
+ image logo_path, fit: [width, height]
116
117
  end
117
118
  end
118
119
 
@@ -125,27 +126,27 @@ module Dorsale
125
126
  ].select(&:present?).join(", ")
126
127
  end
127
128
 
129
+ def contact_content
130
+ content = []
131
+ content << "<b>#{@id_card.entity_name}</b>" if @id_card.entity_name.present?
132
+ content << "<b>#{contact_address_line}</b>" if contact_address_line.present?
133
+ content << " "
134
+ content << "<b>#{main_document.t(:your_contact)} : #{@id_card.contact_full_name}</b>" if @id_card.contact_full_name.present?
135
+ content << "<b>#{main_document.t(:contact_phone)} : </b> #{@id_card.contact_phone}" if @id_card.contact_phone.present?
136
+ content << "<b>#{main_document.t(:contact_fax)} : </b> #{@id_card.contact_fax}" if @id_card.contact_fax.present?
137
+ content << "<b>#{main_document.t(:contact_email)} : </b> #{@id_card.contact_email}" if @id_card.contact_email.present?
138
+ content.join("\n")
139
+ end
140
+
128
141
  def build_contact
129
142
  top = bounds.top - 4.cm
130
143
  left = bounds.left
131
144
  width = bounds.width / 2 - 1.1.cm
132
145
  height = 2.5.cm
133
146
 
134
- contact_text = []
135
- contact_text << "<b>#{@id_card.entity_name}</b>" if @id_card.entity_name.present?
136
- contact_text << "<b>#{contact_address_line}</b>" if contact_address_line.present?
137
- contact_text << " "
138
- contact_text << "<b>#{main_document.t(:your_contact)} : #{@id_card.contact_full_name}</b>" if @id_card.contact_full_name.present?
139
- contact_text << "<b>#{main_document.t(:contact_phone)} : </b> #{@id_card.contact_phone}" if @id_card.contact_phone.present?
140
- contact_text << "<b>#{main_document.t(:contact_fax)} : </b> #{@id_card.contact_fax}" if @id_card.contact_fax.present?
141
- contact_text << "<b>#{main_document.t(:contact_email)} : </b> #{@id_card.contact_email}" if @id_card.contact_email.present?
142
- contact_text = contact_text.join("\n")
143
-
144
147
  bounding_box [left, top], width: width, height: height do
145
148
  draw_bounds_debug
146
- font_size 8 do
147
- text contact_text, inline_format: true
148
- end
149
+ text contact_content, inline_format: true, size: 8
149
150
  end
150
151
  end
151
152
 
@@ -364,27 +365,30 @@ module Dorsale
364
365
  height = top - bounds.bottom
365
366
  width = 10.cm
366
367
 
367
- font_size 9 do
368
- text_box main_document.comments,
369
- :at => [bounds.left, top],
370
- :height => height,
371
- :width => width,
372
- :overflow => :shrink_to_fit
373
- end
368
+ text_box main_document.comments,
369
+ :at => [bounds.left, top],
370
+ :height => height,
371
+ :width => width,
372
+ :overflow => :shrink_to_fit,
373
+ :size => 9
374
374
  end
375
375
 
376
376
  def build_payment_conditions
377
- top = bounds.top - products_table_height - 5.mm
378
- height = 1.cm
377
+ return if main_document.payment_term.blank?
378
+
379
+ top = bounds.top - products_table_height - 5.mm
380
+ height = 15.mm
379
381
  width = 7.5.cm
380
382
 
381
- bounding_box [bounds.left, top], height: height, width: width do
382
- draw_bounds_debug
383
- font_size 9 do
384
- text main_document.t(:payment_terms), style: :bold if main_document.payment_term.present?
385
- text main_document.payment_term.try(:label)
386
- end
387
- end
383
+ txt = "<b>#{main_document.t(:payment_terms)}</b> : #{main_document.payment_term}"
384
+
385
+ text_box txt,
386
+ :at => [bounds.left, top],
387
+ :height => height,
388
+ :width => width,
389
+ :overflow => :shrink_to_fit,
390
+ :inline_format => true,
391
+ :size => 9
388
392
  end
389
393
 
390
394
  def build_expiry
@@ -424,13 +428,12 @@ module Dorsale
424
428
  height = footer_top_height
425
429
  width = bounds.width
426
430
 
427
- font_size 9 do
428
- text_box footer_top_content,
429
- :at => [bounds.left, top],
430
- :height => height,
431
- :width => width,
432
- :overflow => :shrink_to_fit
433
- end
431
+ text_box footer_top_content,
432
+ :at => [bounds.left, top],
433
+ :height => height,
434
+ :width => width,
435
+ :overflow => :shrink_to_fit,
436
+ :size => 9
434
437
  end
435
438
 
436
439
  def build_footer_line
@@ -462,13 +465,12 @@ module Dorsale
462
465
  top = bounds.bottom + height
463
466
  width = bounds.width
464
467
 
465
- font_size 9 do
466
- text_box footer_bottom_content,
467
- :at => [bounds.left, top],
468
- :height => height,
469
- :width => width,
470
- :overflow => :shrink_to_fit
471
- end
468
+ text_box footer_bottom_content,
469
+ :at => [bounds.left, top],
470
+ :height => height,
471
+ :width => width,
472
+ :overflow => :shrink_to_fit,
473
+ :size => 9
472
474
  end
473
475
 
474
476
  def build_page_numbers
@@ -477,10 +479,8 @@ module Dorsale
477
479
  width = bounds.width
478
480
 
479
481
  bounding_box [0, top], height: height, width: bounds.width do
480
- font_size 9 do
481
- float do
482
- number_pages "page <page>/<total>", align: :right
483
- end
482
+ float do
483
+ number_pages "page <page>/<total>", align: :right, size: 9
484
484
  end
485
485
  end
486
486
  end
@@ -25,15 +25,13 @@ module Dorsale
25
25
  def build_expiry
26
26
  return if main_document.expires_at.nil?
27
27
 
28
- top = bounds.top - 11.5.cm
28
+ top = bounds.top - 11.5.cm
29
29
  height = 0.5.cm
30
30
  width = 7.5.cm
31
31
 
32
32
  bounding_box [bounds.left, top], height: height, width: width do
33
33
  draw_bounds_debug
34
- font_size 9 do
35
- text "<b>#{main_document.t(:expires_at)}</b> #{I18n.l(main_document.expires_at)}", inline_format: true
36
- end
34
+ text "<b>#{main_document.t(:expires_at)}</b> #{I18n.l(main_document.expires_at)}", inline_format: true, size: 9
37
35
  end
38
36
  end
39
37
  end
@@ -1,3 +1,3 @@
1
1
  module Dorsale
2
- VERSION = "2.6.1"
2
+ VERSION = "2.6.2"
3
3
  end
@@ -18,13 +18,9 @@ describe Dorsale::Alexandrie::AttachmentsController, type: :controller do
18
18
  }
19
19
  }
20
20
 
21
- let(:user) {
22
- create(:user)
23
- }
21
+ let(:user) { create(:user) }
24
22
 
25
- before :each do
26
- sign_in user
27
- end
23
+ before(:each) { sign_in(user) }
28
24
 
29
25
  describe "create" do
30
26
  it "should create attachment" do
@@ -3,6 +3,10 @@ require "rails_helper"
3
3
  describe Dorsale::BillingMachine::QuotationsController, type: :controller do
4
4
  routes { Dorsale::Engine.routes }
5
5
 
6
+ let(:user) { create(:user) }
7
+
8
+ before(:each) { sign_in(user) }
9
+
6
10
  describe "#index" do
7
11
  it "stats should not include canceled quotations" do
8
12
  q1 = create(:billing_machine_quotation_line, quantity: 1, unit_price: 10)
@@ -3,10 +3,9 @@ require "rails_helper"
3
3
  describe Dorsale::CommentsController, type: :controller do
4
4
  routes { Dorsale::Engine.routes }
5
5
 
6
- let(:user) {create(:user)}
7
- before :each do
8
- sign_in user
9
- end
6
+ let(:user) { create(:user) }
7
+
8
+ before(:each) { sign_in(user) }
10
9
 
11
10
  let(:valid_attributes){
12
11
  commentable = DummyModel.create!(name: "A")
@@ -1,9 +1,12 @@
1
1
  require "rails_helper"
2
2
 
3
3
  RSpec.describe ::Dorsale::CustomerVault::CorporationsController, type: :controller do
4
-
5
4
  routes { ::Dorsale::Engine.routes }
6
5
 
6
+ let(:user) { create(:user) }
7
+
8
+ before(:each) { sign_in(user) }
9
+
7
10
  let(:valid_attributes) {
8
11
  FactoryGirl.attributes_for(:customer_vault_corporation)
9
12
  }
@@ -2,9 +2,12 @@ require "rails_helper"
2
2
 
3
3
 
4
4
  RSpec.describe ::Dorsale::CustomerVault::IndividualsController, type: :controller do
5
-
6
5
  routes { ::Dorsale::Engine.routes }
7
6
 
7
+ let(:user) { create(:user) }
8
+
9
+ before(:each) { sign_in(user) }
10
+
8
11
  let(:valid_attributes) {
9
12
  FactoryGirl.attributes_for(:customer_vault_individual)
10
13
  }
@@ -2,7 +2,11 @@ require "rails_helper"
2
2
 
3
3
  RSpec.describe ::Dorsale::CustomerVault::PeopleController, type: :controller do
4
4
  routes { Dorsale::Engine.routes }
5
+
5
6
  let(:user) { create(:user) }
7
+
8
+ before(:each) { sign_in(user) }
9
+
6
10
  describe "#index" do
7
11
  it "should redirect to activity" do
8
12
  get :index
@@ -1,8 +1,12 @@
1
1
  require "rails_helper"
2
2
 
3
3
  describe Dorsale::Flyboy::FoldersController, type: :controller do
4
- render_views
5
4
  routes { Dorsale::Engine.routes }
5
+ render_views
6
+
7
+ let(:user) { create(:user) }
8
+
9
+ before(:each) { sign_in(user) }
6
10
 
7
11
  let(:folder){
8
12
  create(:flyboy_folder)
@@ -3,14 +3,13 @@ require "rails_helper"
3
3
  describe Dorsale::Flyboy::TaskCommentsController, type: :controller do
4
4
  routes { Dorsale::Engine.routes }
5
5
 
6
+ let(:user) { create(:user) }
7
+
8
+ before(:each) { sign_in(user) }
9
+
6
10
  let(:task) { create(:flyboy_task) }
7
11
  let(:task_comment) { create(:flyboy_task_comment, task: task) }
8
12
 
9
- let(:user) {create(:user)}
10
- before :each do
11
- sign_in user
12
- end
13
-
14
13
  describe "#create" do
15
14
  it "should create the task_comment" do
16
15
  post :create, task_id: task.id, task_comment: task_comment.attributes
@@ -2,10 +2,10 @@ require "rails_helper"
2
2
 
3
3
  describe Dorsale::Flyboy::TasksController, type: :controller do
4
4
  routes { Dorsale::Engine.routes }
5
- before(:each) do
6
- @user = create(:user)
7
- sign_in @user
8
- end
5
+
6
+ let(:user) { create(:user) }
7
+
8
+ before(:each) { sign_in(user) }
9
9
 
10
10
  let!(:task) {
11
11
  create(:flyboy_task, done: false)
@@ -48,12 +48,6 @@ describe Dorsale::Flyboy::TasksController, type: :controller do
48
48
  end
49
49
 
50
50
  describe "GET index" do
51
- it "assigns all tasks as @tasks" do
52
- Dorsale::UserScope.any_instance.stub(:tasks).and_return(Dorsale::Flyboy::Task.where(id: task.id))
53
- get :index, {}
54
- expect(assigns(:tasks).sort).to eq [task]
55
- end
56
-
57
51
  context "when applying filter" do
58
52
  before do
59
53
  Dorsale::Flyboy::Task.destroy_all
@@ -1,55 +1,58 @@
1
1
  require "rails_helper"
2
2
 
3
- module Dorsale
4
- describe SmallData::FiltersController, type: :controller do
5
- routes { Dorsale::Engine.routes }
3
+ describe Dorsale::SmallData::FiltersController, type: :controller do
4
+ routes { Dorsale::Engine.routes }
6
5
 
7
- let(:filters) { {key: "value"} }
6
+ let(:user) { create(:user) }
8
7
 
9
- before(:each) do
10
- request.env["HTTP_REFERER"] = "where_i_came_from"
8
+ before(:each) { sign_in(user) }
9
+
10
+ let(:filters) { {key: "value"} }
11
+
12
+ before(:each) do
13
+ request.env["HTTP_REFERER"] = "where_i_came_from"
14
+ end
15
+
16
+ describe "create" do
17
+ let(:action) {post :create, filters: filters}
18
+
19
+ it "should redirect to refferer" do
20
+ action
21
+ expect(response).to redirect_to "where_i_came_from"
11
22
  end
12
23
 
13
- describe "create" do
14
- let(:action) {post :create, filters: filters}
15
-
16
- it "should redirect to refferer" do
17
- action
18
- expect(response).to redirect_to "where_i_came_from"
19
- end
20
-
21
- it "should redirect to call back url if defined" do
22
- post :create, filters: {key: "value"}, back_url: "xxx"
23
- expect(response).to redirect_to "xxx"
24
- end
25
-
26
- it "should store the filter in cookie" do
27
- action
28
- expect(response.cookies["filters"]).to eq(filters.to_json)
29
- end
30
-
31
- it "should merge filters with previous filters" do
32
- action
33
- post :create, filters: {other_key: "value2"}
34
- expect(response.cookies["filters"]).to eq({key: "value", other_key: "value2"}.to_json)
35
- end
24
+ it "should redirect to call back url if defined" do
25
+ post :create, filters: {key: "value"}, back_url: "xxx"
26
+ expect(response).to redirect_to "xxx"
36
27
  end
37
28
 
38
- describe "back_url" do
39
- it "should reset page" do
40
- post :create, filters: {}, back_url: "/dorsale/flyboy/tasks"
41
- expect(response).to redirect_to "/dorsale/flyboy/tasks"
29
+ it "should store the filter in cookie" do
30
+ action
31
+ expect(response.cookies["filters"]).to eq(filters.to_json)
32
+ end
42
33
 
43
- post :create, filters: {}, back_url: "/dorsale/flyboy/tasks?&sort=term&page=3"
44
- expect(response).to redirect_to "/dorsale/flyboy/tasks?&sort=term"
34
+ it "should merge filters with previous filters" do
35
+ action
36
+ post :create, filters: {other_key: "value2"}
37
+ expect(response.cookies["filters"]).to eq({key: "value", other_key: "value2"}.to_json)
38
+ end
39
+ end
45
40
 
46
- post :create, filters: {}, back_url: "/dorsale/flyboy/tasks?&sort=term&page=3&a=b"
47
- expect(response).to redirect_to "/dorsale/flyboy/tasks?&sort=term&a=b"
41
+ describe "back_url" do
42
+ it "should reset page" do
43
+ post :create, filters: {}, back_url: "/dorsale/flyboy/tasks"
44
+ expect(response).to redirect_to "/dorsale/flyboy/tasks"
48
45
 
49
- post :create, filters: {}, back_url: "/dorsale/flyboy/tasks?page=3&a=b"
50
- expect(response).to redirect_to "/dorsale/flyboy/tasks?a=b"
51
- end
52
- end
46
+ post :create, filters: {}, back_url: "/dorsale/flyboy/tasks?&sort=term&page=3"
47
+ expect(response).to redirect_to "/dorsale/flyboy/tasks?&sort=term"
48
+
49
+ post :create, filters: {}, back_url: "/dorsale/flyboy/tasks?&sort=term&page=3&a=b"
50
+ expect(response).to redirect_to "/dorsale/flyboy/tasks?&sort=term&a=b"
53
51
 
52
+ post :create, filters: {}, back_url: "/dorsale/flyboy/tasks?page=3&a=b"
53
+ expect(response).to redirect_to "/dorsale/flyboy/tasks?a=b"
54
+ end
54
55
  end
56
+
55
57
  end
58
+