diff --git a/app/controllers/admin/education/programs_controller.rb b/app/controllers/admin/education/programs_controller.rb index 87a98de74d1aaaf6b5d392c1a208477dadd22c09..ef52df18a37196afe44f7bd304cf782911f3ec1c 100644 --- a/app/controllers/admin/education/programs_controller.rb +++ b/app/controllers/admin/education/programs_controller.rb @@ -79,7 +79,7 @@ class Admin::Education::ProgramsController < Admin::Education::ApplicationContro def program_params params.require(:education_program).permit( - :name, :slug, :level, :capacity, :ects, :continuing, :description, + :name, :slug, :level, :capacity, :ects, :continuing, :description, :published, :prerequisites, :objectives, :duration, :registration, :pedagogy, :evaluation, :accessibility, :pricing, :contacts, :opportunities, :other, :parent_id, school_ids: [], teacher_ids: [] diff --git a/app/models/education/program.rb b/app/models/education/program.rb index 9aaf187e9eee0e54220c5064bc55bbe285601959..1a504550165153dafa8d97b8b2fac27e951b85bf 100644 --- a/app/models/education/program.rb +++ b/app/models/education/program.rb @@ -11,6 +11,7 @@ # name :string # path :string # position :integer default(0) +# published :boolean default(FALSE) # slug :string # created_at :datetime not null # updated_at :datetime not null @@ -81,6 +82,7 @@ class Education::Program < ApplicationRecord after_save :update_children_paths, if: :saved_change_to_path? after_save_commit :set_websites_categories, unless: :skip_websites_categories_callback + scope :published, -> { where(published: true) } scope :ordered, -> { order(:position) } def to_s diff --git a/app/views/admin/education/programs/_form.html.erb b/app/views/admin/education/programs/_form.html.erb index 710b7caab2828dfc31c3002fb74d16d32b32b9d3..cad98a94ce61050b304b8bf7d70bdab4518a431c 100644 --- a/app/views/admin/education/programs/_form.html.erb +++ b/app/views/admin/education/programs/_form.html.erb @@ -13,6 +13,7 @@ class: 'js-slug-input', data: { source: '#education_program_name' } } %> + <%= f.input :published %> <%= f.input :level, include_blank: false, label_method: -> (p) { I18n.t(p[1], scope: 'enums.education/program.level') } %> <%= f.input :capacity %> <%= f.input :ects %> diff --git a/config/locales/communication/en.yml b/config/locales/communication/en.yml index efc691bcfc697e2f377290414198243b047e56d2..0fc87e398ae24d3789f61051f8d67f72f1c71f21 100644 --- a/config/locales/communication/en.yml +++ b/config/locales/communication/en.yml @@ -83,7 +83,7 @@ en: description: Description (SEO) featured_image: Featured image parent: Parent page - published: Published ? + published: Published? slug: Slug text: Text title: Title @@ -95,7 +95,7 @@ en: description: Description (SEO) featured_image: Featured image pinned: Pinned? - published: Published ? + published: Published? published_at: Publication date slug: Slug text: Text diff --git a/config/locales/education/en.yml b/config/locales/education/en.yml index 1d8bf68c39cc8a243cf0c75d35f03e3d224bfbbf..eb3f1b12477f09823eedbca297bcf3d10623a27c 100644 --- a/config/locales/education/en.yml +++ b/config/locales/education/en.yml @@ -28,6 +28,7 @@ en: pedagogy: Méthodes mobilisées prerequisites: Prérequis pricing: Tarifs + published: Published? registration: Modalités et délais d’accès schools: Schools with this formation teachers: Teachers diff --git a/config/locales/education/fr.yml b/config/locales/education/fr.yml index 4e29fb32802cdc56a21ce6a5d5a5f9edced1641e..cda0dc8fe472e488414f37b7f90e479a2266e48e 100644 --- a/config/locales/education/fr.yml +++ b/config/locales/education/fr.yml @@ -28,6 +28,7 @@ fr: pedagogy: Méthodes mobilisées prerequisites: Prérequis pricing: Tarifs + published: Publiée ? registration: Modalités et délais d’accès schools: Écoles proposant cette formation teachers: Enseignants·es diff --git a/db/migrate/20211217115802_add_published_to_education_programs.rb b/db/migrate/20211217115802_add_published_to_education_programs.rb new file mode 100644 index 0000000000000000000000000000000000000000..740f1b29b9229f23bb775330a5af368865100d53 --- /dev/null +++ b/db/migrate/20211217115802_add_published_to_education_programs.rb @@ -0,0 +1,5 @@ +class AddPublishedToEducationPrograms < ActiveRecord::Migration[6.1] + def change + add_column :education_programs, :published, :boolean, default: false + end +end diff --git a/db/schema.rb b/db/schema.rb index 69304184bb6f69a644bf5513f4b8f59360379f3f..dd5a22ca69755af8f20b262fd5a8f757b22eb6a1 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 2021_12_17_115125) do +ActiveRecord::Schema.define(version: 2021_12_17_115802) do # These are extensions that must be enabled in order to support this database enable_extension "pgcrypto" @@ -374,6 +374,7 @@ ActiveRecord::Schema.define(version: 2021_12_17_115125) do t.string "slug" t.string "path" t.text "description" + t.boolean "published", default: false t.index ["parent_id"], name: "index_education_programs_on_parent_id" t.index ["university_id"], name: "index_education_programs_on_university_id" end