dorsale 3.3.0 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -0
  3. data/app/assets/stylesheets/dorsale/engines/flyboy.sass +0 -7
  4. data/app/controllers/dorsale/alexandrie/attachments_controller.rb +7 -0
  5. data/app/controllers/dorsale/application_controller.rb +1 -0
  6. data/app/controllers/dorsale/billing_machine/invoices_controller.rb +2 -0
  7. data/app/controllers/dorsale/billing_machine/quotations_controller.rb +2 -0
  8. data/app/controllers/dorsale/customer_vault/application_controller.rb +0 -4
  9. data/app/controllers/dorsale/customer_vault/people_controller.rb +0 -2
  10. data/app/controllers/dorsale/expense_gun/expenses_controller.rb +2 -2
  11. data/app/controllers/dorsale/flyboy/application_controller.rb +0 -3
  12. data/app/controllers/dorsale/flyboy/tasks_controller.rb +2 -8
  13. data/app/helpers/dorsale/all_helpers.rb +1 -0
  14. data/app/helpers/dorsale/flyboy/application_helper.rb +3 -12
  15. data/app/helpers/dorsale/link_helper.rb +10 -0
  16. data/app/helpers/dorsale/sorting_helper.rb +48 -0
  17. data/app/mailers/dorsale/billing_machine/invoice_mailer.rb +1 -1
  18. data/app/models/concerns/dorsale/model_i18n.rb +25 -0
  19. data/app/models/concerns/dorsale/model_to_s.rb +9 -0
  20. data/{lib → app/models/concerns}/dorsale/polymorphic_id.rb +1 -3
  21. data/app/models/concerns/dorsale/search.rb +30 -0
  22. data/app/models/dorsale/alexandrie/attachment.rb +7 -6
  23. data/app/models/dorsale/application_record.rb +6 -0
  24. data/app/models/dorsale/billing_machine/invoice.rb +2 -6
  25. data/app/models/dorsale/billing_machine/quotation.rb +4 -4
  26. data/app/models/dorsale/customer_vault/person.rb +0 -2
  27. data/app/models/dorsale/expense_gun/expense.rb +8 -8
  28. data/app/models/dorsale/flyboy/task.rb +5 -16
  29. data/app/pdfs/concerns/dorsale/alexandrie/prawn/render_with_attachments.rb +13 -0
  30. data/app/pdfs/dorsale/billing_machine/invoice_single_vat_pdf.rb +6 -1
  31. data/app/pdfs/dorsale/billing_machine/quotation_pdf_common_methods.rb +0 -18
  32. data/app/policies/dorsale/expense_gun/expense_policy_helper.rb +1 -1
  33. data/app/policies/dorsale/flyboy/task_policy_helper.rb +0 -10
  34. data/app/policies/dorsale/policy_checker.rb +0 -1
  35. data/app/services/dorsale/billing_machine/pdf_file_generator.rb +37 -0
  36. data/app/services/dorsale/expense_gun/expense/copy.rb +1 -1
  37. data/app/uploaders/dorsale/pdf_uploader.rb +5 -0
  38. data/app/views/dorsale/billing_machine/invoices/_details.html.slim +1 -1
  39. data/app/views/dorsale/billing_machine/invoices/_list.html.slim +1 -2
  40. data/app/views/dorsale/billing_machine/invoices/index.pdf.ruby +2 -2
  41. data/app/views/dorsale/billing_machine/invoices/show.pdf.ruby +1 -1
  42. data/app/views/dorsale/billing_machine/quotations/_list.html.slim +1 -2
  43. data/app/views/dorsale/billing_machine/quotations/show.pdf.ruby +1 -1
  44. data/app/views/dorsale/comments/_comment.html.slim +1 -1
  45. data/app/views/dorsale/customer_vault/links/new.html.slim +1 -1
  46. data/app/views/dorsale/customer_vault/people/_list_item.html.slim +1 -1
  47. data/app/views/dorsale/flyboy/tasks/_form.html.slim +3 -0
  48. data/app/views/dorsale/flyboy/tasks/_index_actions.html.slim +3 -0
  49. data/app/views/dorsale/flyboy/tasks/_list.html.slim +6 -12
  50. data/app/views/dorsale/flyboy/tasks/_summary_list.html.slim +2 -3
  51. data/app/views/dorsale/flyboy/tasks/_taskable_context.html.slim +1 -1
  52. data/app/views/dorsale/flyboy/tasks/index.xlsx.ruby +2 -4
  53. data/config/locales/billing_machine.en.yml +1 -0
  54. data/config/locales/billing_machine.fr.yml +1 -0
  55. data/config/locales/common.en.yml +3 -3
  56. data/config/locales/expense_gun.fr.yml +12 -12
  57. data/config/locales/flyboy.en.yml +1 -28
  58. data/config/locales/flyboy.fr.yml +1 -28
  59. data/config/routes.rb +0 -7
  60. data/db/migrate/20170127131537_delete_folders.rb +10 -0
  61. data/db/migrate/20170127151610_fix_expense_state.rb +6 -0
  62. data/db/migrate/20170127155636_billing_machine_add_pdf_file.rb +16 -0
  63. data/features/expense_gun_expenses.feature +3 -3
  64. data/features/flyboy_task_comments.feature +1 -1
  65. data/features/flyboy_tasks.feature +3 -4
  66. data/features/flyboy_tasks_summary.feature +0 -1
  67. data/features/step_definitions/billing_machine_invoices_steps.rb +1 -0
  68. data/features/step_definitions/expense_gun_expenses_steps.rb +2 -2
  69. data/features/step_definitions/flyboy_tasks_steps.rb +2 -3
  70. data/features/step_definitions/tasks_summary_steps.rb +3 -3
  71. data/lib/dorsale/active_record_comma_type_cast.rb +12 -0
  72. data/lib/dorsale/core_and_rails_ext.rb +3 -0
  73. data/lib/dorsale/engine.rb +6 -10
  74. data/lib/dorsale/form_back_url.rb +3 -1
  75. data/lib/dorsale/version.rb +1 -1
  76. data/spec/controllers/dorsale/billing_machine/invoices_controller_spec.rb +4 -1
  77. data/spec/controllers/dorsale/flyboy/tasks_controller_spec.rb +7 -30
  78. data/spec/factories/flyboy_tasks.rb +0 -2
  79. data/spec/helpers/dorsale/flyboy/application_helper_spec.rb +0 -64
  80. data/spec/helpers/dorsale/sorting_helper_spec.rb +74 -0
  81. data/spec/libs/{active_record_comma_type_cast_spec.rb → dorsale/active_record_comma_type_cast_spec.rb} +1 -1
  82. data/spec/libs/dorsale/polymorphic_id_spec.rb +8 -7
  83. data/spec/models/{dorsale → concerns/dorsale}/model_i18n_spec.rb +0 -0
  84. data/spec/models/dorsale/expense_gun/expense_spec.rb +19 -19
  85. data/spec/models/dorsale/flyboy/task_spec.rb +2 -1
  86. data/spec/pdfs/dorsale/billing_machine/invoice_multiple_vat_pdf_spec.rb +18 -13
  87. data/spec/pdfs/dorsale/billing_machine/invoice_single_vat_pdf_spec.rb +18 -13
  88. data/spec/pdfs/dorsale/billing_machine/quotation_multiple_vat_pdf_spec.rb +18 -13
  89. data/spec/pdfs/dorsale/billing_machine/quotation_single_vat_pdf_spec.rb +25 -19
  90. data/spec/services/dorsale/expense_gun/expense/copy_spec.rb +1 -1
  91. metadata +21 -52
  92. data/app/controllers/dorsale/flyboy/folders_controller.rb +0 -140
  93. data/app/filters/dorsale/flyboy/small_data/filter_for_folders.rb +0 -5
  94. data/app/filters/dorsale/flyboy/small_data/filter_strategy_by_status.rb +0 -9
  95. data/app/models/dorsale/flyboy/folder.rb +0 -72
  96. data/app/policies/dorsale/flyboy/folder_policy_helper.rb +0 -26
  97. data/app/views/dorsale/flyboy/folders/_context.html.slim +0 -18
  98. data/app/views/dorsale/flyboy/folders/_context_actions.html.slim +0 -10
  99. data/app/views/dorsale/flyboy/folders/_form.html.slim +0 -17
  100. data/app/views/dorsale/flyboy/folders/_index_actions.html.slim +0 -2
  101. data/app/views/dorsale/flyboy/folders/_list.html.slim +0 -41
  102. data/app/views/dorsale/flyboy/folders/edit.html.slim +0 -8
  103. data/app/views/dorsale/flyboy/folders/index.html.slim +0 -22
  104. data/app/views/dorsale/flyboy/folders/new.html.slim +0 -2
  105. data/app/views/dorsale/flyboy/folders/show.html.slim +0 -14
  106. data/features/flyboy_folders.feature +0 -109
  107. data/features/step_definitions/flyboy_folders_steps.rb +0 -170
  108. data/lib/active_record_comma_type_cast.rb +0 -12
  109. data/lib/dorsale/alexandrie/prawn.rb +0 -17
  110. data/lib/dorsale/model_i18n.rb +0 -30
  111. data/lib/dorsale/model_to_s.rb +0 -13
  112. data/lib/dorsale/search.rb +0 -34
  113. data/spec/controllers/dorsale/flyboy/folders_controller_spec.rb +0 -113
  114. data/spec/factories/flyboy_folders.rb +0 -7
  115. data/spec/models/dorsale/flyboy/folder_spec.rb +0 -103
  116. data/spec/routing/dorsale/flyboy/folders_routing_spec.rb +0 -44
@@ -1 +1 @@
1
- = render "#{@task.taskable.class.to_s.tableize}/context", taskable: @task.taskable
1
+ = render "#{@task.taskable.class.to_s.tableize}/context", taskable: @task.taskable if @task.taskable
@@ -2,7 +2,6 @@ data = [
2
2
  [
3
3
  model.t(:taskable),
4
4
  model.t(:taskable_type),
5
- model.t(:taskable_progress),
6
5
  model.t(:name),
7
6
  model.t(:progress),
8
7
  model.t(:term),
@@ -11,9 +10,8 @@ data = [
11
10
 
12
11
  @tasks_without_pagination.each do |task|
13
12
  data << [
14
- task.taskable.name,
15
- task.taskable.class.t,
16
- percentage(task.taskable.try(:progress)),
13
+ task.taskable.to_s,
14
+ (task.taskable.class.t if task.taskable),
17
15
  task.name,
18
16
  percentage(task.progress),
19
17
  date(task.term),
@@ -61,6 +61,7 @@ en:
61
61
  total_including_taxes: "Total"
62
62
  expires_at: "Expires at"
63
63
  balance: "Balance"
64
+ pdf_file: "PDF File"
64
65
 
65
66
  activerecord:
66
67
  models:
@@ -61,6 +61,7 @@ fr:
61
61
  total_including_taxes: "Total TTC"
62
62
  expires_at: "Date d'expiration"
63
63
  balance: "Reste à payer"
64
+ pdf_file: "Fichier PDF"
64
65
 
65
66
  activerecord:
66
67
  models:
@@ -176,9 +176,9 @@ en:
176
176
  tomorrow: "Tomorrow"
177
177
  today: "Today"
178
178
  yesterday: "Yesterday"
179
- this_week: "This semaine"
180
- this_month: "This mois"
181
- this_year: "This année"
179
+ this_week: "This week"
180
+ this_month: "This month"
181
+ this_year: "This year"
182
182
  last_week: "Last week"
183
183
  last_month: "Last month"
184
184
  last_year: "Last year"
@@ -2,12 +2,12 @@ fr:
2
2
  expense_gun:
3
3
  expense:
4
4
  messages:
5
- created : "La note de frais a été créée."
6
- updated : "La note de frais a été mise à jour."
7
- submited : "La note de frais a été soumise."
8
- accepted : "La note de frais a été acceptée."
9
- refused : "La note de frais a été refusée."
10
- canceled : "La note de frais a été annulée."
5
+ created : "La note de frais a été créée."
6
+ updated : "La note de frais a été mise à jour."
7
+ submitted : "La note de frais a été soumise."
8
+ accepted : "La note de frais a été acceptée."
9
+ refused : "La note de frais a été refusée."
10
+ canceled : "La note de frais a été annulée."
11
11
 
12
12
  actions:
13
13
  create : "Nouvelle note de frais"
@@ -61,9 +61,9 @@ fr:
61
61
  vat_deductible : "TVA déductible"
62
62
 
63
63
  dorsale/expense_gun/expense/state:
64
- all : "Toutes"
65
- new : "Brouillon"
66
- submited : "Soumise"
67
- accepted : "Accepée"
68
- refused : "Refusée"
69
- canceled : "Annulée"
64
+ all : "Toutes"
65
+ draft : "Brouillon"
66
+ submitted : "Soumise"
67
+ accepted : "Accepée"
68
+ refused : "Refusée"
69
+ canceled : "Annulée"
@@ -2,15 +2,6 @@ en:
2
2
  messages:
3
3
  forbidden: "This page dont exist"
4
4
 
5
- folders:
6
- title_create: "New folder"
7
- create_ok: "Folder created"
8
- update_ok: "Folder updated"
9
- open_ok: "Folder is open again"
10
- open_error: "One error occurs, folder can't be opened"
11
- close_ok: "Folder closed"
12
- close_error: "One error occurs, folder can't be closed"
13
-
14
5
  tasks:
15
6
  create_ok: "Task created"
16
7
  update_ok: "Task updated"
@@ -33,15 +24,8 @@ en:
33
24
  actions:
34
25
  label: "Actions"
35
26
 
36
- folders:
37
- new_task: "New task"
38
-
39
27
  activerecord:
40
28
  models:
41
- dorsale/flyboy/folder:
42
- one: "Folder"
43
- other: "Folders"
44
-
45
29
  dorsale/flyboy/task:
46
30
  one: "Task"
47
31
  other: "Tasks"
@@ -51,26 +35,15 @@ en:
51
35
  other: "Task Comments"
52
36
 
53
37
  attributes:
54
- dorsale/flyboy/folder:
55
- folderable: "Origin"
56
- name: "Name"
57
- status: "Status"
58
- description: "Description"
59
- revision: "Revision"
60
- status: "State"
61
- progress: "Progress"
62
-
63
- dorsale/flyboy/folder/status:
38
+ dorsale/flyboy/task/status:
64
39
  all: "All status"
65
40
  open: "Open"
66
- pending: "Pending"
67
41
  closed: "Closed"
68
42
  unknown: "Unknown"
69
43
 
70
44
  dorsale/flyboy/task:
71
45
  taskable: "Origin"
72
46
  taskable_type: "Origin type"
73
- taskable_progerss: "Origin progress"
74
47
  owner: "Owner"
75
48
  owner_id: "Owner"
76
49
  owner_guid: "Owner"
@@ -2,15 +2,6 @@ fr:
2
2
  messages:
3
3
  forbidden: "Cette page ne peut être trouvée"
4
4
 
5
- folders:
6
- title_create: "Nouveau dossier"
7
- create_ok: "Le dossier a bien été créé"
8
- update_ok: "Le dossier a bien été modifié"
9
- open_ok: "Le dossier a été réouvert"
10
- open_error: "Impossible de réouvrir le dossier"
11
- close_ok: "Le dossier a été fermé"
12
- close_error: "Impossible de fermer le dossier"
13
-
14
5
  tasks:
15
6
  create_ok: "La tâche a bien été créée"
16
7
  update_ok: "La tâche a bien été modifiée"
@@ -33,15 +24,8 @@ fr:
33
24
  actions:
34
25
  label: "Actions"
35
26
 
36
- folders:
37
- new_task: "Nouvelle tâche"
38
-
39
27
  activerecord:
40
28
  models:
41
- dorsale/flyboy/folder:
42
- one: "Dossier"
43
- other: "Dossiers"
44
-
45
29
  dorsale/flyboy/task:
46
30
  one: "Tâche"
47
31
  other: "Tâches"
@@ -51,26 +35,15 @@ fr:
51
35
  other: "Commentaires de tâche"
52
36
 
53
37
  attributes:
54
- dorsale/flyboy/folder:
55
- folderable: "Origine"
56
- name: "Titre"
57
- status: "Status"
58
- description: "Description"
59
- revision: "Révision"
60
- status: "Etat"
61
- progress: "Progression"
62
-
63
- dorsale/flyboy/folder/status:
38
+ dorsale/flyboy/task/status:
64
39
  all: "Tous les status"
65
40
  open: "Ouvert"
66
- pending: "En attente"
67
41
  closed: "Fermé"
68
42
  unknown: "Inconnu"
69
43
 
70
44
  dorsale/flyboy/task:
71
45
  taskable: "Origine"
72
46
  taskable_type: "Type origine"
73
- taskable_progress: "Progression origine"
74
47
  owner: "Propriétaire"
75
48
  owner_id: "Propriétaire"
76
49
  owner_guid: "Propriétaire"
@@ -22,13 +22,6 @@ Dorsale::Engine.routes.draw do
22
22
  # Flyboy
23
23
 
24
24
  namespace :flyboy do
25
- resources :folders do
26
- member do
27
- patch :open
28
- patch :close
29
- end
30
- end
31
-
32
25
  resources :tasks do
33
26
  get :summary, on: :collection
34
27
  member do
@@ -0,0 +1,10 @@
1
+ class DeleteFolders < ActiveRecord::Migration[5.0]
2
+ def change
3
+ # Comment this migration or only this line to keep or delete folders
4
+ raise "Hi ! Do you want to delete folders ?"
5
+ drop_table :dorsale_flyboy_folders
6
+ Dorsale::Flyboy::Task
7
+ .where(taskable_type: "Dorsale::Flyboy::Folder")
8
+ .update_all(taskable_type: nil, taskable_id: nil)
9
+ end
10
+ end
@@ -0,0 +1,6 @@
1
+ class FixExpenseState < ActiveRecord::Migration[5.0]
2
+ def change
3
+ Dorsale::ExpenseGun::Expense.where(state: "submited").update_all(state: "submitted")
4
+ Dorsale::ExpenseGun::Expense.where(state: "new").update_all(state: "draft")
5
+ end
6
+ end
@@ -0,0 +1,16 @@
1
+ class BillingMachineAddPdfFile < ActiveRecord::Migration[5.0]
2
+ def change
3
+ add_column :dorsale_billing_machine_invoices, :pdf_file, :string
4
+ add_column :dorsale_billing_machine_quotations, :pdf_file, :string
5
+
6
+ Dorsale::ApplicationRecord.reset_column_information
7
+
8
+ Dorsale::BillingMachine::Invoice.all.each do |invoice|
9
+ Dorsale::BillingMachine::PdfFileGenerator.(invoice)
10
+ end
11
+
12
+ Dorsale::BillingMachine::Quotation.all.each do |quotation|
13
+ Dorsale::BillingMachine::PdfFileGenerator.(quotation)
14
+ end
15
+ end
16
+ end
@@ -34,7 +34,7 @@ Feature: Expenses
34
34
  When I go on the expense page
35
35
  And I submit the expense
36
36
  Then I am redirect to the expenses page
37
- And the expense state is "submited"
37
+ And the expense state is "submitted"
38
38
 
39
39
  Scenario: Cancel expense
40
40
  Given an existing expense
@@ -45,7 +45,7 @@ Feature: Expenses
45
45
 
46
46
  Scenario: Accept expense
47
47
  Given an existing expense
48
- And the expense is submited
48
+ And the expense is submitted
49
49
  When I go on the expense page
50
50
  And I accept the expense
51
51
  Then I am redirect to the expense page
@@ -53,7 +53,7 @@ Feature: Expenses
53
53
 
54
54
  Scenario: Refuse expense
55
55
  Given an existing expense
56
- And the expense is submited
56
+ And the expense is submitted
57
57
  When I go on the expense page
58
58
  And I refuse the expense
59
59
  Then I am redirect to the expenses page
@@ -1,5 +1,5 @@
1
1
  @javascript
2
- Feature: Manage folder comments
2
+ Feature: Manage task comments
3
3
  Background:
4
4
  Given an authenticated user
5
5
 
@@ -4,11 +4,10 @@ Feature: Manage tasks
4
4
  Given an authenticated user
5
5
 
6
6
  Scenario: Create a task
7
- Given an existing folder
8
- When I consult this folder
7
+ When I go to the tasks section
9
8
  And I create a task
10
- Then I am on this folder
11
- And the task is created
9
+ Then the task is created
10
+ And I go to the tasks section
12
11
 
13
12
  Scenario: Read a task
14
13
  Given an existing task
@@ -5,7 +5,6 @@ Feature: Homepage
5
5
 
6
6
  Background:
7
7
  Given an authenticated user
8
- Given an existing folder
9
8
 
10
9
  Scenario: Expired tasks
11
10
  Given an expired tasks
@@ -339,6 +339,7 @@ end
339
339
  When(/^he send invoice to customer by email$/) do
340
340
  ActionMailer::Base.deliveries.clear
341
341
 
342
+ Dorsale::BillingMachine::PdfFileGenerator.(@invoice)
342
343
  @invoice.customer = create(:customer_vault_corporation, email: "aaa@example.org")
343
344
  @invoice.save!
344
345
 
@@ -90,8 +90,8 @@ Then(/^the expense state is "([^"]*)"$/) do |new_state|
90
90
  expect(@expense.reload.state).to eq new_state
91
91
  end
92
92
 
93
- Given(/^the expense is submited$/) do
94
- @expense.update_columns(state: "submited")
93
+ Given(/^the expense is submitted$/) do
94
+ @expense.update_columns(state: "submitted")
95
95
  end
96
96
 
97
97
  When(/^I cancel the expense$/) do
@@ -14,8 +14,7 @@ Given(/^an existing task named "(.*?)"$/) do |name|
14
14
  end
15
15
 
16
16
  Given(/^an existing task$/) do
17
- @task = create(:flyboy_task)
18
- @folder = @task.taskable
17
+ @task = create(:flyboy_task)
19
18
  end
20
19
 
21
20
  Given(/^an existing snoozable task$/) do
@@ -63,7 +62,7 @@ When(/^the flyboy daily crons run$/) do
63
62
  end
64
63
 
65
64
  When(/^I create a task$/) do
66
- find("#context-main a[href*='tasks/new']").click
65
+ find("a[href*='tasks/new']").click
67
66
  find("form[id*=task] [type=submit]").click # First submit to see errors
68
67
  fill_in "task_name", with: "I-am-the-task-title"
69
68
  fill_in "task_description", with: "I-am-the-task-description"
@@ -1,13 +1,13 @@
1
1
  Given(/^an expired tasks$/) do
2
- @task = create(:flyboy_task, taskable: @folder, owner: @user, term: Time.zone.now.to_date-1)
2
+ @task = create(:flyboy_task, owner: @user, term: Time.zone.now.to_date-1)
3
3
  end
4
4
 
5
5
  Given(/^a task that expire tommorow$/) do
6
- @task = create(:flyboy_task, taskable: @folder, owner: @user, term: Time.zone.now.to_date+1)
6
+ @task = create(:flyboy_task, owner: @user, term: Time.zone.now.to_date+1)
7
7
  end
8
8
 
9
9
  Given(/^a task that expire today$/) do
10
- @task = create(:flyboy_task, taskable: @folder, owner: @user, term: Time.zone.now.to_date)
10
+ @task = create(:flyboy_task, owner: @user, term: Time.zone.now.to_date)
11
11
  end
12
12
 
13
13
  When(/^he go to the tasks summary page$/) do
@@ -0,0 +1,12 @@
1
+ module Dorsale::ActiveRecordCommaTypeCast
2
+ def cast_value(value)
3
+ if value.is_a?(String)
4
+ super value.gsub(",", ".").gsub(/[^-0-9\.]/, "")
5
+ else
6
+ super value
7
+ end
8
+ end
9
+ end
10
+
11
+ ActiveRecord::Type::Decimal.send(:prepend, Dorsale::ActiveRecordCommaTypeCast)
12
+ ActiveRecord::Type::Float.send(:prepend, Dorsale::ActiveRecordCommaTypeCast)
@@ -0,0 +1,3 @@
1
+ require "dorsale/file_loader"
2
+ require "dorsale/active_record_comma_type_cast"
3
+ require "dorsale/form_back_url"
@@ -19,7 +19,6 @@ require "awesome_print"
19
19
  require "kaminari-i18n"
20
20
  require "carrierwave"
21
21
  require "aasm"
22
- require "handles_sortable_columns"
23
22
  require "pdf/reader"
24
23
  require "prawn"
25
24
  require "prawn/table"
@@ -34,7 +33,6 @@ if Rails.env.test? || Rails.env.development?
34
33
  end
35
34
 
36
35
  require "acts-as-taggable-on"
37
- require "active_record_comma_type_cast"
38
36
 
39
37
  module Dorsale
40
38
  class Engine < ::Rails::Engine
@@ -62,16 +60,14 @@ module Dorsale
62
60
  Rails.application.config.assets.precompile += %w( dorsale/avatar.png )
63
61
  end
64
62
 
63
+ initializer "simple_form" do
64
+ require "dorsale/simple_form"
65
+ require "dorsale/simple_form_bootstrap"
66
+ end
67
+
65
68
  Mime::Type.register "application/vnd.ms-excel", :xls
66
69
  Mime::Type.register "application/vnd.ms-excel", :xlsx
67
70
  end
68
71
  end
69
72
 
70
- require "dorsale/file_loader"
71
- require "dorsale/polymorphic_id"
72
- require "dorsale/simple_form"
73
- require "dorsale/simple_form_bootstrap"
74
- require "dorsale/model_i18n"
75
- require "dorsale/model_to_s"
76
- require "dorsale/alexandrie/prawn"
77
- require "dorsale/form_back_url"
73
+ require_relative "core_and_rails_ext"
@@ -1,4 +1,4 @@
1
- ActionView::Helpers::FormTagHelper.module_eval do
1
+ module Dorsale::FormBackUrl
2
2
  def back_url_tag
3
3
  tag(:input,
4
4
  :type => "hidden",
@@ -14,3 +14,5 @@ ActionView::Helpers::FormTagHelper.module_eval do
14
14
  output.safe_concat("</form>")
15
15
  end
16
16
  end
17
+
18
+ ActionView::Helpers::FormTagHelper.send(:prepend, Dorsale::FormBackUrl)