pageflow 15.8.0 → 16.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -130
  3. data/admins/pageflow/accounts.rb +12 -16
  4. data/admins/pageflow/entry.rb +28 -25
  5. data/admins/pageflow/entry_templates.rb +5 -7
  6. data/admins/pageflow/sites.rb +50 -0
  7. data/app/assets/javascripts/pageflow/admin/entries.js +16 -7
  8. data/app/controllers/pageflow/entries_controller.rb +2 -2
  9. data/app/helpers/pageflow/admin/permalinks_helper.rb +2 -2
  10. data/app/helpers/pageflow/common_entry_seed_helper.rb +1 -1
  11. data/app/helpers/pageflow/embed_code_helper.rb +1 -1
  12. data/app/helpers/pageflow/entries_helper.rb +15 -15
  13. data/app/helpers/pageflow/sites_helper.rb +11 -0
  14. data/app/helpers/pageflow/social_share_helper.rb +2 -2
  15. data/app/models/pageflow/account.rb +7 -33
  16. data/app/models/pageflow/{cname_theming_request_scope.rb → cname_site_request_scope.rb} +3 -3
  17. data/app/models/pageflow/customized_theme.rb +1 -1
  18. data/app/models/pageflow/entry.rb +3 -4
  19. data/app/models/pageflow/entry_at_revision.rb +2 -2
  20. data/app/models/pageflow/entry_duplicate.rb +1 -1
  21. data/app/models/pageflow/entry_template.rb +4 -4
  22. data/app/models/pageflow/home_button.rb +7 -7
  23. data/app/models/pageflow/permalink.rb +3 -3
  24. data/app/models/pageflow/permalink_directory.rb +2 -2
  25. data/app/models/pageflow/published_entry.rb +2 -2
  26. data/app/models/pageflow/site.rb +59 -0
  27. data/app/models/pageflow/theme_customization.rb +1 -1
  28. data/app/policies/pageflow/account_policy.rb +2 -2
  29. data/app/policies/pageflow/entry_policy.rb +2 -2
  30. data/app/policies/pageflow/entry_template_policy.rb +1 -1
  31. data/app/policies/pageflow/{theming_policy.rb → site_policy.rb} +13 -11
  32. data/app/views/admin/accounts/_entry_template_details.html.arb +1 -1
  33. data/app/views/admin/accounts/_form.html.erb +4 -22
  34. data/app/views/admin/accounts/_site_defaults_inline_help.html.erb +5 -0
  35. data/app/views/admin/entries/_form.html.erb +4 -13
  36. data/app/views/admin/entries/_permalink_inputs.html.erb +2 -2
  37. data/app/views/admin/entries/_site_input.html.erb +15 -0
  38. data/app/views/admin/entries/{entry_type_name_input.html.erb → entry_site_and_type_name_input.html.erb} +3 -0
  39. data/app/views/admin/entry_templates/_form.html.erb +5 -5
  40. data/app/views/admin/sites/_attributes_table.html.arb +9 -0
  41. data/app/views/admin/sites/_fields.html.erb +17 -0
  42. data/app/views/admin/sites/_form.html.erb +5 -0
  43. data/app/views/components/pageflow/admin/entries_tab.rb +1 -2
  44. data/app/views/components/pageflow/admin/entry_templates_tab.rb +10 -11
  45. data/app/views/components/pageflow/admin/features_tab.rb +1 -1
  46. data/app/views/components/pageflow/admin/sites_tab.rb +32 -0
  47. data/app/views/components/pageflow/admin/users_tab.rb +1 -2
  48. data/app/views/pageflow/editor/entries/seed.json.erb +1 -1
  49. data/app/views/pageflow/editor/sites/_site.json.jbuilder +1 -0
  50. data/app/views/pageflow/entries/{_theming.css.erb → _site.css.erb} +0 -0
  51. data/app/views/pageflow/entries/stylesheet.css.erb +1 -1
  52. data/app/views/pageflow/social_share/_entry_meta_tags.html.erb +1 -1
  53. data/app/views/pageflow/social_share/_page_meta_tags.html.erb +1 -1
  54. data/config/initializers/admin_resource_tabs.rb +29 -12
  55. data/config/locales/de.yml +19 -17
  56. data/config/locales/en.yml +19 -17
  57. data/db/migrate/20221215101134_rename_theming_to_site.rb +9 -0
  58. data/db/migrate/20221215120856_associate_entry_templates_with_sites.rb +34 -0
  59. data/db/migrate/20221219203023_add_name_to_sites.rb +5 -0
  60. data/db/migrate/20230103155934_associate_theme_customizations_with_sites.rb +27 -0
  61. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +10 -10
  62. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +5 -5
  63. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +1 -1
  64. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +1 -1
  65. data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder +5 -5
  66. data/entry_types/scrolled/lib/pageflow_scrolled/seeds.rb +1 -1
  67. data/entry_types/scrolled/package/frontend/{EditableInlineText.module-c6672f27.js → EditableInlineText.module-14c7b097.js} +2 -2
  68. data/entry_types/scrolled/package/frontend/{PhonePlatformContext-22e65f92.js → PhonePlatformContext-f6093cc6.js} +47 -219
  69. data/entry_types/scrolled/package/frontend/{Viewer-6b05522f.js → Viewer-b6becc57.js} +2 -2
  70. data/entry_types/scrolled/package/frontend/{arrowRight-7e3d9dd5.js → arrowRight-78a7cee4.js} +1 -1
  71. data/entry_types/scrolled/package/frontend/{components-487daafa.js → components-b3160dd7.js} +2 -2
  72. data/entry_types/scrolled/package/frontend/index.css +1 -1
  73. data/entry_types/scrolled/package/frontend/index.js +195 -12
  74. data/entry_types/scrolled/package/widgets/defaultNavigation.css +2 -2
  75. data/entry_types/scrolled/package/widgets/defaultNavigation.js +16 -9
  76. data/lib/pageflow/ability_mixin.rb +16 -8
  77. data/lib/pageflow/admin/attributes_table_rows.rb +1 -1
  78. data/lib/pageflow/admin/form_inputs.rb +1 -1
  79. data/lib/pageflow/admin/tabs.rb +1 -1
  80. data/lib/pageflow/configuration/permissions.rb +3 -3
  81. data/lib/pageflow/configuration.rb +17 -17
  82. data/lib/pageflow/entry_export_import/entry_serialization.rb +1 -1
  83. data/lib/pageflow/primary_domain_entry_redirect.rb +7 -7
  84. data/lib/pageflow/seeds.rb +10 -10
  85. data/lib/pageflow/theme_customizations.rb +10 -10
  86. data/lib/pageflow/version.rb +1 -1
  87. data/package/editor.js +7 -7
  88. data/spec/factories/accounts.rb +5 -2
  89. data/spec/factories/draft_entries.rb +2 -2
  90. data/spec/factories/entries.rb +2 -2
  91. data/spec/factories/entry_templates.rb +1 -1
  92. data/spec/factories/permalink_directory.rb +1 -1
  93. data/spec/factories/published_entries.rb +2 -2
  94. data/spec/factories/sites.rb +9 -0
  95. metadata +27 -18
  96. data/app/helpers/pageflow/themings_helper.rb +0 -11
  97. data/app/models/pageflow/theming.rb +0 -30
  98. data/app/views/admin/accounts/_theming_defaults_inline_help.html.erb +0 -5
  99. data/app/views/admin/accounts/_theming_details.html.arb +0 -5
  100. data/app/views/pageflow/editor/themings/_theming.json.jbuilder +0 -1
  101. data/spec/factories/themings.rb +0 -7
@@ -0,0 +1,9 @@
1
+ extensible_attributes_table_for(site,
2
+ Pageflow.config_for(site.account)
3
+ .admin_attributes_table_rows.for(:site)) do
4
+ row :host, class: 'host'
5
+ row :account, class: 'account' do
6
+ link_to(site.account.name,
7
+ admin_account_path(site.account, tab: 'sites'))
8
+ end
9
+ end
@@ -0,0 +1,17 @@
1
+ <%= f.inputs do %>
2
+ <%= f.input :cname, hint: t('pageflow.admin.sites.cname_hint') %>
3
+ <%= f.input :additional_cnames, hint: t('pageflow.admin.sites.additional_cnames_hint') %>
4
+ <%= f.input :home_url, hint: t('pageflow.admin.sites.home_url_hint') %>
5
+ <% end %>
6
+
7
+ <%= f.inputs do %>
8
+ <%= f.input :imprint_link_label %>
9
+ <%= f.input :imprint_link_url %>
10
+ <%= f.input :copyright_link_label %>
11
+ <%= f.input :copyright_link_url %>
12
+ <%= f.input :privacy_link_url %>
13
+
14
+ <% account_config.admin_form_inputs.find_all_for(:site).each do |form_input| %>
15
+ <%= form_input.build(f) %>
16
+ <% end %>
17
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <%= admin_form_for [:admin, parent, resource] do |f| %>
2
+ <%= f.inputs :name %>
3
+ <%= render 'fields', f: f, account_config: Pageflow.config_for(resource.account) %>
4
+ <%= f.actions :submit, :cancel %>
5
+ <% end %>
@@ -1,8 +1,7 @@
1
1
  module Pageflow
2
2
  module Admin
3
3
  class EntriesTab < ViewComponent
4
- def build(theming)
5
- account = theming.account
4
+ def build(account)
6
5
  embedded_index_table(account.entries,
7
6
  blank_slate_text: I18n.t('pageflow.admin.entries.no_members')) do
8
7
  table_for_collection(sortable: true, class: 'entries', i18n: Pageflow::Entry) do
@@ -1,9 +1,8 @@
1
1
  module Pageflow
2
2
  module Admin
3
3
  class EntryTemplatesTab < ViewComponent
4
- def build(theming)
5
- account = theming.account
6
- table_subjects = account.existing_and_potential_entry_templates
4
+ def build(site)
5
+ table_subjects = site.existing_and_potential_entry_templates
7
6
 
8
7
  table_for(table_subjects, i18n: Pageflow::EntryTemplate) do
9
8
  column do |entry_template|
@@ -15,30 +14,30 @@ module Pageflow
15
14
  end
16
15
  column do |entry_template|
17
16
  if entry_template.id
18
- edit_link(entry_template, account)
17
+ edit_link(entry_template, site)
19
18
  else
20
- new_link(entry_template, account)
19
+ new_link(entry_template, site)
21
20
  end
22
21
  end
23
22
  end
24
23
  end
25
24
 
26
- def new_link(entry_template, account)
25
+ def new_link(entry_template, site)
27
26
  link_to(
28
27
  I18n.t('active_admin.new'),
29
- new_admin_account_entry_template_path(
30
- account,
28
+ new_admin_site_entry_template_path(
29
+ site,
31
30
  entry_template,
32
31
  entry_type_name: entry_template.entry_type_name
33
32
  )
34
33
  )
35
34
  end
36
35
 
37
- def edit_link(entry_template, account)
36
+ def edit_link(entry_template, site)
38
37
  link_to(
39
38
  I18n.t('active_admin.edit'),
40
- edit_admin_account_entry_template_path(
41
- account,
39
+ edit_admin_site_entry_template_path(
40
+ site,
42
41
  entry_template
43
42
  )
44
43
  )
@@ -2,7 +2,7 @@ module Pageflow
2
2
  module Admin
3
3
  class FeaturesTab < ViewComponent
4
4
  def build(resource)
5
- feature_target = resource.is_a?(Theming) ? resource.account : resource
5
+ feature_target = resource.is_a?(Site) ? resource.account : resource
6
6
  render('admin/features/form', resource: feature_target)
7
7
  end
8
8
  end
@@ -0,0 +1,32 @@
1
+ module Pageflow
2
+ module Admin
3
+ class SitesTab < ViewComponent
4
+ def build(account)
5
+ embedded_index_table(account.sites,
6
+ blank_slate_text: I18n.t('pageflow.admin.accounts.no_sites')) do
7
+ table_for_collection class: 'sites', i18n: Pageflow::Site do
8
+ column :name do |site|
9
+ link_to(site.display_name,
10
+ admin_account_site_path(site.account, site))
11
+ end
12
+ column :host do |site|
13
+ site.host.presence || '-'
14
+ end
15
+ end
16
+ end
17
+
18
+ add_button(account)
19
+ end
20
+
21
+ private
22
+
23
+ def add_button(account)
24
+ return unless authorized?(:create, Site)
25
+
26
+ text_node(link_to(t('pageflow.admin.sites.add'),
27
+ new_admin_account_site_path(account),
28
+ class: 'button'))
29
+ end
30
+ end
31
+ end
32
+ end
@@ -1,8 +1,7 @@
1
1
  module Pageflow
2
2
  module Admin
3
3
  class UsersTab < ViewComponent
4
- def build(theming)
5
- account = theming.account
4
+ def build(account)
6
5
  embedded_index_table(account.memberships.on_accounts.includes(:user)
7
6
  .accessible_by(current_ability, :index)
8
7
  .where('pageflow_memberships.user_id IS NOT NULL'),
@@ -12,7 +12,7 @@
12
12
  "files": <%= editor_files_json_seed(@entry) %>,
13
13
 
14
14
  "account": <%= render_json_seed(@entry.account) %>,
15
- "theming": <%= render_json_seed(@entry.theming) %>,
15
+ "site": <%= render_json_seed(@entry.site) %>,
16
16
  "widget_types": <%= widget_types_json_seeds(@entry_config) %>,
17
17
  "page_types": <%= page_type_json_seeds(@entry_config) %>,
18
18
  "themes": <%= theme_json_seeds(@entry_config) %>,
@@ -0,0 +1 @@
1
+ json.pretty_url pretty_site_url(site)
@@ -6,5 +6,5 @@
6
6
  <% end %>
7
7
 
8
8
  <%= file_thumbnails_css(@entry) %>
9
- <%= render 'pageflow/entries/theming' %>
9
+ <%= render 'pageflow/entries/site' %>
10
10
  <% end %>
@@ -5,7 +5,7 @@
5
5
  <%= tag :meta, property: "og:title", content: pretty_entry_title(entry) %>
6
6
  <%= tag :meta, property: "og:description", name: "description", content: social_share_entry_description(entry) %>
7
7
  <%= tag :meta, property: "og:url", content: social_share_entry_url(entry) %>
8
- <%= tag :meta, property: "og:site_name", content: entry.theming.cname_domain %>
8
+ <%= tag :meta, property: "og:site_name", content: entry.site.cname_domain %>
9
9
  <%= tag :meta, property: "og:type", content: "website" %>
10
10
 
11
11
  <%= tag :meta, name: "twitter:card", content: "summary_large_image" %>
@@ -5,7 +5,7 @@
5
5
  <%= tag :meta, property: "og:title", content: social_share_page_title(page) %>
6
6
  <%= tag :meta, property: "og:description", name: "description", content: social_share_page_description(entry, page) %>
7
7
  <%= tag :meta, property: "og:url", content: social_share_page_url(entry, page) %>
8
- <%= tag :meta, property: "og:site_name", content: entry.theming.cname_domain %>
8
+ <%= tag :meta, property: "og:site_name", content: entry.site.cname_domain %>
9
9
  <%= tag :meta, property: "og:type", content: "website" %>
10
10
 
11
11
  <%= tag :meta, name: "twitter:card", content: "summary_large_image" %>
@@ -1,17 +1,34 @@
1
1
  Pageflow.configure do |config|
2
- config.admin_resource_tabs.register(:entry, name: :members, component: Pageflow::Admin::MembersTab)
3
- config.admin_resource_tabs.register(:entry, name: :revisions, component: Pageflow::Admin::RevisionsTab)
2
+ config.admin_resource_tabs.register(:entry,
3
+ name: :members,
4
+ component: Pageflow::Admin::MembersTab)
5
+ config.admin_resource_tabs.register(:entry,
6
+ name: :revisions,
7
+ component: Pageflow::Admin::RevisionsTab)
8
+
9
+ config.admin_resource_tabs.register(:user,
10
+ name: :accounts,
11
+ component: Pageflow::Admin::UserAccountsTab)
12
+ config.admin_resource_tabs.register(:user,
13
+ name: :entries,
14
+ component: Pageflow::Admin::UserEntriesTab)
4
15
 
5
- config.admin_resource_tabs.register(:user, name: :accounts, component: Pageflow::Admin::UserAccountsTab)
6
- config.admin_resource_tabs.register(:user, name: :entries, component: Pageflow::Admin::UserEntriesTab)
16
+ config.admin_resource_tabs.register(:account,
17
+ name: :entries,
18
+ component: Pageflow::Admin::EntriesTab)
19
+ config.admin_resource_tabs.register(:account,
20
+ name: :users,
21
+ component: Pageflow::Admin::UsersTab)
22
+ config.admin_resource_tabs.register(:account,
23
+ name: :sites,
24
+ component: Pageflow::Admin::SitesTab)
7
25
 
8
- config.admin_resource_tabs.register(:theming, name: :entries, component: Pageflow::Admin::EntriesTab)
9
- config.admin_resource_tabs.register(:theming, name: :users, component: Pageflow::Admin::UsersTab)
10
- config.admin_resource_tabs.register(
11
- :theming,
12
- name: :entry_templates,
13
- component: Pageflow::Admin::EntryTemplatesTab
14
- )
26
+ config.admin_resource_tabs.register(:site,
27
+ name: :entries,
28
+ component: Pageflow::Admin::EntriesTab)
29
+ config.admin_resource_tabs.register(:site,
30
+ name: :entry_templates,
31
+ component: Pageflow::Admin::EntryTemplatesTab)
15
32
  end
16
33
 
17
34
  Pageflow.after_configure do |config|
@@ -27,7 +44,7 @@ Pageflow.after_configure do |config|
27
44
  component: Pageflow::Admin::FeaturesTab,
28
45
  **features_tab_permissions)
29
46
 
30
- config.admin_resource_tabs.register(:theming,
47
+ config.admin_resource_tabs.register(:account,
31
48
  name: :features,
32
49
  component: Pageflow::Admin::FeaturesTab,
33
50
  **features_tab_permissions)
@@ -161,7 +161,7 @@ de:
161
161
  pageflow/account:
162
162
  created_at: Erstellt am
163
163
  default_file_rights: Standard Urheber
164
- default_theming: Standard-Theming
164
+ default_site: Standard-Site
165
165
  entries_count: "# Beiträge"
166
166
  landing_page_name: Einstiegsseite
167
167
  name: Name
@@ -265,11 +265,7 @@ de:
265
265
  published_at: Publiziert am
266
266
  published_until: Publiziert bis
267
267
  updated_at: Geändert am
268
- pageflow/text_track_file:
269
- kind: Art
270
- label: Label
271
- srclang: Sprache
272
- pageflow/theming:
268
+ pageflow/site:
273
269
  additional_cnames: Zusätzliche CNAMES
274
270
  cname: CNAME
275
271
  copyright_link_label: Copyright-Link Text
@@ -279,6 +275,10 @@ de:
279
275
  imprint_link_url: Impressum-Link URL
280
276
  privacy_link_url: Datenschutz-Link URL
281
277
  share_providers: Standard Share Links
278
+ pageflow/text_track_file:
279
+ kind: Art
280
+ label: Label
281
+ srclang: Sprache
282
282
  pageflow/video_file:
283
283
  dimensions: Maße
284
284
  duration: Länge
@@ -406,21 +406,21 @@ de:
406
406
  pageflow/revision:
407
407
  one: Revision
408
408
  other: Revisionen
409
+ pageflow/site:
410
+ one: Site
411
+ other: Sites
409
412
  pageflow/text_track_file:
410
413
  one: Textspur-Datei
411
414
  other: Textspur-Dateien
412
- pageflow/theming:
413
- one: Theming
414
- other: Themings
415
415
  pageflow/video_file:
416
416
  one: Videodatei
417
417
  other: Videodateien
418
418
  revision:
419
419
  one: Revision
420
420
  other: Revisionen
421
- theming:
422
- one: Theming
423
- other: Themings
421
+ site:
422
+ one: Site
423
+ other: Sites
424
424
  user:
425
425
  one: Nutzer
426
426
  other: Nutzer
@@ -499,7 +499,7 @@ de:
499
499
  - Fr
500
500
  - Sa
501
501
  abbr_month_names:
502
- -
502
+ -
503
503
  - Jan
504
504
  - Feb
505
505
  - Mär
@@ -525,7 +525,7 @@ de:
525
525
  long: "%e. %B %Y"
526
526
  short: "%e. %b"
527
527
  month_names:
528
- -
528
+ -
529
529
  - Januar
530
530
  - Februar
531
531
  - März
@@ -798,10 +798,9 @@ de:
798
798
  cannot_add: Was Sie tun möchten, ist nicht möglich.
799
799
  none_addable_tooltip: Kein Konto verfügbar
800
800
  accounts:
801
- entry_template_hint: Einige Formularfelder sind ab sofort im Beitragsvorlagen-Tab auf der Informations-Seite dieses Kontos zu finden.
802
801
  no_entries: Keine Beiträge
803
802
  no_members: Keine Benutzer
804
- theming_defaults_inline_help: Die folgenden Einstellungen werden als Standard für neue Beiträge des Kontos verwendet. Änderungen wirken sich nicht auf existierende Beiträge aus.
803
+ site_defaults_inline_help: Die folgenden Einstellungen werden als Standard für neue Beiträge des Kontos verwendet. Änderungen wirken sich nicht auf existierende Beiträge aus.
805
804
  entries:
806
805
  add_folder: Ordner hinzufügen
807
806
  confirm_depublish: Soll der Beitrag wirklich depubliziert werden?
@@ -881,16 +880,19 @@ de:
881
880
  features: Features
882
881
  members: Mitglieder
883
882
  revisions: Revisionen
883
+ sites: Sites
884
884
  users: Benutzer
885
885
  revisions:
886
886
  published_until_hint: Freilassen, um Beitrag unbegrenzt zu veröffentlichen.
887
887
  restored: Revision wiederhergestellt
888
- themings:
888
+ sites:
889
+ add: Site hinzufügen
889
890
  additional_cnames_hint: Kommaseparierte Liste von weiteren CNAMES. Ausschließlich zur Auswahl der Redirect URL genutzt.
890
891
  cname_hint: Wird in Share Links verwendet.
891
892
  default_author_hint: Voreinstellung 'author' Meta-Feld für Eintrage
892
893
  default_keywords_hint: Voreinstellung 'keywords' Meta-Feld für Eintrage
893
894
  default_locale_hint: Voreinstellung Sprache für Einträge
895
+ default_name: "(Standard)"
894
896
  default_publisher_hint: Voreinstellung 'publisher' Meta-Feld für Eintrage
895
897
  home_url_hint: Wird einer der obigen CNAMES ohne Pfad in der URL verwendet, wird zu dieser URL umgeleitet. Standard Link Ziel des Home Buttons.
896
898
  name: "%{account_name}"
@@ -161,7 +161,7 @@ en:
161
161
  pageflow/account:
162
162
  created_at: Created at
163
163
  default_file_rights: Default file credits
164
- default_theming: Default theming
164
+ default_site: Default site
165
165
  entries_count: "# Stories"
166
166
  landing_page_name: Landing page
167
167
  name: Name
@@ -265,11 +265,7 @@ en:
265
265
  published_at: Published at
266
266
  published_until: Published until
267
267
  updated_at: Updated at
268
- pageflow/text_track_file:
269
- kind: Kind
270
- label: Label
271
- srclang: Language
272
- pageflow/theming:
268
+ pageflow/site:
273
269
  additional_cnames: Additional CNAMES
274
270
  cname: CNAME
275
271
  copyright_link_label: Copyright link Text
@@ -279,6 +275,10 @@ en:
279
275
  imprint_link_url: Legal notice link URL
280
276
  privacy_link_url: Privacy link URL
281
277
  share_providers: Default Share Links
278
+ pageflow/text_track_file:
279
+ kind: Kind
280
+ label: Label
281
+ srclang: Language
282
282
  pageflow/video_file:
283
283
  dimensions: Dimensions
284
284
  duration: Duration
@@ -406,21 +406,21 @@ en:
406
406
  pageflow/revision:
407
407
  one: Version
408
408
  other: Versions
409
+ pageflow/site:
410
+ one: Site
411
+ other: Sites
409
412
  pageflow/text_track_file:
410
413
  one: Text Track File
411
414
  other: Text Track Files
412
- pageflow/theming:
413
- one: Theming
414
- other: Themings
415
415
  pageflow/video_file:
416
416
  one: Video File
417
417
  other: Video Files
418
418
  revision:
419
419
  one: Version
420
420
  other: Versions
421
- theming:
422
- one: Theming
423
- other: Themings
421
+ site:
422
+ one: Site
423
+ other: Sites
424
424
  user:
425
425
  one: User
426
426
  other: Users
@@ -499,7 +499,7 @@ en:
499
499
  - Fri
500
500
  - Sat
501
501
  abbr_month_names:
502
- -
502
+ -
503
503
  - Jan
504
504
  - Feb
505
505
  - Mar
@@ -525,7 +525,7 @@ en:
525
525
  long: "%B %d, %Y"
526
526
  short: "%b %d"
527
527
  month_names:
528
- -
528
+ -
529
529
  - January
530
530
  - February
531
531
  - March
@@ -792,10 +792,9 @@ en:
792
792
  cannot_add: What you want to do is not possible at the moment.
793
793
  none_addable_tooltip: No account available
794
794
  accounts:
795
- entry_template_hint: Some of the form fields can now be found in the story template tab on the info page for this account
796
795
  no_entries: No Stories
797
796
  no_members: No members
798
- theming_defaults_inline_help: The following settings will be used as defaults for new stories in this account. Changes do not affect existing stories.
797
+ site_defaults_inline_help: The following settings will be used as defaults for new stories in this account. Changes do not affect existing stories.
799
798
  entries:
800
799
  add_folder: Add folder
801
800
  confirm_depublish: Depublish this story?
@@ -875,16 +874,19 @@ en:
875
874
  features: Features
876
875
  members: Members
877
876
  revisions: Versions
877
+ sites: Sites
878
878
  users: User
879
879
  revisions:
880
880
  published_until_hint: Leave blank to publish indefinitely.
881
881
  restored: Version restored
882
- themings:
882
+ sites:
883
+ add: Add site
883
884
  additional_cnames_hint: Comma separated list of additional CNAMES. Used only to select the correct redirect URL.
884
885
  cname_hint: Used in public sharing URLs.
885
886
  default_author_hint: Default 'author' meta field for stories
886
887
  default_keywords_hint: Default 'keywords' meta field for stories
887
888
  default_locale_hint: Default language for stories
889
+ default_name: "(Default)"
888
890
  default_publisher_hint: Default 'publisher' meta field for stories
889
891
  home_url_hint: Used for requests to the root path with one of the above CNAMES. Default target location for the home button.
890
892
  name: "%{account_name}"
@@ -0,0 +1,9 @@
1
+ class RenameThemingToSite < ActiveRecord::Migration[5.2]
2
+ def change
3
+ rename_table :pageflow_themings, :pageflow_sites
4
+
5
+ rename_column :pageflow_accounts, :default_theming_id, :default_site_id
6
+ rename_column :pageflow_entries, :theming_id, :site_id
7
+ rename_column :pageflow_permalink_directories, :theming_id, :site_id
8
+ end
9
+ end
@@ -0,0 +1,34 @@
1
+ class AssociateEntryTemplatesWithSites < ActiveRecord::Migration[5.2]
2
+ def up
3
+ add_reference(:pageflow_entry_templates, :site)
4
+ add_index(:pageflow_entry_templates, [:site_id, :entry_type_name], unique: true)
5
+
6
+ execute(<<-SQL)
7
+ UPDATE pageflow_entry_templates
8
+ LEFT JOIN pageflow_accounts
9
+ ON pageflow_accounts.id = pageflow_entry_templates.account_id
10
+ SET site_id = pageflow_accounts.default_site_id;
11
+ SQL
12
+
13
+ remove_index(:pageflow_entry_templates, name: 'unique_index_entry_templates_account_entry_type')
14
+ remove_reference(:pageflow_entry_templates, :account)
15
+ end
16
+
17
+ def down
18
+ add_reference(:pageflow_entry_templates, :account)
19
+ add_index(:pageflow_entry_templates,
20
+ [:account_id, :entry_type_name],
21
+ unique: true,
22
+ name: 'unique_index_entry_templates_account_entry_type')
23
+
24
+ execute(<<-SQL)
25
+ UPDATE pageflow_entry_templates
26
+ LEFT JOIN pageflow_sites
27
+ ON pageflow_sites.id = pageflow_entry_templates.site_id
28
+ SET pageflow_entry_templates.account_id = pageflow_sites.account_id;
29
+ SQL
30
+
31
+ remove_index(:pageflow_entry_templates, [:site_id, :entry_type_name])
32
+ remove_reference(:pageflow_entry_templates, :site)
33
+ end
34
+ end
@@ -0,0 +1,5 @@
1
+ class AddNameToSites < ActiveRecord::Migration[5.2]
2
+ def change
3
+ add_column :pageflow_sites, :name, :string
4
+ end
5
+ end
@@ -0,0 +1,27 @@
1
+ class AssociateThemeCustomizationsWithSites < ActiveRecord::Migration[5.2]
2
+ def up
3
+ add_reference(:pageflow_theme_customizations, :site)
4
+
5
+ execute(<<-SQL)
6
+ UPDATE pageflow_theme_customizations
7
+ LEFT JOIN pageflow_accounts
8
+ ON pageflow_accounts.id = pageflow_theme_customizations.account_id
9
+ SET site_id = pageflow_accounts.default_site_id;
10
+ SQL
11
+
12
+ remove_reference(:pageflow_theme_customizations, :account)
13
+ end
14
+
15
+ def down
16
+ add_reference(:pageflow_theme_customizations, :account)
17
+
18
+ execute(<<-SQL)
19
+ UPDATE pageflow_theme_customizations
20
+ LEFT JOIN pageflow_sites
21
+ ON pageflow_sites.id = pageflow_theme_customizations.site_id
22
+ SET pageflow_theme_customizations.account_id = pageflow_sites.account_id;
23
+ SQL
24
+
25
+ remove_reference(:pageflow_theme_customizations, :site)
26
+ end
27
+ end
@@ -5660,10 +5660,10 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
5660
5660
  },
5661
5661
  handleError: function handleError() {}
5662
5662
  });
5663
- var Theming = Backbone.Model.extend({
5664
- modelName: 'theming',
5665
- i18nKey: 'pageflow/theming',
5666
- collectionName: 'themings'
5663
+ var Site = Backbone.Model.extend({
5664
+ modelName: 'site',
5665
+ i18nKey: 'pageflow/site',
5666
+ collectionName: 'sites'
5667
5667
  });
5668
5668
  var ChapterConfiguration = Configuration.extend({
5669
5669
  modelName: 'chapter',
@@ -8185,7 +8185,7 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
8185
8185
  configurationEditor.tab('widgets', function () {
8186
8186
  editor.entryType.appearanceInputs && editor.entryType.appearanceInputs(this, {
8187
8187
  entry: entry,
8188
- theming: state.theming
8188
+ site: state.site
8189
8189
  });
8190
8190
  entry.widgets && this.view(EditWidgetsView, {
8191
8191
  model: entry,
@@ -10918,7 +10918,7 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
10918
10918
  state.entry = editor.createEntryModel(options, {
10919
10919
  widgets: widgets
10920
10920
  });
10921
- state.theming = new Theming(options.theming);
10921
+ state.site = new Site(options.site);
10922
10922
  state.account = new Backbone.Model(options.account);
10923
10923
  widgets.subject = state.entry;
10924
10924
  state.storylineOrdering = new StorylineOrdering(state.storylines, state.pages);
@@ -11032,7 +11032,7 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
11032
11032
  this.chapters = options.chapters;
11033
11033
  this.pages = options.pages;
11034
11034
  },
11035
- getThemingOption: function getThemingOption(name) {
11035
+ getSiteOption: function getSiteOption(name) {
11036
11036
  return this.entry.getTheme().get(name);
11037
11037
  },
11038
11038
  getFile: function getFile(collectionName, permaId) {
@@ -11651,7 +11651,7 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
11651
11651
  var appearanceInputs = function appearanceInputs(tabView, options) {
11652
11652
  var entry = options.entry;
11653
11653
  var theme = entry.getTheme();
11654
- var theming = options.theming;
11654
+ var site = options.site;
11655
11655
  tabView.input('manual_start', CheckBoxInputView);
11656
11656
  tabView.input('emphasize_chapter_beginning', CheckBoxInputView);
11657
11657
  tabView.input('emphasize_new_pages', CheckBoxInputView);
@@ -11666,7 +11666,7 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
11666
11666
 
11667
11667
  if (theme.hasHomeButton()) {
11668
11668
  tabView.input('home_url', TextInputView, {
11669
- placeholder: theming.get('pretty_url'),
11669
+ placeholder: site.get('pretty_url'),
11670
11670
  visibleBinding: 'home_button_enabled'
11671
11671
  });
11672
11672
  }
@@ -12516,6 +12516,7 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
12516
12516
  exports.SidebarController = SidebarController;
12517
12517
  exports.SidebarFooterView = SidebarFooterView;
12518
12518
  exports.SidebarRouter = SidebarRouter;
12519
+ exports.Site = Site;
12519
12520
  exports.SliderInputView = SliderInputView;
12520
12521
  exports.SortableCollectionView = SortableCollectionView;
12521
12522
  exports.StaticThumbnailView = StaticThumbnailView;
@@ -12543,7 +12544,6 @@ var pageflow_paged = (function (exports, Backbone, _, Marionette, $, I18n$1, Chi
12543
12544
  exports.ThemeInputView = ThemeInputView;
12544
12545
  exports.ThemeItemView = ThemeItemView;
12545
12546
  exports.ThemesCollection = ThemesCollection;
12546
- exports.Theming = Theming;
12547
12547
  exports.TooltipView = TooltipView;
12548
12548
  exports.UnmatchedUploadError = UnmatchedUploadError;
12549
12549
  exports.UploadError = UploadError;