From bd4e12112d24a20eb310326a57046c56ce2cd0fd Mon Sep 17 00:00:00 2001 From: Manu Date: Tue, 1 Jan 2019 19:24:09 -0500 Subject: [PATCH 01/10] Add image to legislation processes and banner colors --- .../javascripts/legislation_admin.js.coffee | 28 ++++ app/assets/stylesheets/pages.scss | 16 ++ .../admin/legislation/processes_controller.rb | 5 +- app/models/legislation/process.rb | 1 + .../legislation/processes/_form.html.erb | 29 ++++ .../legislation/processes/_header.html.erb | 21 ++- .../processes/_header_full.html.erb | 5 +- ...color_settings_to_legislation_processes.rb | 6 + db/schema.rb | 140 +++++++++++++++++- 9 files changed, 243 insertions(+), 8 deletions(-) create mode 100644 db/migrate/20181220163447_add_header_color_settings_to_legislation_processes.rb diff --git a/app/assets/javascripts/legislation_admin.js.coffee b/app/assets/javascripts/legislation_admin.js.coffee index 5aa19f083..4f26eb790 100644 --- a/app/assets/javascripts/legislation_admin.js.coffee +++ b/app/assets/javascripts/legislation_admin.js.coffee @@ -1,5 +1,13 @@ App.LegislationAdmin = + update_background_color: (selector, text_selector, background_color) -> + $(selector).css('background-color', background_color); + $(text_selector).val(background_color); + + update_font_color: (selector, text_selector, font_color) -> + $(selector).css('color', font_color); + $(text_selector).val(font_color); + initialize: -> $("input[type='checkbox'][data-disable-date]").on change: -> @@ -14,3 +22,23 @@ App.LegislationAdmin = $("#nested_question_options").on "cocoon:after-insert", -> App.Globalize.refresh_visible_translations() + + #banner colors for proccess header + + $("#legislation_process_background_color_picker").on + change: -> + App.LegislationAdmin.update_background_color("#js-legislation_process-background", "#legislation_process_background_color", $(this).val()); + + $("#legislation_process_background_color").on + change: -> + App.LegislationAdmin.update_background_color("#js-legislation_process-background", "#legislation_process_background_color_picker", $(this).val()); + + $("#legislation_process_font_color_picker").on + change: -> + App.LegislationAdmin.update_font_color("#js-legislation_process-title", "#legislation_process_font_color", $(this).val()); + App.LegislationAdmin.update_font_color("#js-legislation_process-description", "#legislation_process_font_color", $(this).val()); + + $("#legislation_process_font_color").on + change: -> + App.LegislationAdmin.update_font_color("#js-legislation_process-title", "#legislation_process_font_color_picker", $(this).val()); + App.LegislationAdmin.update_font_color("#js-legislation_process-description", "#legislation_process_font_color_picker", $(this).val()); diff --git a/app/assets/stylesheets/pages.scss b/app/assets/stylesheets/pages.scss index efde88d07..d37c1d14b 100644 --- a/app/assets/stylesheets/pages.scss +++ b/app/assets/stylesheets/pages.scss @@ -30,6 +30,22 @@ } } +.jumboAlt { + background: $highlight; + margin-bottom: $line-height; + margin-top: rem-calc(-24); + padding-bottom: $line-height; + padding-top: $line-height; + + @include breakpoint(medium) { + padding: rem-calc(24) 0; + } + + &.light { + background: #ecf0f1; + } +} + .lead { font-size: rem-calc(24); } diff --git a/app/controllers/admin/legislation/processes_controller.rb b/app/controllers/admin/legislation/processes_controller.rb index 780ee7478..1df9cdd66 100644 --- a/app/controllers/admin/legislation/processes_controller.rb +++ b/app/controllers/admin/legislation/processes_controller.rb @@ -66,8 +66,11 @@ class Admin::Legislation::ProcessesController < Admin::Legislation::BaseControll :result_publication_enabled, :published, :custom_list, + :background_color, + :font_color, translation_params(::Legislation::Process), - documents_attributes: [:id, :title, :attachment, :cached_attachment, :user_id, :_destroy] + documents_attributes: [:id, :title, :attachment, :cached_attachment, :user_id, :_destroy], + image_attributes: [:id, :title, :attachment, :cached_attachment, :user_id, :_destroy] ] end diff --git a/app/models/legislation/process.rb b/app/models/legislation/process.rb index dc880552b..36a606314 100644 --- a/app/models/legislation/process.rb +++ b/app/models/legislation/process.rb @@ -2,6 +2,7 @@ class Legislation::Process < ActiveRecord::Base include ActsAsParanoidAliases include Taggable include Milestoneable + include Imageable include Documentable documentable max_documents_allowed: 3, max_file_size: 3.megabytes, diff --git a/app/views/admin/legislation/processes/_form.html.erb b/app/views/admin/legislation/processes/_form.html.erb index 1e43da6db..d47947be2 100644 --- a/app/views/admin/legislation/processes/_form.html.erb +++ b/app/views/admin/legislation/processes/_form.html.erb @@ -201,6 +201,35 @@
+
+ <%= render 'images/nested_image', imageable: @process, f: f %> +
+ +
+
+
+ +
+

Process banner color

+
+ +
+
+ <%= f.label :sections, "Background color" %> + <%= color_field(:process, :background_color, id: 'legislation_process_background_color_picker') %> + <%= f.text_field :background_color, label: false %> +
+
+ <%= f.label :sections, "Font color" %> + <%= color_field(:process, :font_color, id: 'legislation_process_font_color_picker') %> + <%= f.text_field :font_color, label: false %> +
+
+ +
+
+
+ <%= f.translatable_fields do |translations_form| %>
<%= translations_form.text_field :title, diff --git a/app/views/legislation/processes/_header.html.erb b/app/views/legislation/processes/_header.html.erb index 4c6acea90..dd21b36ee 100644 --- a/app/views/legislation/processes/_header.html.erb +++ b/app/views/legislation/processes/_header.html.erb @@ -1,7 +1,19 @@ -
+
+ class="legislation-hero jumboAlt" style="background:<%= process.background_color %>; color:<%= process.font_color %>;" + <% else %> + class="legislation-hero jumbo" + <% end %>>
- <%= back_link_to legislation_processes_path %> + + <% if process.background_color.present? && process.font_color.present? %> + <%= link_to content_tag(:span, nil, class: "icon-angle-left", + style: "color:#{process.font_color};") + t("shared.back"), + legislation_processes_path, class: 'back', style: 'color:#FFFFFF !important;'%> + <% else %> + <%= back_link_to legislation_processes_path %> + <% end %> +

<%= @process.title %>

<% if header == :small %> @@ -35,6 +47,11 @@ description: @process.title } %> + <% if @process.image.present? %> +
+ <%= image_tag(@process.image_url(:large), alt: @process.title, id:'image') %> + <% end %> + <% if process.draft_publication.enabled? %>
- + + style="background:<%= process.font_color %>; color:<%= process.background_color %>;" + <% end %>> <%= t("legislation.processes.header.additional_info") %> <% end %> diff --git a/db/migrate/20181220163447_add_header_color_settings_to_legislation_processes.rb b/db/migrate/20181220163447_add_header_color_settings_to_legislation_processes.rb new file mode 100644 index 000000000..b4c7b3ad8 --- /dev/null +++ b/db/migrate/20181220163447_add_header_color_settings_to_legislation_processes.rb @@ -0,0 +1,6 @@ +class AddHeaderColorSettingsToLegislationProcesses < ActiveRecord::Migration + def change + add_column :legislation_processes, :background_color, :text + add_column :legislation_processes, :font_color, :text + end +end \ No newline at end of file diff --git a/db/schema.rb b/db/schema.rb index e3241fd8d..043a6ba0d 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20181206153510) do +ActiveRecord::Schema.define(version: 20181220163447) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -504,6 +504,46 @@ ActiveRecord::Schema.define(version: 20181206153510) do add_index "geozones_polls", ["geozone_id"], name: "index_geozones_polls_on_geozone_id", using: :btree add_index "geozones_polls", ["poll_id"], name: "index_geozones_polls_on_poll_id", using: :btree + create_table "house_images", force: :cascade do |t| + t.integer "house_id" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + + create_table "house_news", force: :cascade do |t| + t.string "title" + t.string "photo" + t.string "link" + t.string "house_id" + t.datetime "created_at" + t.datetime "updated_at" + end + + create_table "houses", force: :cascade do |t| + t.string "name" + t.string "address" + t.string "schedule" + t.string "phone" + t.string "email" + t.string "photo" + t.boolean "disability_access" + t.integer "zonal_administration_id" + t.datetime "created_at" + t.datetime "updated_at" + end + + create_table "houses_administrators", force: :cascade do |t| + t.integer "user_id" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + + create_table "houses_age_ranges", force: :cascade do |t| + t.string "name" + t.datetime "created_at" + t.datetime "updated_at" + end + create_table "i18n_content_translations", force: :cascade do |t| t.integer "i18n_content_id", null: false t.string "locale", null: false @@ -666,6 +706,8 @@ ActiveRecord::Schema.define(version: 20181206153510) do t.date "draft_end_date" t.boolean "draft_phase_enabled", default: false t.boolean "homepage_enabled", default: false + t.text "background_color" + t.text "font_color" end add_index "legislation_processes", ["allegations_end_date"], name: "index_legislation_processes_on_allegations_end_date", using: :btree @@ -792,6 +834,7 @@ ActiveRecord::Schema.define(version: 20181206153510) do t.integer "zoom" t.integer "proposal_id" t.integer "investment_id" + t.integer "house_id" end add_index "map_locations", ["investment_id"], name: "index_map_locations_on_investment_id", using: :btree @@ -838,6 +881,13 @@ ActiveRecord::Schema.define(version: 20181206153510) do add_index "moderators", ["user_id"], name: "index_moderators_on_user_id", using: :btree + create_table "neighborhoods", force: :cascade do |t| + t.string "name" + t.integer "id_parish" + t.datetime "created_at" + t.datetime "updated_at" + end + create_table "newsletters", force: :cascade do |t| t.string "subject" t.string "segment_recipient", null: false @@ -870,6 +920,12 @@ ActiveRecord::Schema.define(version: 20181206153510) do add_index "organizations", ["user_id"], name: "index_organizations_on_user_id", using: :btree + create_table "parishes", force: :cascade do |t| + t.string "name" + t.datetime "created_at" + t.datetime "updated_at" + end + create_table "poll_answers", force: :cascade do |t| t.integer "question_id" t.integer "author_id" @@ -1379,6 +1435,11 @@ ActiveRecord::Schema.define(version: 20181206153510) do t.integer "failed_email_digests_count", default: 0 t.text "former_users_data_log", default: "" t.boolean "public_interests", default: false + t.string "userlastname" + t.integer "user_parish" + t.integer "user_neighborhood" + t.string "ethnic_group" + t.string "studies_level" t.boolean "recommended_debates", default: true t.boolean "recommended_proposals", default: true end @@ -1457,6 +1518,39 @@ ActiveRecord::Schema.define(version: 20181206153510) do add_index "visits", ["started_at"], name: "index_visits_on_started_at", using: :btree add_index "visits", ["user_id"], name: "index_visits_on_user_id", using: :btree + create_table "volunt_categories", force: :cascade do |t| + t.string "name" + t.datetime "created_at" + t.datetime "updated_at" + end + + create_table "volunt_programs", force: :cascade do |t| + t.string "title" + t.text "photo" + t.string "schedule" + t.integer "quota" + t.string "short_description" + t.text "long_description" + t.integer "volunt_category_id" + t.datetime "created_at" + t.datetime "updated_at" + t.string "phone" + t.string "email" + end + + create_table "volunt_users", force: :cascade do |t| + t.integer "id_user" + t.integer "volunt_program_id" + t.datetime "created_at" + t.datetime "updated_at" + end + + create_table "volunteerings_administrators", force: :cascade do |t| + t.integer "user_id" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + create_table "votes", force: :cascade do |t| t.integer "votable_id" t.string "votable_type" @@ -1500,11 +1594,14 @@ ActiveRecord::Schema.define(version: 20181206153510) do t.string "link_text" t.string "link_url" t.string "label" - t.boolean "header", default: false - t.datetime "created_at", null: false - t.datetime "updated_at", null: false + t.boolean "header", default: false + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.integer "site_customization_page_id", default: 0 end + add_index "widget_cards", ["site_customization_page_id"], name: "index_widget_cards_on_site_customization_page_id", using: :btree + create_table "widget_feeds", force: :cascade do |t| t.string "kind" t.integer "limit", default: 3 @@ -1512,6 +1609,41 @@ ActiveRecord::Schema.define(version: 20181206153510) do t.datetime "updated_at", null: false end + create_table "workshop_images", force: :cascade do |t| + t.integer "workshop_id" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + + create_table "workshop_users", force: :cascade do |t| + t.integer "id_user" + t.integer "workshop_id" + t.datetime "created_at" + t.datetime "updated_at" + t.integer "status" + end + + create_table "workshops", force: :cascade do |t| + t.string "name" + t.string "teacher" + t.string "schedule" + t.integer "quota" + t.string "short_description" + t.text "long_description" + t.string "photo" + t.integer "house_id" + t.integer "id_age_range" + t.datetime "created_at" + t.datetime "updated_at" + t.string "status" + end + + create_table "zonal_administrations", force: :cascade do |t| + t.string "name" + t.datetime "created_at" + t.datetime "updated_at" + end + add_foreign_key "administrators", "users" add_foreign_key "annotations", "legacy_legislations" add_foreign_key "annotations", "users" From e5cba7ac2e845bfa05d6c964462bf880376f20b0 Mon Sep 17 00:00:00 2001 From: Manu Date: Mon, 14 Jan 2019 12:01:30 -0500 Subject: [PATCH 02/10] removed wrong tables from schema.rb --- db/schema.rb | 140 ++------------------------------------------------- 1 file changed, 4 insertions(+), 136 deletions(-) diff --git a/db/schema.rb b/db/schema.rb index 043a6ba0d..e3241fd8d 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20181220163447) do +ActiveRecord::Schema.define(version: 20181206153510) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -504,46 +504,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do add_index "geozones_polls", ["geozone_id"], name: "index_geozones_polls_on_geozone_id", using: :btree add_index "geozones_polls", ["poll_id"], name: "index_geozones_polls_on_poll_id", using: :btree - create_table "house_images", force: :cascade do |t| - t.integer "house_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - end - - create_table "house_news", force: :cascade do |t| - t.string "title" - t.string "photo" - t.string "link" - t.string "house_id" - t.datetime "created_at" - t.datetime "updated_at" - end - - create_table "houses", force: :cascade do |t| - t.string "name" - t.string "address" - t.string "schedule" - t.string "phone" - t.string "email" - t.string "photo" - t.boolean "disability_access" - t.integer "zonal_administration_id" - t.datetime "created_at" - t.datetime "updated_at" - end - - create_table "houses_administrators", force: :cascade do |t| - t.integer "user_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - end - - create_table "houses_age_ranges", force: :cascade do |t| - t.string "name" - t.datetime "created_at" - t.datetime "updated_at" - end - create_table "i18n_content_translations", force: :cascade do |t| t.integer "i18n_content_id", null: false t.string "locale", null: false @@ -706,8 +666,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do t.date "draft_end_date" t.boolean "draft_phase_enabled", default: false t.boolean "homepage_enabled", default: false - t.text "background_color" - t.text "font_color" end add_index "legislation_processes", ["allegations_end_date"], name: "index_legislation_processes_on_allegations_end_date", using: :btree @@ -834,7 +792,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do t.integer "zoom" t.integer "proposal_id" t.integer "investment_id" - t.integer "house_id" end add_index "map_locations", ["investment_id"], name: "index_map_locations_on_investment_id", using: :btree @@ -881,13 +838,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do add_index "moderators", ["user_id"], name: "index_moderators_on_user_id", using: :btree - create_table "neighborhoods", force: :cascade do |t| - t.string "name" - t.integer "id_parish" - t.datetime "created_at" - t.datetime "updated_at" - end - create_table "newsletters", force: :cascade do |t| t.string "subject" t.string "segment_recipient", null: false @@ -920,12 +870,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do add_index "organizations", ["user_id"], name: "index_organizations_on_user_id", using: :btree - create_table "parishes", force: :cascade do |t| - t.string "name" - t.datetime "created_at" - t.datetime "updated_at" - end - create_table "poll_answers", force: :cascade do |t| t.integer "question_id" t.integer "author_id" @@ -1435,11 +1379,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do t.integer "failed_email_digests_count", default: 0 t.text "former_users_data_log", default: "" t.boolean "public_interests", default: false - t.string "userlastname" - t.integer "user_parish" - t.integer "user_neighborhood" - t.string "ethnic_group" - t.string "studies_level" t.boolean "recommended_debates", default: true t.boolean "recommended_proposals", default: true end @@ -1518,39 +1457,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do add_index "visits", ["started_at"], name: "index_visits_on_started_at", using: :btree add_index "visits", ["user_id"], name: "index_visits_on_user_id", using: :btree - create_table "volunt_categories", force: :cascade do |t| - t.string "name" - t.datetime "created_at" - t.datetime "updated_at" - end - - create_table "volunt_programs", force: :cascade do |t| - t.string "title" - t.text "photo" - t.string "schedule" - t.integer "quota" - t.string "short_description" - t.text "long_description" - t.integer "volunt_category_id" - t.datetime "created_at" - t.datetime "updated_at" - t.string "phone" - t.string "email" - end - - create_table "volunt_users", force: :cascade do |t| - t.integer "id_user" - t.integer "volunt_program_id" - t.datetime "created_at" - t.datetime "updated_at" - end - - create_table "volunteerings_administrators", force: :cascade do |t| - t.integer "user_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - end - create_table "votes", force: :cascade do |t| t.integer "votable_id" t.string "votable_type" @@ -1594,14 +1500,11 @@ ActiveRecord::Schema.define(version: 20181220163447) do t.string "link_text" t.string "link_url" t.string "label" - t.boolean "header", default: false - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.integer "site_customization_page_id", default: 0 + t.boolean "header", default: false + t.datetime "created_at", null: false + t.datetime "updated_at", null: false end - add_index "widget_cards", ["site_customization_page_id"], name: "index_widget_cards_on_site_customization_page_id", using: :btree - create_table "widget_feeds", force: :cascade do |t| t.string "kind" t.integer "limit", default: 3 @@ -1609,41 +1512,6 @@ ActiveRecord::Schema.define(version: 20181220163447) do t.datetime "updated_at", null: false end - create_table "workshop_images", force: :cascade do |t| - t.integer "workshop_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - end - - create_table "workshop_users", force: :cascade do |t| - t.integer "id_user" - t.integer "workshop_id" - t.datetime "created_at" - t.datetime "updated_at" - t.integer "status" - end - - create_table "workshops", force: :cascade do |t| - t.string "name" - t.string "teacher" - t.string "schedule" - t.integer "quota" - t.string "short_description" - t.text "long_description" - t.string "photo" - t.integer "house_id" - t.integer "id_age_range" - t.datetime "created_at" - t.datetime "updated_at" - t.string "status" - end - - create_table "zonal_administrations", force: :cascade do |t| - t.string "name" - t.datetime "created_at" - t.datetime "updated_at" - end - add_foreign_key "administrators", "users" add_foreign_key "annotations", "legacy_legislations" add_foreign_key "annotations", "users" From 1e020f4df8cd6f5f0094aa01da8ed6aae7cff8fd Mon Sep 17 00:00:00 2001 From: Manu Date: Mon, 14 Jan 2019 12:43:36 -0500 Subject: [PATCH 03/10] use banners js in new legislative process --- .../javascripts/legislation_admin.js.coffee | 28 ------------------- .../legislation/processes/_form.html.erb | 8 +++--- 2 files changed, 4 insertions(+), 32 deletions(-) diff --git a/app/assets/javascripts/legislation_admin.js.coffee b/app/assets/javascripts/legislation_admin.js.coffee index 4f26eb790..5aa19f083 100644 --- a/app/assets/javascripts/legislation_admin.js.coffee +++ b/app/assets/javascripts/legislation_admin.js.coffee @@ -1,13 +1,5 @@ App.LegislationAdmin = - update_background_color: (selector, text_selector, background_color) -> - $(selector).css('background-color', background_color); - $(text_selector).val(background_color); - - update_font_color: (selector, text_selector, font_color) -> - $(selector).css('color', font_color); - $(text_selector).val(font_color); - initialize: -> $("input[type='checkbox'][data-disable-date]").on change: -> @@ -22,23 +14,3 @@ App.LegislationAdmin = $("#nested_question_options").on "cocoon:after-insert", -> App.Globalize.refresh_visible_translations() - - #banner colors for proccess header - - $("#legislation_process_background_color_picker").on - change: -> - App.LegislationAdmin.update_background_color("#js-legislation_process-background", "#legislation_process_background_color", $(this).val()); - - $("#legislation_process_background_color").on - change: -> - App.LegislationAdmin.update_background_color("#js-legislation_process-background", "#legislation_process_background_color_picker", $(this).val()); - - $("#legislation_process_font_color_picker").on - change: -> - App.LegislationAdmin.update_font_color("#js-legislation_process-title", "#legislation_process_font_color", $(this).val()); - App.LegislationAdmin.update_font_color("#js-legislation_process-description", "#legislation_process_font_color", $(this).val()); - - $("#legislation_process_font_color").on - change: -> - App.LegislationAdmin.update_font_color("#js-legislation_process-title", "#legislation_process_font_color_picker", $(this).val()); - App.LegislationAdmin.update_font_color("#js-legislation_process-description", "#legislation_process_font_color_picker", $(this).val()); diff --git a/app/views/admin/legislation/processes/_form.html.erb b/app/views/admin/legislation/processes/_form.html.erb index d47947be2..39d347c6f 100644 --- a/app/views/admin/legislation/processes/_form.html.erb +++ b/app/views/admin/legislation/processes/_form.html.erb @@ -216,13 +216,13 @@
<%= f.label :sections, "Background color" %> - <%= color_field(:process, :background_color, id: 'legislation_process_background_color_picker') %> - <%= f.text_field :background_color, label: false %> + <%= color_field(:process, :background_color, id: 'banner_background_color_picker') %> + <%= f.text_field :background_color, label: false, id: 'banner_background_color' %>
<%= f.label :sections, "Font color" %> - <%= color_field(:process, :font_color, id: 'legislation_process_font_color_picker') %> - <%= f.text_field :font_color, label: false %> + <%= color_field(:process, :font_color, id: 'banner_font_color_picker') %> + <%= f.text_field :font_color, label: false, id: 'banner_font_color' %>
From 37edfb94a4b61a341485d5b7fd720cb84f5c6c7e Mon Sep 17 00:00:00 2001 From: Manu Date: Mon, 14 Jan 2019 14:16:00 -0500 Subject: [PATCH 04/10] changed h4 instead of h3 --- app/views/admin/legislation/processes/_form.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/admin/legislation/processes/_form.html.erb b/app/views/admin/legislation/processes/_form.html.erb index 39d347c6f..bdfce14ac 100644 --- a/app/views/admin/legislation/processes/_form.html.erb +++ b/app/views/admin/legislation/processes/_form.html.erb @@ -210,7 +210,7 @@
-

Process banner color

+

Process banner color

From b6cfe92d763da41494719286209ebd66787dca61 Mon Sep 17 00:00:00 2001 From: Manu Date: Tue, 15 Jan 2019 15:04:15 -0500 Subject: [PATCH 05/10] fixed banner styles issues --- app/assets/stylesheets/pages.scss | 21 ------------------- app/helpers/legislation_helper.rb | 4 ++++ .../legislation/processes/_header.html.erb | 14 ++++++------- .../processes/_header_full.html.erb | 4 ++-- 4 files changed, 12 insertions(+), 31 deletions(-) diff --git a/app/assets/stylesheets/pages.scss b/app/assets/stylesheets/pages.scss index d37c1d14b..3df5ac3c1 100644 --- a/app/assets/stylesheets/pages.scss +++ b/app/assets/stylesheets/pages.scss @@ -23,27 +23,6 @@ &.light { background: #ecf0f1; } - - h1, - p { - color: $text; - } -} - -.jumboAlt { - background: $highlight; - margin-bottom: $line-height; - margin-top: rem-calc(-24); - padding-bottom: $line-height; - padding-top: $line-height; - - @include breakpoint(medium) { - padding: rem-calc(24) 0; - } - - &.light { - background: #ecf0f1; - } } .lead { diff --git a/app/helpers/legislation_helper.rb b/app/helpers/legislation_helper.rb index 413dc3515..a39e9784d 100644 --- a/app/helpers/legislation_helper.rb +++ b/app/helpers/legislation_helper.rb @@ -37,4 +37,8 @@ module LegislationHelper "milestones" => admin_legislation_process_milestones_path(process) } end + + def banner_color? + @process.background_color.present? && @process.font_color.present? + end end diff --git a/app/views/legislation/processes/_header.html.erb b/app/views/legislation/processes/_header.html.erb index dd21b36ee..607fb9cbf 100644 --- a/app/views/legislation/processes/_header.html.erb +++ b/app/views/legislation/processes/_header.html.erb @@ -1,15 +1,13 @@ -
- class="legislation-hero jumboAlt" style="background:<%= process.background_color %>; color:<%= process.font_color %>;" - <% else %> - class="legislation-hero jumbo" +
+ style="background:<%= process.background_color %>; color:<%= process.font_color %>;" <% end %>>
- <% if process.background_color.present? && process.font_color.present? %> - <%= link_to content_tag(:span, nil, class: "icon-angle-left", - style: "color:#{process.font_color};") + t("shared.back"), - legislation_processes_path, class: 'back', style: 'color:#FFFFFF !important;'%> + <% if banner_color? %> + <%= link_to t("shared.back"), legislation_processes_path, + class: "icon-angle-left", + style: "color:#{process.font_color};" %> <% else %> <%= back_link_to legislation_processes_path %> <% end %> diff --git a/app/views/legislation/processes/_header_full.html.erb b/app/views/legislation/processes/_header_full.html.erb index 354140f03..6af30975c 100644 --- a/app/views/legislation/processes/_header_full.html.erb +++ b/app/views/legislation/processes/_header_full.html.erb @@ -10,8 +10,8 @@ <%= markdown @process.additional_info if @process.additional_info %>
- + style="background:<%= process.font_color %>; color:<%= process.background_color %>;" <% end %>> <%= t("legislation.processes.header.additional_info") %> From d08fc087694309a94813e575907116e2b2ab6e68 Mon Sep 17 00:00:00 2001 From: Manu Date: Tue, 15 Jan 2019 15:10:14 -0500 Subject: [PATCH 06/10] added i18n to process form --- app/views/admin/legislation/processes/_form.html.erb | 6 +++--- config/locales/en/admin.yml | 3 +++ config/locales/es/admin.yml | 3 +++ 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/views/admin/legislation/processes/_form.html.erb b/app/views/admin/legislation/processes/_form.html.erb index bdfce14ac..1cfb699ee 100644 --- a/app/views/admin/legislation/processes/_form.html.erb +++ b/app/views/admin/legislation/processes/_form.html.erb @@ -210,17 +210,17 @@
-

Process banner color

+

<%= t("admin.legislation.processes.form.banner_title") %>

- <%= f.label :sections, "Background color" %> + <%= f.label :sections, t("admin.legislation.processes.form.banner_background_color") %> <%= color_field(:process, :background_color, id: 'banner_background_color_picker') %> <%= f.text_field :background_color, label: false, id: 'banner_background_color' %>
- <%= f.label :sections, "Font color" %> + <%= f.label :sections, t("admin.legislation.processes.form.banner_font_color") %> <%= color_field(:process, :font_color, id: 'banner_font_color_picker') %> <%= f.text_field :font_color, label: false, id: 'banner_font_color' %>
diff --git a/config/locales/en/admin.yml b/config/locales/en/admin.yml index 7033fefbf..0863f8a9f 100644 --- a/config/locales/en/admin.yml +++ b/config/locales/en/admin.yml @@ -415,6 +415,9 @@ en: homepage: Description homepage_description: Here you can explain the content of the process homepage_enabled: Homepage enabled + banner_title: Banner colors + banner_background_color: Background colour + banner_font_color: Font colour index: create: New process delete: Delete diff --git a/config/locales/es/admin.yml b/config/locales/es/admin.yml index 0075225c7..c423969c4 100644 --- a/config/locales/es/admin.yml +++ b/config/locales/es/admin.yml @@ -415,6 +415,9 @@ es: homepage: Descripción homepage_description: Aquí puedes explicar el contenido del proceso homepage_enabled: Homepage activada + banner_title: Colores del banner + banner_background_color: Color de fondo + banner_font_color: Color del texto index: create: Nuevo proceso delete: Borrar From b462b7131ecb4af1d6947ab65816b4bfe728b418 Mon Sep 17 00:00:00 2001 From: Manu Date: Wed, 16 Jan 2019 12:08:25 -0500 Subject: [PATCH 07/10] validations were added for the process banner --- app/models/legislation/process.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/legislation/process.rb b/app/models/legislation/process.rb index 36a606314..974546ff4 100644 --- a/app/models/legislation/process.rb +++ b/app/models/legislation/process.rb @@ -44,6 +44,8 @@ class Legislation::Process < ActiveRecord::Base validates :allegations_end_date, presence: true, if: :allegations_start_date? validates :proposals_phase_end_date, presence: true, if: :proposals_phase_start_date? validate :valid_date_ranges + validates :background_color, format: { allow_blank: true, with: /\A#?(?:[A-F0-9]{3}){1,2}\z/i } + validates :font_color, format: { allow_blank: true, with: /\A#?(?:[A-F0-9]{3}){1,2}\z/i } scope :open, -> { where("start_date <= ? and end_date >= ?", Date.current, Date.current) .order('id DESC') } From 14d64e94d0c96f04910fea2877de1491875c74cc Mon Sep 17 00:00:00 2001 From: Manu Date: Wed, 16 Jan 2019 12:48:12 -0500 Subject: [PATCH 08/10] rspec tests were added for the process banner --- spec/helpers/legislation_helper_spec.rb | 31 +++++++++++++++++++++++++ spec/models/legislation/process_spec.rb | 20 ++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 spec/helpers/legislation_helper_spec.rb diff --git a/spec/helpers/legislation_helper_spec.rb b/spec/helpers/legislation_helper_spec.rb new file mode 100644 index 000000000..9d88aa8c8 --- /dev/null +++ b/spec/helpers/legislation_helper_spec.rb @@ -0,0 +1,31 @@ +require 'rails_helper' + +describe LegislationHelper do + let(:process) { build(:legislation_process) } + + it "is valid" do + expect(process).to be_valid + end + + describe "banner colors presence" do + it "background and font color exist" do + @process = build(:legislation_process, background_color: "#944949", font_color: "#ffffff") + expect(banner_color?).to eq(true) + end + + it "background color exist and font color not exist" do + @process = build(:legislation_process, background_color: "#944949", font_color: "") + expect(banner_color?).to eq(false) + end + + it "background color not exist and font color exist" do + @process = build(:legislation_process, background_color: "", font_color: "#944949") + expect(banner_color?).to eq(false) + end + + it "background and font color not exist" do + @process = build(:legislation_process, background_color: "", font_color: "") + expect(banner_color?).to eq(false) + end + end +end diff --git a/spec/models/legislation/process_spec.rb b/spec/models/legislation/process_spec.rb index b921ffcdb..c2b1c8214 100644 --- a/spec/models/legislation/process_spec.rb +++ b/spec/models/legislation/process_spec.rb @@ -177,4 +177,24 @@ describe Legislation::Process do end end + describe "banner colors" do + it "valid banner colors" do + process1 = create(:legislation_process, background_color: "123", font_color: "#fff") + process2 = create(:legislation_process, background_color: "#fff", font_color: "123") + process3 = create(:legislation_process, background_color: "", font_color: "") + process4 = create(:legislation_process, background_color: "#abf123", font_color: "fff123") + expect(process1).to be_valid + expect(process2).to be_valid + expect(process3).to be_valid + expect(process4).to be_valid + end + + it "invalid banner colors" do + expect { + process1 = create(:legislation_process, background_color: "#123ghi", font_color: "#fff") + process2 = create(:legislation_process, background_color: "#ffffffff", font_color: "#123") + }.to raise_error(ActiveRecord::RecordInvalid, "Validation failed: Background color is invalid") + end + end + end From bf219a0a4368a9367f4214bd2bd8334d3fceeff7 Mon Sep 17 00:00:00 2001 From: Manu Date: Fri, 18 Jan 2019 12:39:35 -0500 Subject: [PATCH 09/10] schema.rb changes --- db/schema.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/db/schema.rb b/db/schema.rb index e3241fd8d..3018fd7d7 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20181206153510) do +ActiveRecord::Schema.define(version: 20181220163447) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -666,6 +666,8 @@ ActiveRecord::Schema.define(version: 20181206153510) do t.date "draft_end_date" t.boolean "draft_phase_enabled", default: false t.boolean "homepage_enabled", default: false + t.text "background_color" + t.text "font_color" end add_index "legislation_processes", ["allegations_end_date"], name: "index_legislation_processes_on_allegations_end_date", using: :btree From abcb96ffda3bb64cbfca4a2bb453f71b6e0ee654 Mon Sep 17 00:00:00 2001 From: Manu Date: Tue, 22 Jan 2019 16:32:05 -0500 Subject: [PATCH 10/10] added test spec for creation of legislative process with image --- .../admin/legislation/processes_spec.rb | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/spec/features/admin/legislation/processes_spec.rb b/spec/features/admin/legislation/processes_spec.rb index af97d0e1c..e56bca81b 100644 --- a/spec/features/admin/legislation/processes_spec.rb +++ b/spec/features/admin/legislation/processes_spec.rb @@ -131,6 +131,28 @@ feature 'Admin legislation processes' do expect(page).not_to have_content 'Summary of the process' expect(page).not_to have_content 'Describing the process' end + + scenario "Create a legislation process with an image", :js do + visit new_admin_legislation_process_path() + fill_in 'Process Title', with: 'An example legislation process' + fill_in 'Summary', with: 'Summary of the process' + + base_date = Date.current + fill_in 'legislation_process[start_date]', with: base_date.strftime("%d/%m/%Y") + fill_in 'legislation_process[end_date]', with: (base_date + 5.days).strftime("%d/%m/%Y") + imageable_attach_new_file(create(:image), Rails.root.join('spec/fixtures/files/clippy.jpg')) + + click_button 'Create process' + + expect(page).to have_content 'An example legislation process' + expect(page).to have_content 'Process created successfully' + + click_link 'Click to visit' + + expect(page).to have_content 'An example legislation process' + expect(page).not_to have_content 'Summary of the process' + expect(page).to have_css("img[alt='#{Legislation::Process.last.title}']") + end end context 'Update' do