dorsale 3.3.0 → 3.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/app/assets/stylesheets/dorsale/engines/flyboy.sass +0 -7
- data/app/controllers/dorsale/alexandrie/attachments_controller.rb +7 -0
- data/app/controllers/dorsale/application_controller.rb +1 -0
- data/app/controllers/dorsale/billing_machine/invoices_controller.rb +2 -0
- data/app/controllers/dorsale/billing_machine/quotations_controller.rb +2 -0
- data/app/controllers/dorsale/customer_vault/application_controller.rb +0 -4
- data/app/controllers/dorsale/customer_vault/people_controller.rb +0 -2
- data/app/controllers/dorsale/expense_gun/expenses_controller.rb +2 -2
- data/app/controllers/dorsale/flyboy/application_controller.rb +0 -3
- data/app/controllers/dorsale/flyboy/tasks_controller.rb +2 -8
- data/app/helpers/dorsale/all_helpers.rb +1 -0
- data/app/helpers/dorsale/flyboy/application_helper.rb +3 -12
- data/app/helpers/dorsale/link_helper.rb +10 -0
- data/app/helpers/dorsale/sorting_helper.rb +48 -0
- data/app/mailers/dorsale/billing_machine/invoice_mailer.rb +1 -1
- data/app/models/concerns/dorsale/model_i18n.rb +25 -0
- data/app/models/concerns/dorsale/model_to_s.rb +9 -0
- data/{lib → app/models/concerns}/dorsale/polymorphic_id.rb +1 -3
- data/app/models/concerns/dorsale/search.rb +30 -0
- data/app/models/dorsale/alexandrie/attachment.rb +7 -6
- data/app/models/dorsale/application_record.rb +6 -0
- data/app/models/dorsale/billing_machine/invoice.rb +2 -6
- data/app/models/dorsale/billing_machine/quotation.rb +4 -4
- data/app/models/dorsale/customer_vault/person.rb +0 -2
- data/app/models/dorsale/expense_gun/expense.rb +8 -8
- data/app/models/dorsale/flyboy/task.rb +5 -16
- data/app/pdfs/concerns/dorsale/alexandrie/prawn/render_with_attachments.rb +13 -0
- data/app/pdfs/dorsale/billing_machine/invoice_single_vat_pdf.rb +6 -1
- data/app/pdfs/dorsale/billing_machine/quotation_pdf_common_methods.rb +0 -18
- data/app/policies/dorsale/expense_gun/expense_policy_helper.rb +1 -1
- data/app/policies/dorsale/flyboy/task_policy_helper.rb +0 -10
- data/app/policies/dorsale/policy_checker.rb +0 -1
- data/app/services/dorsale/billing_machine/pdf_file_generator.rb +37 -0
- data/app/services/dorsale/expense_gun/expense/copy.rb +1 -1
- data/app/uploaders/dorsale/pdf_uploader.rb +5 -0
- data/app/views/dorsale/billing_machine/invoices/_details.html.slim +1 -1
- data/app/views/dorsale/billing_machine/invoices/_list.html.slim +1 -2
- data/app/views/dorsale/billing_machine/invoices/index.pdf.ruby +2 -2
- data/app/views/dorsale/billing_machine/invoices/show.pdf.ruby +1 -1
- data/app/views/dorsale/billing_machine/quotations/_list.html.slim +1 -2
- data/app/views/dorsale/billing_machine/quotations/show.pdf.ruby +1 -1
- data/app/views/dorsale/comments/_comment.html.slim +1 -1
- data/app/views/dorsale/customer_vault/links/new.html.slim +1 -1
- data/app/views/dorsale/customer_vault/people/_list_item.html.slim +1 -1
- data/app/views/dorsale/flyboy/tasks/_form.html.slim +3 -0
- data/app/views/dorsale/flyboy/tasks/_index_actions.html.slim +3 -0
- data/app/views/dorsale/flyboy/tasks/_list.html.slim +6 -12
- data/app/views/dorsale/flyboy/tasks/_summary_list.html.slim +2 -3
- data/app/views/dorsale/flyboy/tasks/_taskable_context.html.slim +1 -1
- data/app/views/dorsale/flyboy/tasks/index.xlsx.ruby +2 -4
- data/config/locales/billing_machine.en.yml +1 -0
- data/config/locales/billing_machine.fr.yml +1 -0
- data/config/locales/common.en.yml +3 -3
- data/config/locales/expense_gun.fr.yml +12 -12
- data/config/locales/flyboy.en.yml +1 -28
- data/config/locales/flyboy.fr.yml +1 -28
- data/config/routes.rb +0 -7
- data/db/migrate/20170127131537_delete_folders.rb +10 -0
- data/db/migrate/20170127151610_fix_expense_state.rb +6 -0
- data/db/migrate/20170127155636_billing_machine_add_pdf_file.rb +16 -0
- data/features/expense_gun_expenses.feature +3 -3
- data/features/flyboy_task_comments.feature +1 -1
- data/features/flyboy_tasks.feature +3 -4
- data/features/flyboy_tasks_summary.feature +0 -1
- data/features/step_definitions/billing_machine_invoices_steps.rb +1 -0
- data/features/step_definitions/expense_gun_expenses_steps.rb +2 -2
- data/features/step_definitions/flyboy_tasks_steps.rb +2 -3
- data/features/step_definitions/tasks_summary_steps.rb +3 -3
- data/lib/dorsale/active_record_comma_type_cast.rb +12 -0
- data/lib/dorsale/core_and_rails_ext.rb +3 -0
- data/lib/dorsale/engine.rb +6 -10
- data/lib/dorsale/form_back_url.rb +3 -1
- data/lib/dorsale/version.rb +1 -1
- data/spec/controllers/dorsale/billing_machine/invoices_controller_spec.rb +4 -1
- data/spec/controllers/dorsale/flyboy/tasks_controller_spec.rb +7 -30
- data/spec/factories/flyboy_tasks.rb +0 -2
- data/spec/helpers/dorsale/flyboy/application_helper_spec.rb +0 -64
- data/spec/helpers/dorsale/sorting_helper_spec.rb +74 -0
- data/spec/libs/{active_record_comma_type_cast_spec.rb → dorsale/active_record_comma_type_cast_spec.rb} +1 -1
- data/spec/libs/dorsale/polymorphic_id_spec.rb +8 -7
- data/spec/models/{dorsale → concerns/dorsale}/model_i18n_spec.rb +0 -0
- data/spec/models/dorsale/expense_gun/expense_spec.rb +19 -19
- data/spec/models/dorsale/flyboy/task_spec.rb +2 -1
- data/spec/pdfs/dorsale/billing_machine/invoice_multiple_vat_pdf_spec.rb +18 -13
- data/spec/pdfs/dorsale/billing_machine/invoice_single_vat_pdf_spec.rb +18 -13
- data/spec/pdfs/dorsale/billing_machine/quotation_multiple_vat_pdf_spec.rb +18 -13
- data/spec/pdfs/dorsale/billing_machine/quotation_single_vat_pdf_spec.rb +25 -19
- data/spec/services/dorsale/expense_gun/expense/copy_spec.rb +1 -1
- metadata +21 -52
- data/app/controllers/dorsale/flyboy/folders_controller.rb +0 -140
- data/app/filters/dorsale/flyboy/small_data/filter_for_folders.rb +0 -5
- data/app/filters/dorsale/flyboy/small_data/filter_strategy_by_status.rb +0 -9
- data/app/models/dorsale/flyboy/folder.rb +0 -72
- data/app/policies/dorsale/flyboy/folder_policy_helper.rb +0 -26
- data/app/views/dorsale/flyboy/folders/_context.html.slim +0 -18
- data/app/views/dorsale/flyboy/folders/_context_actions.html.slim +0 -10
- data/app/views/dorsale/flyboy/folders/_form.html.slim +0 -17
- data/app/views/dorsale/flyboy/folders/_index_actions.html.slim +0 -2
- data/app/views/dorsale/flyboy/folders/_list.html.slim +0 -41
- data/app/views/dorsale/flyboy/folders/edit.html.slim +0 -8
- data/app/views/dorsale/flyboy/folders/index.html.slim +0 -22
- data/app/views/dorsale/flyboy/folders/new.html.slim +0 -2
- data/app/views/dorsale/flyboy/folders/show.html.slim +0 -14
- data/features/flyboy_folders.feature +0 -109
- data/features/step_definitions/flyboy_folders_steps.rb +0 -170
- data/lib/active_record_comma_type_cast.rb +0 -12
- data/lib/dorsale/alexandrie/prawn.rb +0 -17
- data/lib/dorsale/model_i18n.rb +0 -30
- data/lib/dorsale/model_to_s.rb +0 -13
- data/lib/dorsale/search.rb +0 -34
- data/spec/controllers/dorsale/flyboy/folders_controller_spec.rb +0 -113
- data/spec/factories/flyboy_folders.rb +0 -7
- data/spec/models/dorsale/flyboy/folder_spec.rb +0 -103
- 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.
|
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),
|
@@ -176,9 +176,9 @@ en:
|
|
176
176
|
tomorrow: "Tomorrow"
|
177
177
|
today: "Today"
|
178
178
|
yesterday: "Yesterday"
|
179
|
-
this_week: "This
|
180
|
-
this_month: "This
|
181
|
-
this_year: "This
|
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
|
6
|
-
updated
|
7
|
-
|
8
|
-
accepted
|
9
|
-
refused
|
10
|
-
canceled
|
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
|
65
|
-
|
66
|
-
|
67
|
-
accepted
|
68
|
-
refused
|
69
|
-
canceled
|
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/
|
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/
|
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"
|
data/config/routes.rb
CHANGED
@@ -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,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 "
|
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
|
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
|
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
|
@@ -4,11 +4,10 @@ Feature: Manage tasks
|
|
4
4
|
Given an authenticated user
|
5
5
|
|
6
6
|
Scenario: Create a task
|
7
|
-
|
8
|
-
When I consult this folder
|
7
|
+
When I go to the tasks section
|
9
8
|
And I create a task
|
10
|
-
Then
|
11
|
-
And the
|
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
|
@@ -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
|
94
|
-
@expense.update_columns(state: "
|
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
|
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("
|
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,
|
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,
|
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,
|
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)
|
data/lib/dorsale/engine.rb
CHANGED
@@ -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
|
-
|
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
|
-
|
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)
|