diff --git a/Gemfile.lock b/Gemfile.lock index a5c7386995ea2cb05e49954486bbf8698a61a9df..fdaaa54a99ec3261efb682f13d6a1c71f07d06ad 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -430,7 +430,7 @@ GEM simple_form (5.1.0) actionpack (>= 5.2) activemodel (>= 5.2) - simple_form_bs5_file_input (0.0.7) + simple_form_bs5_file_input (0.1.0) rails simple_form simple_form_password_with_hints (0.0.7) diff --git a/app/controllers/admin/communication/extranets_controller.rb b/app/controllers/admin/communication/extranets_controller.rb index ed971661f406799a13f421115caadcf6c328db0a..09c8617de5efe5e207c3d2704ea9bea7c739270c 100644 --- a/app/controllers/admin/communication/extranets_controller.rb +++ b/app/controllers/admin/communication/extranets_controller.rb @@ -65,7 +65,7 @@ class Admin::Communication::ExtranetsController < Admin::Communication::Applicat def extranet_params params.require(:communication_extranet) .permit(:name, :host, :about_type, :about_id, - :registration_contact, :logo, :logo_delete, + :registration_contact, :logo, :logo_delete, :favicon, :favicon_delete, :terms, :privacy_policy, :cookies_policy, :color, :has_sso, :sso_target_url, :sso_cert, :sso_name_identifier_format, :sso_mapping, :sso_button_label ) diff --git a/app/models/communication/extranet.rb b/app/models/communication/extranet.rb index fecf9450552a2c2aa121aeb8935f8fec3babdad6..f87f08024ee95227196ae16b8f705dfc30b3355e 100644 --- a/app/models/communication/extranet.rb +++ b/app/models/communication/extranet.rb @@ -41,6 +41,9 @@ class Communication::Extranet < ApplicationRecord validates_presence_of :name, :host has_one_attached_deletable :logo + has_one_attached_deletable :favicon do |attachable| + attachable.variant :thumb, resize_to_limit: [228, 228] + end scope :ordered, -> { order(:name) } scope :for_search_term, -> (term) { diff --git a/app/views/admin/communication/extranets/_form.html.erb b/app/views/admin/communication/extranets/_form.html.erb index 0a84a5f7eb4ca565225f6df3e4651bdb801194b2..8f2cbab3c114c84dba73e2a1e2590b73080be659 100644 --- a/app/views/admin/communication/extranets/_form.html.erb +++ b/app/views/admin/communication/extranets/_form.html.erb @@ -25,6 +25,11 @@ input_html: { accept: '.jpg,.jpeg,.png,.svg' }, preview: 200, direct_upload: true %> + <%= f.input :favicon, + as: :single_deletable_file, + input_html: { accept: '.png' }, + preview: 100, + direct_upload: true %> <%= f.input :color, as: :color %> </div> </div> diff --git a/app/views/extranet/application/_head.html.erb b/app/views/extranet/application/_head.html.erb index 5cb446c9c3f7a001762fd0046bccfea59cc157da..8c49787e7e8f1a20a1f3cfcf58fe389588486c40 100644 --- a/app/views/extranet/application/_head.html.erb +++ b/app/views/extranet/application/_head.html.erb @@ -5,7 +5,11 @@ <%= csp_meta_tag %> <%= stylesheet_link_tag 'extranet', media: 'all' %> <%= javascript_include_tag 'extranet' %> -<%= favicon_link_tag 'favicon.png' %> +<% if current_extranet.favicon.attached? %> + <%= favicon_link_tag url_for(current_extranet.favicon.variant(:thumb)) %> +<% else %> + <%= favicon_link_tag 'favicon.png' %> +<% end %> <% if current_extranet.color.present? && current_extranet.color != '#000000' %> <style> h1 a { @@ -24,4 +28,4 @@ border-color: <%= current_extranet.color %>; } </style> -<% end %> \ No newline at end of file +<% end %> diff --git a/config/locales/communication/en.yml b/config/locales/communication/en.yml index 608e49d9925d8bf72274de384cf57571a374ef88..f8119a582cdc1b4d03aea9c073df64be835f48d3 100644 --- a/config/locales/communication/en.yml +++ b/config/locales/communication/en.yml @@ -50,11 +50,12 @@ en: about_type: About color: Couleur cookies_policy: Cookies policy - privacy_policy: Privacy policy - terms: Terms of service + favicon: Favicon (.png) has_sso: Has SSO? host: Domain + logo: Logo (.png, .jpg, .svg) name: Name + privacy_policy: Privacy policy registration_contact: Contact mail for registrations problems sso_button_label: Sign in button's label sso_cert: Certificate @@ -62,6 +63,7 @@ en: sso_mapping: Mapping sso_name_identifier_format: Name Identifier Format sso_target_url: Target URL + terms: Terms of service communication/website: about: About about_: Independent website @@ -114,6 +116,7 @@ en: full_width: Full width header_text: Title displayed in header parent: Parent page + path: Path published: Published? related_category: Related category slug: Slug @@ -286,6 +289,8 @@ en: description: A list of downloadable files, mentioning their file size. edit: add_file: Add a file + description: + label: Description element: file: label: File @@ -400,24 +405,26 @@ en: description: A list of organizations with logo, name and website. edit: add_partner: Add partner - remove_partner: Remove partner alphabetical: label: Alphabetical order - with_link: - label: With clickable link to each organization's page? + description: + label: Description element: id: label: Partner + name: + label: Nom + placeholder: Enter partner's name + url: + label: Website + logo_label: Logo + placeholder: https:// + remove_logo: Remove logo placeholder: Choose organization unregistered: Unregistered organization - name: - label: Nom - placeholder: Enter partner's name - url: - label: Website - laceholder: https:// - logo_label: Logo - remove_logo: Remove logo + remove_partner: Remove partner + with_link: + label: With clickable link to each organization's page? posts: description: A list of highlighted news. edit: @@ -664,6 +671,7 @@ en: simple_form: hints: communication_extranet: + host: Sans le protocole sso_button_label: "Default: Sign in via SSO" communication_website: git_branch: 'If blank, default branch will be used' diff --git a/config/locales/communication/fr.yml b/config/locales/communication/fr.yml index 9a527d1ecf98725285e6950cf315602c32cebcde..d74805935825d26c9ae01ce6fad85ad63dd48319 100644 --- a/config/locales/communication/fr.yml +++ b/config/locales/communication/fr.yml @@ -50,8 +50,10 @@ fr: about_type: Type d'extranet color: Couleur cookies_policy: Politique de cookies + favicon: Favicon (.png) has_sso: A un SSO ? host: Domaine + logo: Logo (.png, .jpg, .svg) name: Nom privacy_policy: Politique de confidentialité registration_contact: Mail de contact pour les problèmes d'inscription @@ -403,26 +405,26 @@ fr: description: Une liste d'organisations, avec leur logo, leur site et leur nom. edit: add_partner: Ajouter un partenaire - remove_partner: Enlever le partenaire - description: - label: Description alphabetical: label: Ordre alphabétique - with_link: - label: Avec des liens cliquables vers les pages des organisations? + description: + label: Description element: id: label: Organisation + name: + label: Nom + placeholder: Entrer le nom du partenaire + url: + label: Site Web + logo_label: Logo + placeholder: https:// + remove_logo: Enlever le logo placeholder: Choisir l'organisation unregistered: Organisation non enregistrée - name: - label: Nom - placeholder: Entrer le nom du partenaire - url: - label: Site Web - placeholder: https:// - logo_label: Logo - remove_logo: Enlever le logo + remove_partner: Enlever le partenaire + with_link: + label: Avec des liens cliquables vers les pages des organisations? posts: description: Une liste d'actualités mises en avant. edit: @@ -669,6 +671,7 @@ fr: simple_form: hints: communication_extranet: + host: Sans le protocole sso_button_label: "Par défaut : Se connecter en SSO" communication_website: git_branch: 'Laisser vide pour la branche par défaut' diff --git a/db/schema.rb b/db/schema.rb index 3b7866e9c87b83f291bb50ea0440d926dd63dee3..efeb6ffedf8fc615acb05d970eac004f2e0d7470 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -16,7 +16,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do enable_extension "plpgsql" enable_extension "unaccent" - create_table "action_text_rich_texts", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "action_text_rich_texts", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "name", null: false t.text "body" t.string "record_type", null: false @@ -26,7 +26,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["record_type", "record_id", "name"], name: "index_action_text_rich_texts_uniqueness", unique: true end - create_table "active_storage_attachments", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "active_storage_attachments", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "name", null: false t.string "record_type", null: false t.uuid "record_id", null: false @@ -36,7 +36,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["record_type", "record_id", "name", "blob_id"], name: "index_active_storage_attachments_uniqueness", unique: true end - create_table "active_storage_blobs", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "active_storage_blobs", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "key", null: false t.string "filename", null: false t.string "content_type" @@ -50,13 +50,13 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_active_storage_blobs_on_university_id" end - create_table "active_storage_variant_records", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "active_storage_variant_records", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "blob_id", null: false t.string "variation_digest", null: false t.index ["blob_id", "variation_digest"], name: "index_active_storage_variant_records_uniqueness", unique: true end - create_table "administration_qualiopi_criterions", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "administration_qualiopi_criterions", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.integer "number" t.text "name" t.text "description" @@ -64,7 +64,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.datetime "updated_at", null: false end - create_table "administration_qualiopi_indicators", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "administration_qualiopi_indicators", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "criterion_id", null: false t.integer "number" t.text "name" @@ -78,7 +78,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["criterion_id"], name: "index_administration_qualiopi_indicators_on_criterion_id" end - create_table "communication_blocks", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_blocks", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "about_type" t.uuid "about_id" @@ -93,7 +93,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_communication_blocks_on_university_id" end - create_table "communication_extranets", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_extranets", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "name" t.uuid "university_id", null: false t.string "host" @@ -117,7 +117,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_communication_extranets_on_university_id" end - create_table "communication_website_categories", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_categories", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "communication_website_id", null: false t.string "name" @@ -147,7 +147,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["communication_website_post_id", "communication_website_category_id"], name: "post_category" end - create_table "communication_website_git_files", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_git_files", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "previous_path" t.string "about_type", null: false t.uuid "about_id", null: false @@ -159,7 +159,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "index_communication_website_git_files_on_website_id" end - create_table "communication_website_imported_authors", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_imported_authors", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "website_id", null: false t.uuid "author_id" @@ -175,7 +175,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "idx_communication_website_imported_auth_on_website" end - create_table "communication_website_imported_categories", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_imported_categories", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "website_id", null: false t.uuid "category_id" @@ -193,7 +193,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "idx_communication_website_imported_cat_on_website" end - create_table "communication_website_imported_media", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_imported_media", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "identifier" t.jsonb "data" t.text "file_url" @@ -208,7 +208,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "index_communication_website_imported_media_on_website_id" end - create_table "communication_website_imported_pages", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_imported_pages", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "website_id", null: false t.uuid "page_id" @@ -232,7 +232,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "index_communication_website_imported_pages_on_website_id" end - create_table "communication_website_imported_posts", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_imported_posts", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "website_id", null: false t.uuid "post_id" @@ -257,7 +257,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "index_communication_website_imported_posts_on_website_id" end - create_table "communication_website_imported_websites", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_imported_websites", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "website_id", null: false t.integer "status", default: 0 @@ -267,7 +267,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "index_communication_website_imported_websites_on_website_id" end - create_table "communication_website_menu_items", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_menu_items", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "website_id", null: false t.uuid "menu_id", null: false @@ -287,7 +287,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["website_id"], name: "index_communication_website_menu_items_on_website_id" end - create_table "communication_website_menus", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_menus", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "communication_website_id", null: false t.string "title" @@ -299,7 +299,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_communication_website_menus_on_university_id" end - create_table "communication_website_pages", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_pages", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "communication_website_id", null: false t.string "title" @@ -314,10 +314,10 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.text "github_path" t.string "featured_image_alt" t.text "text" - t.text "description_short" t.string "breadcrumb_title" t.text "header_text" t.integer "kind" + t.text "description_short" t.string "bodyclass" t.uuid "language_id" t.text "featured_image_credit" @@ -328,7 +328,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_communication_website_pages_on_university_id" end - create_table "communication_website_posts", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_website_posts", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "communication_website_id", null: false t.string "title" @@ -352,7 +352,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_communication_website_posts_on_university_id" end - create_table "communication_websites", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "communication_websites", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "name" t.string "url" @@ -401,7 +401,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["priority", "run_at"], name: "delayed_jobs_priority" end - create_table "education_academic_years", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "education_academic_years", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.integer "year" t.datetime "created_at", null: false @@ -416,7 +416,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_person_id", "education_academic_year_id"], name: "index_person_academic_year" end - create_table "education_cohorts", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "education_cohorts", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "program_id", null: false t.uuid "academic_year_id", null: false @@ -437,7 +437,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_person_id", "education_cohort_id"], name: "index_person_cohort" end - create_table "education_diplomas", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "education_diplomas", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "name" t.string "short_name" t.integer "level", default: 0 @@ -450,7 +450,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_education_diplomas_on_university_id" end - create_table "education_programs", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "education_programs", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "name" t.integer "capacity" @@ -509,7 +509,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["education_program_id", "user_id"], name: "index_education_programs_users_on_program_id_and_user_id" end - create_table "education_schools", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "education_schools", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "name" t.string "address" @@ -524,7 +524,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_education_schools_on_university_id" end - create_table "imports", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "imports", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.integer "number_of_lines" t.jsonb "processing_errors" t.integer "kind" @@ -537,14 +537,14 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["user_id"], name: "index_imports_on_user_id" end - create_table "languages", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "languages", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "name" t.string "iso_code" t.datetime "created_at", null: false t.datetime "updated_at", null: false end - create_table "research_journal_papers", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "research_journal_papers", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "title" t.datetime "published_at", precision: nil t.uuid "university_id", null: false @@ -574,7 +574,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["researcher_id"], name: "index_research_journal_papers_researchers_on_researcher_id" end - create_table "research_journal_volumes", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "research_journal_volumes", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "research_journal_id", null: false t.string "title" @@ -593,7 +593,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_research_journal_volumes_on_university_id" end - create_table "research_journals", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "research_journals", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "title" t.text "description" @@ -605,7 +605,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_research_journals_on_university_id" end - create_table "research_laboratories", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "research_laboratories", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "name" t.string "address" @@ -617,7 +617,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_research_laboratories_on_university_id" end - create_table "research_laboratory_axes", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "research_laboratory_axes", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "research_laboratory_id", null: false t.string "name" @@ -631,7 +631,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_research_laboratory_axes_on_university_id" end - create_table "research_theses", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "research_theses", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "research_laboratory_id", null: false t.uuid "author_id", null: false @@ -649,7 +649,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_research_theses_on_university_id" end - create_table "universities", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "universities", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.string "name" t.string "identifier" t.string "address" @@ -674,7 +674,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.string "sso_button_label" end - create_table "university_organizations", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "university_organizations", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "name" t.string "long_name" @@ -697,7 +697,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_university_organizations_on_university_id" end - create_table "university_people", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "university_people", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "user_id" t.string "last_name" @@ -733,7 +733,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["user_id"], name: "index_university_people_on_user_id" end - create_table "university_person_experiences", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "university_person_experiences", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "person_id", null: false t.uuid "organization_id", null: false @@ -747,7 +747,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_university_person_experiences_on_university_id" end - create_table "university_person_involvements", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "university_person_involvements", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.uuid "person_id", null: false t.integer "kind" @@ -762,7 +762,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_university_person_involvements_on_university_id" end - create_table "university_roles", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "university_roles", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "target_type" t.uuid "target_id" @@ -774,7 +774,7 @@ ActiveRecord::Schema[7.0].define(version: 2022_11_28_112830) do t.index ["university_id"], name: "index_university_roles_on_university_id" end - create_table "users", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| + create_table "users", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| t.uuid "university_id", null: false t.string "first_name" t.string "last_name"