newsletter 3.0.2 → 3.2.0
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.
- checksums.yaml +5 -13
- data/.gitignore +6 -0
- data/.ruby-version +1 -1
- data/Gemfile +17 -5
- data/README.md +40 -0
- data/app/assets/images/newsletter/BottomRight.gif +0 -0
- data/app/assets/images/newsletter/MidRight.gif +0 -0
- data/app/assets/images/newsletter/TopCenter.gif +0 -0
- data/app/assets/images/newsletter/TopRight.gif +0 -0
- data/app/assets/images/newsletter/calendar_date_select/calendar.gif +0 -0
- data/app/assets/images/newsletter/iReach_logo.gif +0 -0
- data/app/assets/images/newsletter/spacer.gif +0 -0
- data/app/assets/images/newsletter/topMid.gif +0 -0
- data/app/assets/javascripts/newsletter/application.js +6 -0
- data/app/assets/stylesheets/newsletter/admin.css +261 -0
- data/app/assets/stylesheets/newsletter/application.css +3 -1
- data/app/assets/stylesheets/newsletter/nav.css +68 -0
- data/app/assets/stylesheets/newsletter/timepicker.css +54 -0
- data/app/controllers/newsletter/application_controller.rb +5 -26
- data/app/controllers/newsletter/areas_controller.rb +0 -38
- data/app/controllers/newsletter/designs_controller.rb +5 -2
- data/app/controllers/newsletter/elements_controller.rb +7 -7
- data/app/controllers/newsletter/fields_controller.rb +1 -46
- data/app/controllers/newsletter/newsletters_controller.rb +6 -24
- data/app/controllers/newsletter/pieces_controller.rb +8 -21
- data/app/helpers/newsletter/designs_helper.rb +1 -8
- data/app/helpers/newsletter/layout_helper.rb +43 -0
- data/app/helpers/newsletter/newsletters_helper.rb +9 -5
- data/app/models/newsletter/area.rb +1 -4
- data/app/models/newsletter/asset.rb +7 -1
- data/app/models/newsletter/design.rb +48 -34
- data/app/models/newsletter/element.rb +0 -42
- data/app/models/newsletter/field.rb +7 -10
- data/app/models/newsletter/field/inline_asset.rb +15 -2
- data/app/models/newsletter/newsletter.rb +18 -11
- data/app/models/newsletter/piece.rb +20 -24
- data/app/views/layouts/newsletter/application.html.erb +20 -116
- data/app/views/layouts/newsletter/layout.html.erb +15 -0
- data/app/views/newsletter/areas/_area.html.erb +1 -1
- data/app/views/newsletter/designs/_area_fields.html.erb +1 -1
- data/app/views/newsletter/designs/_form.html.erb +11 -29
- data/app/views/newsletter/designs/_newsletter_area.html.erb +2 -2
- data/app/views/newsletter/designs/edit.html.erb +3 -6
- data/app/views/newsletter/designs/index.html.erb +7 -6
- data/app/views/newsletter/designs/new.html.erb +2 -2
- data/app/views/newsletter/designs/show.html.erb +5 -5
- data/app/views/newsletter/elements/_field_fields.html.erb +12 -25
- data/app/views/newsletter/elements/_form.html.erb +38 -34
- data/app/views/newsletter/elements/edit.html.erb +2 -5
- data/app/views/newsletter/elements/index.html.erb +7 -7
- data/app/views/newsletter/elements/new.html.erb +2 -2
- data/app/views/newsletter/elements/show.html.erb +5 -5
- data/app/views/newsletter/fields/_inline_asset.html.erb +12 -32
- data/app/views/newsletter/fields/_text.html.erb +2 -4
- data/app/views/newsletter/fields/_text_area.html.erb +2 -7
- data/app/views/newsletter/newsletters/_form.html.erb +6 -16
- data/app/views/newsletter/newsletters/_head.html.erb +2 -3
- data/app/views/newsletter/newsletters/_newsletter.html.erb +11 -6
- data/app/views/newsletter/newsletters/archive.html.erb +1 -1
- data/app/views/newsletter/newsletters/edit.html.erb +8 -16
- data/app/views/newsletter/newsletters/index.html.erb +7 -7
- data/app/views/newsletter/newsletters/new.html.erb +2 -2
- data/app/views/newsletter/newsletters/show.html.erb +11 -6
- data/app/views/newsletter/pieces/_form.html.erb +1 -8
- data/app/views/newsletter/pieces/edit.html.erb +2 -4
- data/app/views/newsletter/pieces/new.html.erb +3 -5
- data/config/locales/newsletters.en.yml +27 -0
- data/config/routes.rb +4 -4
- data/designs/exports/Example.yml +202 -0
- data/designs/exports/example-export.yaml +481 -87
- data/lib/deleteable.rb +12 -14
- data/lib/newsletter/engine.rb +112 -6
- data/lib/newsletter/version.rb +1 -1
- data/lib/tasks/newsletter.rake +54 -41
- data/newsletter.gemspec +3 -1
- data/spec/test_app/.rspec +2 -0
- data/spec/test_app/app/controllers/application_controller.rb +5 -0
- data/spec/test_app/app/models/ability.rb +8 -0
- data/spec/test_app/app/models/user.rb +10 -0
- data/spec/test_app/app/views/layouts/application.html.erb +3 -1
- data/spec/test_app/config/database.postgres.yml +21 -0
- data/spec/test_app/config/initializers/carrierwave.rb +23 -0
- data/spec/test_app/config/newsletter.yml +6 -3
- data/spec/test_app/config/routes.rb +1 -2
- data/spec/test_app/db/migrate/20131222171230_create_users.rb +13 -0
- data/spec/test_app/db/schema.rb +13 -2
- data/spec/test_app/features/newsletter_management.feature +39 -0
- data/spec/test_app/features/piece_management.feature +20 -0
- data/spec/test_app/features/step_definitions/debugging_steps.rb +3 -0
- data/spec/test_app/features/step_definitions/design_steps.rb +3 -0
- data/spec/test_app/features/step_definitions/login_steps.rb +4 -0
- data/spec/test_app/features/step_definitions/newsletter_steps.rb +24 -0
- data/spec/test_app/features/step_definitions/piece_steps.rb +26 -0
- data/{features → spec/test_app/features}/step_definitions/webrat_steps.rb +10 -6
- data/spec/test_app/features/support/env.rb +36 -0
- data/spec/test_app/features/support/functions.rb +3 -0
- data/{features → spec/test_app/features}/support/paths.rb +10 -1
- data/spec/test_app/lib/debugging.rb +61 -0
- data/spec/test_app/script/full_suite +44 -0
- data/spec/test_app/script/rspec_multi_db +26 -0
- data/spec/test_app/spec/controllers/newsletter/pieces_controller_spec.rb +175 -0
- data/spec/test_app/spec/factories/_functions.rb +19 -0
- data/spec/test_app/spec/factories/assets.rb +8 -0
- data/spec/test_app/spec/factories/designs.rb +1 -1
- data/spec/test_app/spec/factories/newsletters.rb +68 -6
- data/spec/test_app/spec/factories/pieces.rb +8 -0
- data/spec/test_app/spec/factories/users.rb +13 -0
- data/spec/test_app/spec/features/newsletter/design_spec.rb +175 -0
- data/spec/test_app/spec/features/newsletter/element_spec.rb +53 -0
- data/spec/test_app/spec/features/newsletter/newsletter_spec.rb +99 -3
- data/spec/test_app/spec/helpers/newsletter/newsletters_helper_spec.rb +65 -0
- data/spec/test_app/spec/models/newsletter/asset_spec.rb +23 -0
- data/spec/test_app/spec/models/newsletter/design_spec.rb +23 -2
- data/spec/test_app/spec/models/newsletter/element_spec.rb +4 -0
- data/spec/test_app/spec/models/newsletter/inline_asset_spec.rb +43 -0
- data/spec/test_app/spec/models/newsletter/newsletter_spec.rb +102 -2
- data/spec/test_app/spec/models/newsletter/piece_spec.rb +33 -0
- data/spec/test_app/spec/rails_helper.rb +82 -0
- data/spec/test_app/spec/routing/newsletter/pieces_routing_spec.rb +28 -0
- data/spec/test_app/spec/spec_helper.rb +73 -64
- data/spec/test_app/spec/support/carrierwave.rb +7 -0
- data/spec/test_app/spec/support/continuances.rb +18 -0
- data/spec/test_app/spec/support/files/iReach_logo.gif +0 -0
- data/spec/test_app/spec/support/files/test.pdf +0 -0
- data/spec/test_app/spec/support/functions.rb +3 -0
- metadata +145 -726
- data/README +0 -243
- data/README.rdoc +0 -3
- data/app/views/newsletter/elements/_newsletter_field.html.erb +0 -37
- data/features/support/env.rb +0 -17
- data/lib/tasks/newsletter_tasks.rake +0 -4
- data/lib/tasks/rspec.rake +0 -158
- data/spec/spec_helper.rb +0 -55
- data/spec/test_app/db/structure.sql +0 -12
- data/spec/test_app/newsletters/designs/My_Design/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/My_Design/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/My_Design/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/My_Design/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/My_Design/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/My_Design/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/My_Design/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/Testo_Changeo/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/Testo_Changeo/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/empower_innovative_e-business/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/empower_innovative_e-business/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/empower_innovative_e-business/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/empower_innovative_e-business/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/empower_innovative_e-business/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/empower_innovative_e-business/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/empower_innovative_e-business/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/enable_extensible_systems/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/enable_extensible_systems/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/enable_extensible_systems/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/enable_extensible_systems/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/enable_extensible_systems/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/enable_extensible_systems/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/enable_extensible_systems/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/engage_innovative_schemas/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/engage_innovative_schemas/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/engage_innovative_schemas/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/engage_innovative_schemas/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/engage_innovative_schemas/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/engage_innovative_schemas/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/engage_innovative_schemas/layout.html.erb +0 -67
- data/spec/test_app/newsletters/designs/envisioneer_seamless_ROI/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/envisioneer_seamless_ROI/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/envisioneer_seamless_ROI/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/envisioneer_seamless_ROI/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/envisioneer_seamless_ROI/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/envisioneer_seamless_ROI/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/envisioneer_seamless_ROI/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/harness_integrated_partnerships/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/harness_integrated_partnerships/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/harness_integrated_partnerships/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/harness_integrated_partnerships/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/harness_integrated_partnerships/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/harness_integrated_partnerships/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/harness_integrated_partnerships/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/innovate_24_365_functionalities/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/innovate_24_365_functionalities/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/innovate_24_365_functionalities/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/innovate_24_365_functionalities/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/innovate_24_365_functionalities/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/innovate_24_365_functionalities/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/innovate_24_365_functionalities/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/integrate_mission-critical_systems/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/integrate_mission-critical_systems/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/iterate_real-time_web-readiness/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/iterate_real-time_web-readiness/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/iterate_real-time_web-readiness/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/iterate_real-time_web-readiness/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/iterate_real-time_web-readiness/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/iterate_real-time_web-readiness/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/iterate_real-time_web-readiness/layout.html.erb +0 -67
- data/spec/test_app/newsletters/designs/iterate_strategic_architectures/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/iterate_strategic_architectures/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/iterate_strategic_architectures/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/iterate_strategic_architectures/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/iterate_strategic_architectures/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/iterate_strategic_architectures/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/iterate_strategic_architectures/layout.html.erb +0 -67
- data/spec/test_app/newsletters/designs/orchestrate_sticky_communities/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/orchestrate_sticky_communities/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/orchestrate_sticky_communities/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/orchestrate_sticky_communities/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/orchestrate_sticky_communities/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/orchestrate_sticky_communities/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/orchestrate_sticky_communities/layout.html.erb +0 -67
- data/spec/test_app/newsletters/designs/repurpose_impactful_partnerships/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/repurpose_impactful_partnerships/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/repurpose_impactful_partnerships/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/repurpose_impactful_partnerships/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/repurpose_impactful_partnerships/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/repurpose_impactful_partnerships/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/repurpose_impactful_partnerships/layout.html.erb +0 -67
- data/spec/test_app/newsletters/designs/revolutionize_robust_partnerships/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/revolutionize_robust_partnerships/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/revolutionize_robust_partnerships/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/revolutionize_robust_partnerships/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/revolutionize_robust_partnerships/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/revolutionize_robust_partnerships/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/revolutionize_robust_partnerships/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/revolutionize_turn-key_bandwidth/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/revolutionize_turn-key_bandwidth/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/revolutionize_turn-key_bandwidth/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/revolutionize_turn-key_bandwidth/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/revolutionize_turn-key_bandwidth/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/revolutionize_turn-key_bandwidth/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/revolutionize_turn-key_bandwidth/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/scale_ubiquitous_synergies/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/scale_ubiquitous_synergies/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/scale_ubiquitous_synergies/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/scale_ubiquitous_synergies/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/scale_ubiquitous_synergies/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/scale_ubiquitous_synergies/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/scale_ubiquitous_synergies/layout.html.erb +0 -67
- data/spec/test_app/newsletters/designs/syndicate_visionary_metrics/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/syndicate_visionary_metrics/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/syndicate_visionary_metrics/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/syndicate_visionary_metrics/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/syndicate_visionary_metrics/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/syndicate_visionary_metrics/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/syndicate_visionary_metrics/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/target_enterprise_functionalities/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/target_enterprise_functionalities/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/target_enterprise_functionalities/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/target_enterprise_functionalities/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/target_enterprise_functionalities/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/target_enterprise_functionalities/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/target_enterprise_functionalities/layout.html.erb +0 -67
- data/spec/test_app/newsletters/designs/transition_enterprise_systems/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/transition_enterprise_systems/layout.html.erb +0 -66
- data/spec/test_app/newsletters/designs/utilize_one-to-one_schemas/elements/_left_column_article.html.erb +0 -10
- data/spec/test_app/newsletters/designs/utilize_one-to-one_schemas/elements/_left_column_image.html.erb +0 -2
- data/spec/test_app/newsletters/designs/utilize_one-to-one_schemas/elements/_right_column_article.html.erb +0 -5
- data/spec/test_app/newsletters/designs/utilize_one-to-one_schemas/elements/_right_column_headline.html.erb +0 -1
- data/spec/test_app/newsletters/designs/utilize_one-to-one_schemas/elements/_right_column_image.html.erb +0 -1
- data/spec/test_app/newsletters/designs/utilize_one-to-one_schemas/elements/_right_column_paragraph.html.erb +0 -3
- data/spec/test_app/newsletters/designs/utilize_one-to-one_schemas/layout.html.erb +0 -66
@@ -3,110 +3,25 @@
|
|
3
3
|
<head>
|
4
4
|
<!-- iReach template -->
|
5
5
|
<title><%= h(yield(:title) || "iReach Newsletter Manager") %></title>
|
6
|
-
|
7
|
-
<
|
8
|
-
|
9
|
-
<script src="/javascripts/jquery-ui-1.10.3.custom.js" type="text/javascript"></script>
|
6
|
+
<%= stylesheet_link_tag "newsletter/application", :media => "all" %>
|
7
|
+
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/le-frog/jquery-ui.css" media="screen" rel="stylesheet" type="text/css" />
|
8
|
+
<%= javascript_include_tag "newsletter/application" %>
|
10
9
|
<%= csrf_meta_tags %>
|
11
|
-
|
12
|
-
<link href="/stylesheets/nav.css" media="screen" rel="stylesheet" type="text/css" />
|
13
|
-
<link href="/stylesheets/admin.css" media="screen" rel="stylesheet" type="text/css" />
|
14
|
-
|
15
|
-
<% begin %>
|
16
|
-
<% if admin_nav_menu.present? %>
|
17
|
-
<script>
|
18
|
-
function showMenu(id, id2) {
|
19
|
-
<% for menuitem in admin_nav_menu %>
|
20
|
-
<% if menuitem.admin_menu && menuitem.admin_menu.length > 0 && menuitem.is_visible %>
|
21
|
-
elem = document.getElementById("menu_<%= menuitem.id %>")
|
22
|
-
if (elem) elem.style.display = "none";
|
23
|
-
<% for submenuitem in menuitem.admin_menu.order("menu_order ASC") %>
|
24
|
-
<% if submenuitem.admin_menu && submenuitem.admin_menu.length > 0 && submenuitem.is_visible %>
|
25
|
-
elem = document.getElementById("menu_<%= submenuitem.id %>")
|
26
|
-
if (elem) elem.style.display = "none";
|
27
|
-
<% end %>
|
28
|
-
<% end %>
|
29
|
-
<% end %>
|
30
|
-
<% end %>
|
31
|
-
document.getElementById("menu_"+id).style.display = "inline";
|
32
|
-
if (id2) document.getElementById("menu_"+id2).style.display = "inline";
|
33
|
-
}
|
34
|
-
</script>
|
35
|
-
<% end %>
|
36
|
-
<% rescue => e %>
|
37
|
-
<!-- Error building JS Menu <%= e.message %> <%= e.backtrace.join("\n") %> -->
|
38
|
-
<% end %>
|
39
|
-
|
40
|
-
<%= content_for :head %>
|
10
|
+
<%= yield :head %>
|
41
11
|
</head>
|
42
|
-
<
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
<
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
</
|
53
|
-
|
54
|
-
|
55
|
-
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
56
|
-
|
57
|
-
<tr>
|
58
|
-
<td valign="top" bgcolor="#FFFFFF">
|
59
|
-
<table border="0" cellspacing="0" cellpadding="0" class="menu">
|
60
|
-
<tr>
|
61
|
-
<td valign="top"><img src="/images/menuMainLeft.gif" width="7" height="257" /></td>
|
62
|
-
<td valign="top" class="table-bk">
|
63
|
-
<!-- Start Admin Menu <%= @admin_nav_menu.inspect %> -->
|
64
|
-
<% begin %>
|
65
|
-
<% if admin_nav_menu.present? %>
|
66
|
-
<% for menuitem in admin_nav_menu %>
|
67
|
-
<% if menuitem.admin_menu && menuitem.admin_menu.length > 0 && menuitem.is_visible && menuitem.authorized(session[:admin][:user_id]) %>
|
68
|
-
<span class="category" onClick="javascript:showMenu(<%= menuitem.id %>, 0)" style="cursor:pointer"><%= menuitem.description %></span><br/>
|
69
|
-
<div id="menu_<%= menuitem.id %>" style="display:<%= (params[:menu_id].to_i == menuitem.id) ? 'inline' : 'none' %>">
|
70
|
-
<% for submenuitem in menuitem.admin_menu %>
|
71
|
-
<% if submenuitem.is_visible and submenuitem.authorized(session[:admin][:user_id]) %>
|
72
|
-
<% if submenuitem.admin_menu && submenuitem.admin_menu.length > 0 && submenuitem.is_visible && submenuitem.authorized(session[:admin][:user_id]) %>
|
73
|
-
<span class="menuSM" onClick="javascript:showMenu(<%= menuitem.id %>, <%= submenuitem.id %>)" style="cursor:pointer"><%= submenuitem.description %></span><br/>
|
74
|
-
<div id="menu_<%= submenuitem.id %>" style="display:<%= (params[:submenu_id].to_i == submenuitem.id) ? 'inline' : 'none' %>">
|
75
|
-
<% for subsubmenuitem in submenuitem.admin_menu %>
|
76
|
-
<% if subsubmenuitem.is_visible and subsubmenuitem.authorized(session[:admin][:user_id]) %>
|
77
|
-
<span class="menuSM"><%= link_to menuitem.description, "/#{submenuitem.path}?menu_id=#{submenuitem.id}" %></span><br/>
|
78
|
-
<% end %>
|
79
|
-
<% end %>
|
80
|
-
</div>
|
81
|
-
<% elsif submenuitem.is_visible and submenuitem.authorized(session[:admin][:user_id]) %>
|
82
|
-
<span class="menuSM"><%= link_to submenuitem.description, "/#{submenuitem.path}?menu_id=#{menuitem.id}" %></span><br/>
|
83
|
-
<% end %>
|
84
|
-
<% end %>
|
85
|
-
<% end %>
|
86
|
-
</div>
|
87
|
-
<hr class="line" />
|
88
|
-
<% elsif menuitem.is_visible and menuitem.authorized(session[:admin][:user_id]) %>
|
89
|
-
<%= link_to menuitem.description, "/#{menuitem.path}" %><br/>
|
90
|
-
<hr class="line" />
|
91
|
-
<% end %>
|
92
|
-
<% end %>
|
93
|
-
<% end %>
|
94
|
-
<% rescue => e %>
|
95
|
-
<!-- Error building Menu <%= e.message %> <%= e.backtrace.join("\n") %> -->
|
96
|
-
<% end %>
|
97
|
-
</td>
|
98
|
-
</tr>
|
99
|
-
<tr>
|
100
|
-
<td><img src="/images/menuBotLeft.gif" width="7" height="8" /></td>
|
101
|
-
<td><img src="/images/menuBot.gif" width="176" height="8" /></td></tr>
|
102
|
-
</table>
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
</td>
|
108
|
-
<td width="100%" valign="top" bgcolor="#FFFFFF" class="main">
|
109
|
-
|
12
|
+
<div id="top"><%= image_tag "newsletter/iReach_logo.gif", width: "269", height:"85", style: "float: left;" %><%= image_tag "newsletter/TopCenter.gif", width: "435", height: "85", style: "float: left;" %><%= image_tag "newsletter/TopRight.gif", width: "62", height: "85", style: "float: right;" %> </div>
|
13
|
+
<div style="background-color: #fff;">
|
14
|
+
<div id="menu">
|
15
|
+
<ul>
|
16
|
+
<li><span onClick="$('#setup_submenu').toggle();return false">Setup</span>
|
17
|
+
<ul id='setup_submenu' <%= ' style="display:none"'.html_safe unless request.path =~ %r#/newsletter/designs|setup# %>>
|
18
|
+
<%= content_tag(:li, link_to('Newsletter Designs', news.designs_path)) if can?(:manage, Newsletter::Design) %>
|
19
|
+
</ul>
|
20
|
+
</li>
|
21
|
+
<%= content_tag(:li, link_to('Newsletters', news.newsletters_path)) if can?(:manage, Newsletter::Newsletter) %>
|
22
|
+
</ul>
|
23
|
+
</div>
|
24
|
+
<div id="page_content">
|
110
25
|
<% flash.each do |name, msg| -%>
|
111
26
|
<%= content_tag :div, msg, :id => "flash_#{name}" %>
|
112
27
|
<% end -%>
|
@@ -114,22 +29,11 @@
|
|
114
29
|
<% if show_title? -%>
|
115
30
|
<h1><%=h yield(:title) %></h1>
|
116
31
|
<% end -%>
|
117
|
-
|
118
32
|
<%= yield %>
|
119
33
|
|
120
34
|
<%= yield :page_navigation %>
|
121
|
-
</
|
122
|
-
|
123
|
-
|
124
|
-
</tr>
|
125
|
-
</table>
|
126
|
-
|
127
|
-
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
128
|
-
<tr>
|
129
|
-
<td width="100%" background="/images/1botMid.gif"><img src="/images/1botMid.gif" width="13" height="39" /></td>
|
130
|
-
<td align="right"><img src="/images/1botRight.gif" width="62" height="39" /></td>
|
131
|
-
</tr>
|
132
|
-
</table>
|
133
|
-
|
35
|
+
</div>
|
36
|
+
</div>
|
37
|
+
<%= image_tag "newsletter/BottomRight.gif", width: "62", height: "85", style: "float: right;" %>
|
134
38
|
</body>
|
135
39
|
</html>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang='en'>
|
3
|
+
<head>
|
4
|
+
<title>IReach Newsletter Archive</title>
|
5
|
+
</head>
|
6
|
+
<body>
|
7
|
+
<div id="top"><%= image_tag "mail_manager/iReach_logo.gif", width: "269", height:"85" %></div>
|
8
|
+
<div id="page_content">
|
9
|
+
<% flash.each do |name, msg| -%>
|
10
|
+
<%= content_tag :div, msg, :id => "flash_#{name}" %>
|
11
|
+
<% end -%>
|
12
|
+
<%= yield %>
|
13
|
+
</div>
|
14
|
+
</body>
|
15
|
+
</html>
|
@@ -14,7 +14,7 @@
|
|
14
14
|
:style => "position: relative;"} do %>
|
15
15
|
<!--Element Template - <%= piece.element.view_path %> -->
|
16
16
|
<%= content_tag :div, link_to("Delete", piece, :confirm => 'Are you sure?',
|
17
|
-
:method => :delete, :class=> "delete_link") +
|
17
|
+
:method => :delete, :class=> "delete_link", :target => '_top') +
|
18
18
|
" | " +
|
19
19
|
link_to("Edit", edit_piece_path(piece), :target => '_top', :class=> "edit_link"),
|
20
20
|
:id=>"modify_piece_#{piece.id}",:style => "display:none", :class => "piece_tool" %>
|
@@ -1,41 +1,23 @@
|
|
1
1
|
<%= nested_form_for @design do |f| %>
|
2
2
|
<%= f.error_messages %>
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
</tr>
|
8
|
-
<tr>
|
9
|
-
<td width='150'><%= f.label :description %></td>
|
10
|
-
<td><%= f.text_field :description %></td>
|
11
|
-
</tr>
|
3
|
+
<%= f.label :name %>
|
4
|
+
<%= f.text_field :name %><br />
|
5
|
+
<%= f.label :description %>
|
6
|
+
<%= f.text_field :description %><br />
|
12
7
|
<% unless @design.name.blank? %>
|
13
|
-
|
14
|
-
|
15
|
-
<td><%= @design.view_path.gsub(/^#{::Newsletter.designs_path}/,'') %></td>
|
16
|
-
</tr>
|
8
|
+
<label>Design Filename</label>
|
9
|
+
<div style="padding-top: 9px;"><%= @design.view_path.gsub(/^#{::Newsletter.designs_path}/,'') %></div><br />
|
17
10
|
<% end %>
|
18
|
-
|
19
|
-
|
20
|
-
<td><%= f.text_area :html_text %></td>
|
21
|
-
</tr>
|
22
|
-
<tr valign='top'>
|
23
|
-
<td colspan='2'>
|
11
|
+
<%= f.label :html_text %>
|
12
|
+
<%= f.text_area :html_text %><br />
|
24
13
|
<div class='newsletter_parts_group'>
|
25
14
|
<h2 style='padding-bottom: 0; margin-bottom: 0; font-size: 10pt; '>Areas</h2>
|
15
|
+
The HTML code field above should contain <%= render [your_area_name] %> for each area you create.<br/>
|
26
16
|
<div id="areas">
|
27
17
|
<%= f.fields_for :areas %>
|
28
18
|
</div>
|
29
|
-
<%= f.link_to_add('Add Area', :areas, {class: 'button'})
|
19
|
+
<%= f.link_to_add('Add Area', :areas, {class: 'button'}) %>
|
30
20
|
</div>
|
31
|
-
|
32
|
-
</tr>
|
33
|
-
<tr>
|
34
|
-
<td align="right" colspan="2"><%= f.submit "Submit", :class => 'button' %><div class="buttonEnding"></div></td>
|
35
|
-
</tr>
|
36
|
-
</table>
|
21
|
+
<div class="submit_button"><%= f.submit "Submit", :class => 'button' %></div>
|
37
22
|
|
38
23
|
<% end %>
|
39
|
-
<% content_for :head do %>
|
40
|
-
<%= javascript_include_tag '/javascripts/nested_form.js' %>
|
41
|
-
<% end %>
|
@@ -2,14 +2,14 @@
|
|
2
2
|
<% fields_for 'design[area_attributes][]', area do |naf| %>
|
3
3
|
<%= naf.text_field :name, :index => nil %>
|
4
4
|
<% if area.new_record? %>
|
5
|
-
<%= link_to_function "Remove", "$(this).up('.area').remove()", :class => 'button' %><
|
5
|
+
<%= link_to_function "Remove", "$(this).up('.area').remove()", :class => 'button' %><br/>
|
6
6
|
<% else %>
|
7
7
|
<%= link_to_function "Remove", "$(this).next('.should_destroy').value = 1; $(this).hide();"+
|
8
8
|
"$('area_restore_#{area.id}').show()", :class => 'button',
|
9
9
|
:id => "area_remove_#{area.id}" %>
|
10
10
|
<%= link_to_function "Restore", "$(this).next('.should_destroy').value = 0; $(this).hide();"+
|
11
11
|
"$('area_remove_#{area.id}').show()", :class => 'button',
|
12
|
-
:id => "area_restore_#{area.id}", :style => 'display:none' %><
|
12
|
+
:id => "area_restore_#{area.id}", :style => 'display:none' %><br/>
|
13
13
|
<%= naf.hidden_field :id, :index => nil %>
|
14
14
|
<%= naf.hidden_field :should_destroy, :index => nil, :class => 'should_destroy' %>
|
15
15
|
<% end %>
|
@@ -1,14 +1,11 @@
|
|
1
|
-
|
1
|
+
<%= title "Edit Design" %>
|
2
2
|
|
3
3
|
<%= render :partial => 'form' %>
|
4
4
|
|
5
5
|
<%= content_for :page_navigation do %>
|
6
6
|
<div>
|
7
|
-
|
8
|
-
<%= link_to "Show", @design, :class => 'button' %><div class="linkbuttonEnding"></div>
|
9
|
-
<% end %>
|
10
|
-
<%= link_to "View All", designs_path, :class => 'button' %><div class="linkbuttonEnding"></div>
|
7
|
+
<%= link_to "View All", designs_path, :class => 'button' %>
|
11
8
|
<%= link_to 'Manage Elements', design_elements_path(@design),
|
12
|
-
:class => 'button'
|
9
|
+
:class => 'button' %>
|
13
10
|
</div>
|
14
11
|
<% end %>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
<%= title "Designs" %>
|
2
2
|
|
3
3
|
<table class="list" cellpadding="1" cellspacing="0">
|
4
4
|
<tr class="title">
|
@@ -11,14 +11,14 @@
|
|
11
11
|
<% end %>
|
12
12
|
</tr>
|
13
13
|
<% for design in @designs %>
|
14
|
-
<tr class="<%= cycle('odd','even') %>">
|
14
|
+
<tr class="<%= cycle('odd','even') %>" id="design_<%= design.id %>">
|
15
15
|
<td><%=h design.name %></td>
|
16
16
|
<td><%=h design.description %></td>
|
17
17
|
<% if::Newsletter.use_show_for_resources %>
|
18
|
-
<td><%= link_to "View", design, :class => 'button'
|
18
|
+
<td><%= link_to "View", design, :class => 'button' %></td>
|
19
19
|
<% end %>
|
20
|
-
<td><%= link_to "Edit", edit_design_path(design), :class => 'button'
|
21
|
-
<td><%= link_to "Delete", design, :confirm => 'Are you sure?', :method => :delete, :class => 'button'
|
20
|
+
<td><%= link_to "Edit", edit_design_path(design), :class => 'button' %></td>
|
21
|
+
<td><%= link_to "Delete", design, :confirm => 'Are you sure?', :method => :delete, :class => 'button' %></td>
|
22
22
|
</tr>
|
23
23
|
<% end %>
|
24
24
|
</table>
|
@@ -26,6 +26,7 @@
|
|
26
26
|
|
27
27
|
<%= content_for :page_navigation do %>
|
28
28
|
<div>
|
29
|
-
<%=
|
29
|
+
<%= will_paginate @designs %>
|
30
|
+
<%= link_to "New Design", new_design_path, :class => 'button' %>
|
30
31
|
</div>
|
31
32
|
<% end %>
|
@@ -1,9 +1,9 @@
|
|
1
|
-
|
1
|
+
<%= title "New Design" %>
|
2
2
|
|
3
3
|
<%= render :partial => 'form' %>
|
4
4
|
|
5
5
|
<%= content_for :page_navigation do %>
|
6
6
|
<div>
|
7
|
-
<%= link_to "Back to List", designs_path, :class => 'button'
|
7
|
+
<%= link_to "Back to List", designs_path, :class => 'button' %>
|
8
8
|
</div>
|
9
9
|
<% end %>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
<%= title "Element" %>
|
2
2
|
|
3
3
|
<p>
|
4
4
|
<strong>Name:</strong>
|
@@ -15,8 +15,8 @@
|
|
15
15
|
|
16
16
|
<%= content_for :page_navigation do %>
|
17
17
|
<div>
|
18
|
-
<%= link_to "Edit", edit_element_path(@element), :class => 'button'
|
19
|
-
<%= link_to "Delete", @element, :confirm => 'Are you sure?', :method => :delete, :class => 'button'
|
20
|
-
<%= link_to "View All", design_elements_path(@design), :class => 'button'
|
18
|
+
<%= link_to "Edit", edit_element_path(@element), :class => 'button' %>
|
19
|
+
<%= link_to "Delete", @element, :confirm => 'Are you sure?', :method => :delete, :class => 'button' %>
|
20
|
+
<%= link_to "View All", design_elements_path(@design), :class => 'button' %>
|
21
21
|
</div>
|
22
|
-
<% end %>
|
22
|
+
<% end %>
|
@@ -1,27 +1,14 @@
|
|
1
1
|
<%= div_for f.object do %>
|
2
|
-
<table border="0" cellpadding="1" cellspacing="0">
|
3
2
|
<%= f.error_messages %>
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
<tr vlalign="top">
|
17
|
-
<td width="150"><%= f.label :type %></td>
|
18
|
-
<td><%= f.select :type, options_for_select(@field_types.collect{|type| [type.gsub(/Newsletter::Field::/,'').humanize,type]}, f.object.class.name) %></td>
|
19
|
-
</tr>
|
20
|
-
<tr vlalign="top">
|
21
|
-
<td align="right" colspan="2">
|
22
|
-
<%= f.link_to_remove "Remove", {class: 'button'} %><div class='linkbuttonEnding'>
|
23
|
-
<br/><br/><hr/>
|
24
|
-
</td>
|
25
|
-
</tr>
|
26
|
-
</table>
|
27
|
-
<% end %>
|
3
|
+
<%= f.label :name %>
|
4
|
+
<%= f.text_field :name%><br />
|
5
|
+
<%= f.label :label %>
|
6
|
+
<%= f.text_field :label %><br />
|
7
|
+
<%= f.label :description %>
|
8
|
+
<%= f.text_field :description %><br />
|
9
|
+
<%= f.label :type %>
|
10
|
+
<%= f.select :type, options_for_select(@field_types.collect{|type| [type.gsub(/Newsletter::Field::/,'').humanize,type]}, f.object.class.name) %>
|
11
|
+
<%= f.hidden_field :sequence, {class: 'sequence'} %>
|
12
|
+
<%= f.link_to_remove "Remove", {class: 'button', style: 'margin-left: 130px;'} %>
|
13
|
+
<hr>
|
14
|
+
<% end %>
|
@@ -1,51 +1,55 @@
|
|
1
1
|
<%= nested_form_for @element do |f| %>
|
2
2
|
<%= f.error_messages %>
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
</tr>
|
8
|
-
<tr valign="top">
|
9
|
-
<td width='150'><%= f.label :description %></td>
|
10
|
-
<td><%= f.text_field :description %></td>
|
11
|
-
</tr>
|
3
|
+
<%= f.label :name %>
|
4
|
+
<%= f.text_field :name %><br />
|
5
|
+
<%= f.label :description %>
|
6
|
+
<%= f.text_field :description %><br />
|
12
7
|
<% unless @element.name.blank? %>
|
13
|
-
|
14
|
-
|
15
|
-
<td><%= @element.file_path.gsub(/^#{::Newsletter.designs_path}/,'') %></td>
|
16
|
-
</tr>
|
8
|
+
<label>Design Filename</label>
|
9
|
+
<div style="padding-top: 7px";><%= @element.file_path.gsub(/^#{::Newsletter.designs_path}/,'') %></div><br />
|
17
10
|
<% end %>
|
18
|
-
|
19
|
-
|
20
|
-
<td><%= f.text_area :html_text %></td>
|
21
|
-
</tr>
|
22
|
-
<tr valign="top">
|
23
|
-
<td colspan="2">
|
11
|
+
<%= f.label :html_text %>
|
12
|
+
<%= f.text_area :html_text %><br />
|
24
13
|
<div class='newsletter_parts_group' style='margin-top: 10px; padding: 0 5px 5px 15px; border: thin dashed black; background-color: #eee'>
|
25
|
-
<h2 style='
|
14
|
+
<h2 style='font-size: 10pt; '>Fields</h2>
|
15
|
+
The HTML code field above should contain (at the least):
|
16
|
+
<ul>
|
17
|
+
<li><%= [field_name] %> for each Text field.</li>
|
18
|
+
<li><%= filter([field_name]) %> for each Textarea.</li>
|
19
|
+
<li><%= image_tag([field_name]) %> for each Inlineasset that will contain an image.</li>
|
20
|
+
<li><%= link_to([field_name]) %> for each Inlineasset that will contain a link.</li>
|
21
|
+
</ul>
|
26
22
|
<div id="newsletter_fields">
|
27
23
|
<%= f.fields_for :fields %>
|
24
|
+
<%= f.link_to_add('Add Field', :fields, {class: 'button add_field'}) %>
|
28
25
|
</div>
|
29
|
-
|
26
|
+
<%= content_for :head do %>
|
27
|
+
<script>
|
28
|
+
jQuery(document).ready(function() {
|
29
|
+
jQuery("#newsletter_fields").sortable({
|
30
|
+
axis: 'y',
|
31
|
+
stop: function (event, ui) {
|
32
|
+
var sequence = 1;
|
33
|
+
jQuery('#newsletter_fields .fields input.sequence').each(function(){
|
34
|
+
jQuery(this).val(sequence);
|
35
|
+
sequence += 1;
|
36
|
+
});
|
37
|
+
}
|
38
|
+
});
|
39
|
+
jQuery('.add_field').click(function() {
|
40
|
+
jQuery( "#newsletter_fields" ).sortable( "refresh" );
|
41
|
+
});
|
42
|
+
});
|
43
|
+
</script>
|
44
|
+
<% end %>
|
30
45
|
</div>
|
31
46
|
<div class='newsletter_parts_group' style='margin-top: 10px; padding: 0 5px 5px 15px; border: thin dashed black; background-color: #eee'>
|
32
47
|
<h2 style='padding-bottom: 0; margin-bottom: 0; font-size: 10pt; '>Areas</h2>
|
33
48
|
<% @design.areas.each do |area| %>
|
34
|
-
<%= check_box_tag
|
49
|
+
<%= check_box_tag "element[area_ids][#{area.id}]", area.id, @element.areas.include?(area), name: "element[area_ids][]" %><%= label_tag "element[area_ids][#{area.id}]", area.name %><br/>
|
35
50
|
<% end %>
|
36
51
|
</div>
|
37
52
|
<%= hidden_field_tag :design_id, @design.id %>
|
38
|
-
|
39
|
-
</tr>
|
40
|
-
<tr>
|
41
|
-
<td align="right" colspan="2"><%= f.submit "Submit", :class => 'button' %><div class="buttonEnding"></div></td>
|
42
|
-
</tr>
|
43
|
-
</table>
|
44
|
-
|
45
|
-
<% end %>
|
53
|
+
<div class="submit_button"><%= f.submit "Submit", :class => 'button' %></div>
|
46
54
|
|
47
|
-
<% content_for :head do %>
|
48
|
-
<%= javascript_include_tag '/javascripts/nested_form.js' %>
|
49
55
|
<% end %>
|
50
|
-
|
51
|
-
|