pageflow 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of pageflow might be problematic. Click here for more details.

Files changed (210) hide show
  1. checksums.yaml +8 -8
  2. data/admins/pageflow/entry.rb +8 -8
  3. data/admins/pageflow/revisions.rb +1 -1
  4. data/admins/pageflow/user.rb +24 -20
  5. data/app/assets/images/pageflow/scroll_down_indicator.png +0 -0
  6. data/app/assets/images/pageflow/scroll_down_indicator_invert.png +0 -0
  7. data/app/assets/images/pageflow/touch_indicator.png +0 -0
  8. data/app/assets/images/pageflow/touch_indicator_invert.png +0 -0
  9. data/app/assets/javascripts/pageflow/audio_player.js +8 -1
  10. data/app/assets/javascripts/pageflow/audio_player/media_events.js +27 -0
  11. data/app/assets/javascripts/pageflow/base.js +2 -1
  12. data/app/assets/javascripts/pageflow/editor/api.js +15 -0
  13. data/app/assets/javascripts/pageflow/editor/base.js +17 -1
  14. data/app/assets/javascripts/pageflow/editor/controllers/sidebar_controller.js +9 -1
  15. data/app/assets/javascripts/pageflow/editor/initializers/setup_help_entries.js +5 -0
  16. data/app/assets/javascripts/pageflow/editor/models/edit_lock_container.js +30 -9
  17. data/app/assets/javascripts/pageflow/editor/models/entry.js +8 -0
  18. data/app/assets/javascripts/pageflow/editor/models/file_stage.js +1 -1
  19. data/app/assets/javascripts/pageflow/editor/models/mixins/transient_references.js +1 -1
  20. data/app/assets/javascripts/pageflow/editor/templates/back_button_decorator.jst.ejs +1 -1
  21. data/app/assets/javascripts/pageflow/editor/templates/background_positioning.jst.ejs +5 -5
  22. data/app/assets/javascripts/pageflow/editor/templates/blank_entry.jst.ejs +6 -6
  23. data/app/assets/javascripts/pageflow/editor/templates/chapter_item.jst.ejs +2 -2
  24. data/app/assets/javascripts/pageflow/editor/templates/confirm_encoding.jst.ejs +7 -6
  25. data/app/assets/javascripts/pageflow/editor/templates/confirmable_file_item.jst.ejs +1 -1
  26. data/app/assets/javascripts/pageflow/editor/templates/edit_chapter.jst.ejs +4 -4
  27. data/app/assets/javascripts/pageflow/editor/templates/edit_entry.jst.ejs +7 -7
  28. data/app/assets/javascripts/pageflow/editor/templates/edit_meta_data.jst.ejs +3 -3
  29. data/app/assets/javascripts/pageflow/editor/templates/edit_page.jst.ejs +4 -4
  30. data/app/assets/javascripts/pageflow/editor/templates/embedded/page_link.jst.ejs +1 -1
  31. data/app/assets/javascripts/pageflow/editor/templates/file_item.jst.ejs +8 -8
  32. data/app/assets/javascripts/pageflow/editor/templates/files.jst.ejs +1 -1
  33. data/app/assets/javascripts/pageflow/editor/templates/files_blank_slate.jst.ejs +1 -1
  34. data/app/assets/javascripts/pageflow/editor/templates/files_explorer.jst.ejs +3 -3
  35. data/app/assets/javascripts/pageflow/editor/templates/files_explorer_blank_slate.jst.ejs +1 -1
  36. data/app/assets/javascripts/pageflow/editor/templates/files_gallery_blank_slate.jst.ejs +1 -1
  37. data/app/assets/javascripts/pageflow/editor/templates/help.jst.ejs +9 -0
  38. data/app/assets/javascripts/pageflow/editor/templates/help_button.jst.ejs +1 -1
  39. data/app/assets/javascripts/pageflow/editor/templates/loading.jst.ejs +1 -1
  40. data/app/assets/javascripts/pageflow/editor/templates/locked.jst.ejs +4 -4
  41. data/app/assets/javascripts/pageflow/editor/templates/notifications.jst.ejs +6 -6
  42. data/app/assets/javascripts/pageflow/editor/templates/other_entries_blank_slate.jst.ejs +1 -1
  43. data/app/assets/javascripts/pageflow/editor/templates/page_item.jst.ejs +1 -1
  44. data/app/assets/javascripts/pageflow/editor/templates/publish_entry.jst.ejs +13 -13
  45. data/app/assets/javascripts/pageflow/editor/templates/select_button.jst.ejs +1 -1
  46. data/app/assets/javascripts/pageflow/editor/views/background_positioning_view.js +1 -1
  47. data/app/assets/javascripts/pageflow/editor/views/chapter_item_view.js +2 -2
  48. data/app/assets/javascripts/pageflow/editor/views/configuration_editors/audio_loop.js +0 -3
  49. data/app/assets/javascripts/pageflow/editor/views/edit_chapter_view.js +1 -1
  50. data/app/assets/javascripts/pageflow/editor/views/edit_meta_data_view.js +7 -0
  51. data/app/assets/javascripts/pageflow/editor/views/edit_page_view.js +11 -2
  52. data/app/assets/javascripts/pageflow/editor/views/editor_view.js +4 -4
  53. data/app/assets/javascripts/pageflow/editor/views/entry_preview_view.js +4 -1
  54. data/app/assets/javascripts/pageflow/editor/views/entry_publication_quota_decorator_view.js +1 -1
  55. data/app/assets/javascripts/pageflow/editor/views/files_explorer_view.js +1 -1
  56. data/app/assets/javascripts/pageflow/editor/views/files_view.js +4 -4
  57. data/app/assets/javascripts/pageflow/editor/views/help_view.js +37 -24
  58. data/app/assets/javascripts/pageflow/editor/views/locked_view.js +4 -2
  59. data/app/assets/javascripts/pageflow/editor/views/page_item_view.js +1 -1
  60. data/app/assets/javascripts/pageflow/editor/views/page_preview_view.js +7 -0
  61. data/app/assets/javascripts/pageflow/editor/views/publish_entry_view.js +8 -1
  62. data/app/assets/javascripts/pageflow/links.js +42 -0
  63. data/app/assets/javascripts/pageflow/page_types/audio.js +3 -1
  64. data/app/assets/javascripts/pageflow/page_types/video.js +1 -0
  65. data/app/assets/javascripts/pageflow/ready.js +1 -20
  66. data/app/assets/javascripts/pageflow/ui.js +2 -2
  67. data/app/assets/javascripts/pageflow/ui/templates/inputs/file_input.jst.ejs +3 -3
  68. data/app/assets/javascripts/pageflow/ui/templates/inputs/page_reference.jst.ejs +1 -1
  69. data/app/assets/javascripts/pageflow/ui/templates/inputs/text_area_input.jst.ejs +7 -7
  70. data/app/assets/javascripts/pageflow/ui/views/collection_view.js +10 -1
  71. data/app/assets/javascripts/pageflow/ui/views/configuration_editor_view.js +1 -1
  72. data/app/assets/javascripts/pageflow/ui/views/inputs/check_box_input_view.js +5 -1
  73. data/app/assets/javascripts/pageflow/ui/views/inputs/extended_select_input_view.js +106 -0
  74. data/app/assets/javascripts/pageflow/ui/views/inputs/file_input_view.js +1 -1
  75. data/app/assets/javascripts/pageflow/ui/views/inputs/proxy_url_input_view.js +2 -2
  76. data/app/assets/javascripts/pageflow/ui/views/inputs/select_input_view.js +50 -14
  77. data/app/assets/javascripts/pageflow/ui/views/inputs/text_area_input_view.js +1 -1
  78. data/app/assets/javascripts/pageflow/ui/views/inputs/text_input_view.js +1 -1
  79. data/app/assets/javascripts/pageflow/ui/views/inputs/url_input_view.js +4 -4
  80. data/app/assets/javascripts/pageflow/ui/views/mixins/input_view.js +1 -1
  81. data/app/assets/javascripts/pageflow/video_player.js +5 -0
  82. data/app/assets/javascripts/pageflow/video_player/media_events.js +27 -0
  83. data/app/assets/stylesheets/pageflow/editor/base.css.scss +4 -0
  84. data/app/assets/stylesheets/pageflow/editor/help.css.scss +91 -45
  85. data/app/assets/stylesheets/pageflow/entries.css.scss +18 -5
  86. data/app/assets/stylesheets/pageflow/jquery_ui.css.scss +3 -2
  87. data/app/assets/stylesheets/pageflow/page.css.scss +23 -21
  88. data/app/assets/stylesheets/pageflow/subshare.css.scss +1 -1
  89. data/app/assets/stylesheets/pageflow/text_variants.css.scss +11 -2
  90. data/app/assets/stylesheets/pageflow/themes/default.css.scss +1 -41
  91. data/app/assets/stylesheets/pageflow/themes/default/base.css.scss +21 -0
  92. data/app/assets/stylesheets/pageflow/themes/default/overview.css.scss +16 -1
  93. data/app/assets/stylesheets/pageflow/themes/default/page.css.scss +5 -0
  94. data/app/assets/stylesheets/pageflow/themes/default/variables.css.scss +20 -0
  95. data/app/assets/stylesheets/pageflow/ui.css.scss +2 -0
  96. data/app/assets/stylesheets/pageflow/ui/input/extended_select_input.css.scss +105 -0
  97. data/app/controllers/concerns/pageflow/edit_locking.rb +2 -2
  98. data/app/controllers/concerns/pageflow/quota_verification.rb +1 -1
  99. data/app/controllers/pageflow/application_controller.rb +6 -2
  100. data/app/controllers/pageflow/editor/entries_controller.rb +5 -0
  101. data/app/controllers/pageflow/entries_controller.rb +3 -1
  102. data/app/controllers/pageflow/revisions_controller.rb +2 -0
  103. data/app/helpers/pageflow/admin/locales_helper.rb +11 -0
  104. data/app/helpers/pageflow/admin/users_helper.rb +1 -1
  105. data/app/helpers/pageflow/entries_helper.rb +8 -2
  106. data/app/helpers/pageflow/file_thumbnails_helper.rb +1 -1
  107. data/app/helpers/pageflow/files_helper.rb +13 -0
  108. data/app/helpers/pageflow/help_entries_helper.rb +19 -0
  109. data/app/helpers/pageflow/render_json_helper.rb +11 -0
  110. data/app/mailers/pageflow/user_mailer.rb +4 -1
  111. data/app/models/pageflow/draft_entry.rb +1 -0
  112. data/app/models/pageflow/positioned_file.rb +45 -0
  113. data/app/models/pageflow/published_entry.rb +12 -1
  114. data/app/models/pageflow/revision.rb +4 -0
  115. data/app/models/pageflow/theming.rb +1 -1
  116. data/app/models/pageflow/thumbnail_file_resolver.rb +20 -12
  117. data/app/views/admin/entries/_attributes_table.html.arb +3 -3
  118. data/app/views/admin/entries/_links.html.arb +3 -3
  119. data/app/views/admin/revisions/_form.html.erb +1 -1
  120. data/app/views/admin/users/_form.html.erb +8 -2
  121. data/app/views/admin/users/delete_me.html.erb +3 -3
  122. data/app/views/admin/users/me.html.erb +11 -3
  123. data/app/views/components/pageflow/admin/entries_tab.rb +1 -1
  124. data/app/views/components/pageflow/admin/grouped_folder_list.rb +7 -7
  125. data/app/views/components/pageflow/admin/members_tab.rb +4 -4
  126. data/app/views/components/pageflow/admin/revisions_tab.rb +8 -8
  127. data/app/views/components/pageflow/admin/users_tab.rb +1 -1
  128. data/app/views/layouts/pageflow/application.html.erb +2 -2
  129. data/app/views/pageflow/config/_editor_seeds.json.jbuilder +1 -1
  130. data/app/views/pageflow/devise/mailer/reset_password_instructions.html.erb +6 -4
  131. data/app/views/pageflow/editor/entries/_entry.json.jbuilder +1 -1
  132. data/app/views/pageflow/editor/entries/_help_entries_seed.html.erb +6 -0
  133. data/app/views/pageflow/editor/entries/seed.json.erb +14 -0
  134. data/app/views/pageflow/editor/entry_publications/_published_message.html.erb +1 -0
  135. data/app/views/pageflow/editor/entry_publications/check.json.jbuilder +3 -0
  136. data/app/views/pageflow/entries/_entry.html.erb +3 -3
  137. data/app/views/pageflow/entries/_ie8_hint.html.erb +2 -13
  138. data/app/views/pageflow/entries/_mobile_navigation.html.erb +6 -6
  139. data/app/views/pageflow/entries/_multimedia_alert.html.erb +5 -9
  140. data/app/views/pageflow/entries/_non_js_hint.html.erb +1 -1
  141. data/app/views/pageflow/entries/_skip_links.html.erb +3 -3
  142. data/app/views/pageflow/entries/edit.html.erb +5 -23
  143. data/app/views/pageflow/entries/navigation/_bar_bottom.html.erb +5 -5
  144. data/app/views/pageflow/entries/navigation/_bar_top.html.erb +15 -15
  145. data/app/views/pageflow/entries/navigation/_home_button.html.erb +2 -2
  146. data/app/views/pageflow/entries/overview/_chapter.html.erb +1 -1
  147. data/app/views/pageflow/entries/overview/_entry.html.erb +6 -4
  148. data/app/views/pageflow/entries/show.html.erb +2 -2
  149. data/app/views/pageflow/help_entries/_menu.html.erb +5 -0
  150. data/app/views/pageflow/help_entries/_menu_item.html.erb +7 -0
  151. data/app/views/pageflow/help_entries/_section.html.erb +3 -0
  152. data/app/views/pageflow/page_types/_page_type.json.jbuilder +1 -1
  153. data/app/views/pageflow/pages/_page.html.erb +1 -1
  154. data/app/views/pageflow/pages/_video_tag.html.erb +1 -1
  155. data/app/views/pageflow/pages/templates/_audio.html.erb +1 -1
  156. data/app/views/pageflow/pages/templates/_background_video.html.erb +1 -1
  157. data/app/views/pageflow/pages/templates/_video.html.erb +1 -1
  158. data/app/views/pageflow/social_share/_entry_meta_tags.html.erb +3 -0
  159. data/app/views/pageflow/social_share/_image_tags.html.erb +4 -0
  160. data/app/views/pageflow/social_share/_page_meta_tags.html.erb +3 -0
  161. data/app/views/pageflow/user_mailer/invitation.html.erb +4 -6
  162. data/app/views/pageflow/user_mailer/invitation.text.erb +5 -6
  163. data/config/initializers/help_entries.rb +17 -0
  164. data/config/locales/de.yml +1866 -2
  165. data/config/locales/en.yml +1800 -1
  166. data/config/routes.rb +2 -0
  167. data/db/migrate/20141128150305_add_locale_to_users.rb +5 -0
  168. data/db/migrate/20141208161030_add_locale_to_revisions.rb +5 -0
  169. data/lib/active_admin/patches/views/pages/base.rb +8 -0
  170. data/lib/generators/pageflow/{active_admin_menu/active_admin_menu_generator.rb → active_admin_initializer/active_admin_initializer_generator.rb} +3 -1
  171. data/lib/generators/pageflow/install/install_generator.rb +1 -1
  172. data/lib/pageflow.rb +6 -0
  173. data/lib/pageflow/built_in_page_type.rb +8 -0
  174. data/lib/pageflow/configuration.rb +29 -0
  175. data/lib/pageflow/engine.rb +8 -5
  176. data/lib/pageflow/help_entries.rb +55 -0
  177. data/lib/pageflow/help_entry.rb +19 -0
  178. data/lib/pageflow/page_type.rb +23 -33
  179. data/lib/pageflow/plugin.rb +13 -0
  180. data/lib/pageflow/user_mixin.rb +4 -0
  181. data/lib/pageflow/version.rb +1 -1
  182. data/vendor/assets/javascripts/jquery.ui.all.js +4 -0
  183. metadata +52 -39
  184. data/app/assets/javascripts/pageflow/editor/templates/help.jst.ejs.erb +0 -160
  185. data/config/locales/activeadmin.de.yml +0 -114
  186. data/config/locales/activerecord.de.yml +0 -182
  187. data/config/locales/admin/accounts.yml +0 -5
  188. data/config/locales/admin/entries.yml +0 -42
  189. data/config/locales/admin/folders.de.yml +0 -7
  190. data/config/locales/admin/revisions.yml +0 -4
  191. data/config/locales/admin/tabs.de.yml +0 -8
  192. data/config/locales/admin/themings.yml +0 -7
  193. data/config/locales/admin/users.yml +0 -26
  194. data/config/locales/admin/users/delete_me.de.yml +0 -7
  195. data/config/locales/admin/users/me.de.yml +0 -9
  196. data/config/locales/devise.de.yml +0 -72
  197. data/config/locales/devise.en.yml +0 -59
  198. data/config/locales/edit_locks.de.yml +0 -16
  199. data/config/locales/editor.de.yml +0 -64
  200. data/config/locales/editor/blank_entry.yml +0 -9
  201. data/config/locales/editor/quotas.de.yml +0 -4
  202. data/config/locales/formtastic.de.yml +0 -10
  203. data/config/locales/pageflow/audio.de.yml +0 -4
  204. data/config/locales/pageflow/editor/background_positioning.de.yml +0 -13
  205. data/config/locales/pageflow/editor/errors.de.yml +0 -6
  206. data/config/locales/pageflow/ui.de.yml +0 -6
  207. data/config/locales/pageflow/user_mailer.yml +0 -5
  208. data/config/locales/pageflow/widgets.de.yml +0 -14
  209. data/config/locales/quotas.de.yml +0 -3
  210. data/config/locales/rails.de.yml +0 -199
@@ -14,6 +14,7 @@ module Pageflow
14
14
  :emphasize_chapter_beginning,
15
15
  :emphasize_new_pages,
16
16
  :share_image_id, :share_image_x, :share_image_y,
17
+ :locale,
17
18
  :to => :revision)
18
19
 
19
20
  def initialize(entry, revision = nil)
@@ -31,7 +32,13 @@ module Pageflow
31
32
  end
32
33
 
33
34
  def thumbnail_url(*args)
34
- pages.first.try(:thumbnail_url, *args) || ImageFile.new.processed_attachment.url(*args)
35
+ thumbnail_file.thumbnail_url(*args)
36
+ end
37
+
38
+ def thumbnail_file
39
+ share_image_file ||
40
+ pages.first.try(:thumbnail_file) ||
41
+ PositionedFile.null
35
42
  end
36
43
 
37
44
  def self.find(id, scope = Entry)
@@ -51,5 +58,9 @@ module Pageflow
51
58
  def custom_revision?
52
59
  @custom_revision
53
60
  end
61
+
62
+ def share_image_file
63
+ PositionedFile.wrap(ImageFile.find_by_id(share_image_id), share_image_x, share_image_y)
64
+ end
54
65
  end
55
66
  end
@@ -45,6 +45,10 @@ module Pageflow
45
45
  super || NullUser.new
46
46
  end
47
47
 
48
+ def locale
49
+ super.presence || I18n.default_locale
50
+ end
51
+
48
52
  def pages
49
53
  super.tap { |p| p.first.is_first = true if p.present? }
50
54
  end
@@ -20,7 +20,7 @@ module Pageflow
20
20
  end
21
21
 
22
22
  def name
23
- I18n.t('admin.themings.name', :account_name => account.name, :theme_name => theme_name)
23
+ I18n.t('pageflow.admin.themings.name', :account_name => account.name, :theme_name => theme_name)
24
24
  end
25
25
  end
26
26
  end
@@ -1,23 +1,23 @@
1
1
  module Pageflow
2
2
  class ThumbnailFileResolver < Struct.new(:candidates, :configuration)
3
- class Null
4
- def thumbnail_url(*args)
5
- ImageFile.new.processed_attachment.url(*args)
6
- end
7
-
8
- def blank?
9
- true
10
- end
11
- end
12
-
13
3
  def find
14
4
  candidates.reduce(nil) do |result, candidate|
15
- result || file_model(candidate).find_by_id(record_id(candidate))
16
- end || Null.new
5
+ result || find_positioned_file_by_candiate(candidate)
6
+ end || PositionedFile.null
17
7
  end
18
8
 
19
9
  private
20
10
 
11
+ def find_positioned_file_by_candiate(candidate)
12
+ PositionedFile.wrap(find_file_by_candidate(candidate),
13
+ file_position(candidate, :x),
14
+ file_position(candidate, :y))
15
+ end
16
+
17
+ def find_file_by_candidate(candidate)
18
+ file_model(candidate).find_by_id(record_id(candidate))
19
+ end
20
+
21
21
  def file_model(candidate)
22
22
  file_type(candidate).model
23
23
  end
@@ -29,5 +29,13 @@ module Pageflow
29
29
  def record_id(candidate)
30
30
  configuration[candidate.fetch(:attribute)]
31
31
  end
32
+
33
+ def file_position(candidate, coordinate)
34
+ configuration[file_position_attribute(candidate, coordinate)]
35
+ end
36
+
37
+ def file_position_attribute(candidate, coordinate)
38
+ candidate.fetch(:attribute).gsub(/_id$/, "_#{coordinate}")
39
+ end
32
40
  end
33
41
  end
@@ -9,12 +9,12 @@ attributes_table_for entry do
9
9
  span :'data-published' => entry.published? do
10
10
  if entry.published?
11
11
  if entry.published_until
12
- I18n.t('admin.entries.published_until', :published_until => I18n.l(entry.published_until))
12
+ I18n.t('pageflow.admin.entries.published_until', :published_until => I18n.l(entry.published_until))
13
13
  else
14
- I18n.t('admin.entries.published_forever')
14
+ I18n.t('pageflow.admin.entries.published_forever')
15
15
  end
16
16
  else
17
- I18n.t('admin.entries.not_published')
17
+ I18n.t('pageflow.admin.entries.not_published')
18
18
  end
19
19
  end
20
20
  end
@@ -1,9 +1,9 @@
1
1
  para do
2
2
  if authorized?(:edit, Pageflow::Entry)
3
- span(link_to(I18n.t("admin.entries.editor"), pageflow.edit_entry_path(entry), :class => 'editor button'))
3
+ span(link_to(I18n.t('pageflow.admin.entries.editor'), pageflow.edit_entry_path(entry), :class => 'editor button'))
4
4
  end
5
- span(link_to(I18n.t("admin.entries.preview"), preview_admin_entry_path(entry), :class => 'preview button'))
5
+ span(link_to(I18n.t('pageflow.admin.entries.preview'), preview_admin_entry_path(entry), :class => 'preview button'))
6
6
  if entry.published?
7
- span(link_to(I18n.t("admin.entries.show_public"), pretty_entry_url(entry), :class => 'show_public button'))
7
+ span(link_to(I18n.t('pageflow.admin.entries.show_public'), pretty_entry_url(entry), :class => 'show_public button'))
8
8
  end
9
9
  end
@@ -2,7 +2,7 @@
2
2
  <%= f.inputs do %>
3
3
  <%= f.input(:published_until,
4
4
  :as => :string,
5
- :hint => t('admin.revisions.published_until_hint'),
5
+ :hint => t('pageflow.admin.revisions.published_until_hint'),
6
6
  :input_html => {
7
7
  :value => f.object.published_until && I18n.l(f.object.published_until.to_date)
8
8
  }) %>
@@ -7,13 +7,19 @@
7
7
  <%= quota_state_description(:users, @user.account) %>
8
8
  <% end %>
9
9
 
10
- <%= f.input :email, :hint => f.object.new_record? && I18n.t('admin.users.email_invitation_hint') %>
10
+ <%= f.input :email, :hint => f.object.new_record? && I18n.t('pageflow.admin.users.email_invitation_hint') %>
11
11
  <%= f.input :first_name %>
12
12
  <%= f.input :last_name %>
13
+ <%= f.input :locale,
14
+ as: :select,
15
+ include_blank: false,
16
+ collection: available_locales_collection %>
17
+
13
18
  <% if authorized?(:read, Pageflow::Account) %>
14
19
  <%= f.input :account, :include_blank => false %>
15
20
  <% end %>
16
- <%= f.input :role, :collection => collection_for_user_roles, :include_blank => false, :hint => authorized?(:read, Pageflow::Account) ? I18n.t('admin.users.role_hint.admin') : I18n.t('admin.users.role_hint.other') %>
21
+
22
+ <%= f.input :role, :collection => collection_for_user_roles, :include_blank => false, :hint => authorized?(:read, Pageflow::Account) ? I18n.t('pageflow.admin.users.role_hint.admin') : I18n.t('pageflow.admin.users.role_hint.others') %>
17
23
  <% end %>
18
24
  <%= f.actions %>
19
25
  <% end %>
@@ -1,12 +1,12 @@
1
1
  <%= semantic_form_for current_user, :url => delete_me_admin_users_path, :method => 'delete', :html => {:class => 'delete_account'} do |form| %>
2
2
  <%= form.inputs do %>
3
3
  <li>
4
- <p><%= t('.warning_html') %></p>
4
+ <p><%= t('pageflow.admin.users.delete_me.warning_html') %></p>
5
5
  </li>
6
6
  <%= form.input :current_password %>
7
7
  <% end %>
8
8
  <%= form.actions do %>
9
- <%= form.action :submit, :label => t('.delete_label') %>
10
- <%= form.action :cancel, :label => t('.cancel_label') %>
9
+ <%= form.action :submit, :label => t('pageflow.admin.users.delete_me.delete_label') %>
10
+ <%= form.action :cancel, :label => t('pageflow.admin.users.delete_me.cancel_label') %>
11
11
  <% end %>
12
12
  <% end %>
@@ -1,13 +1,21 @@
1
1
  <%= semantic_form_for current_user, :url => me_admin_users_path, :html => {:class => 'profile'} do |form| %>
2
2
  <%= form.inputs :first_name, :last_name %>
3
+
4
+ <%= form.inputs do %>
5
+ <%= form.input :locale,
6
+ as: :select,
7
+ include_blank: false,
8
+ collection: available_locales_collection %>
9
+ <% end %>
10
+
3
11
  <%= form.inputs do %>
4
- <%= form.input :current_password, :hint => t('.change_password_hint') %>
12
+ <%= form.input :current_password, :hint => t('pageflow.admin.users.me.change_password_hint') %>
5
13
  <%= form.input :password %>
6
14
  <%= form.input :password_confirmation %>
7
15
  <% end %>
8
16
  <%= form.actions %>
9
17
  <p>
10
- <%= t('.delete_account_hint') %>
11
- <%= link_to(t('.delete_account'), delete_me_admin_users_path, :class => 'delete_account') %>
18
+ <%= t('pageflow.admin.users.me.delete_account_hint') %>
19
+ <%= link_to(t('pageflow.admin.users.me.delete_account'), delete_me_admin_users_path, :class => 'delete_account') %>
12
20
  </p>
13
21
  <% end %>
@@ -12,7 +12,7 @@ module Pageflow
12
12
  else
13
13
  div :class => "blank_slate_container" do
14
14
  span :class => "blank_slate" do
15
- I18n.t('admin.accounts.no_entries')
15
+ I18n.t('pageflow.admin.accounts.no_entries')
16
16
  end
17
17
  end
18
18
  end
@@ -26,9 +26,9 @@ module Pageflow
26
26
  ul(:class => 'folders') do
27
27
  li('data-role' => 'all') do
28
28
  if @active_id
29
- link_to(t('admin.folders.all'), main_app.admin_entries_path, :class => 'name')
29
+ link_to(t('pageflow.admin.folders.all'), main_app.admin_entries_path, :class => 'name')
30
30
  else
31
- span(t('admin.folders.all'), :class => 'name')
31
+ span(t('pageflow.admin.folders.all'), :class => 'name')
32
32
  end
33
33
  end
34
34
  end
@@ -64,19 +64,19 @@ module Pageflow
64
64
  end
65
65
 
66
66
  def edit_folder_link(folder)
67
- link_to(t('admin.folders.edit'),
67
+ link_to(t('pageflow.admin.folders.edit'),
68
68
  main_app.edit_admin_folder_path(folder),
69
- :title => t('admin.folders.edit'),
69
+ :title => t('pageflow.admin.folders.edit'),
70
70
  :class => 'edit_folder')
71
71
  end
72
72
 
73
73
  def delete_folder_link(folder)
74
- link_to(t('admin.folders.destroy'),
74
+ link_to(t('pageflow.admin.folders.destroy'),
75
75
  main_app.admin_folder_path(folder),
76
76
  :method => :delete,
77
- :title => t('admin.folders.destroy'),
77
+ :title => t('pageflow.admin.folders.destroy'),
78
78
  :class => 'delete',
79
- :data => {:confirm => t('admin.folders.confirm_destroy')})
79
+ :data => {:confirm => t('pageflow.admin.folders.confirm_destroy')})
80
80
  end
81
81
 
82
82
  def folders_by_account(account)
@@ -4,7 +4,7 @@ module Pageflow
4
4
  def build(entry)
5
5
  if entry.memberships.any?
6
6
  table_for entry.memberships, :class => 'memberships' do
7
- column t('activerecord.attributes.user.full_name') do |membership|
7
+ column t('activerecord.attributes.user.full_name'), class: 'name' do |membership|
8
8
  if authorized? :manage, User
9
9
  link_to membership.user.full_name, admin_user_path(membership.user), :class => 'view_creator'
10
10
  else
@@ -13,20 +13,20 @@ module Pageflow
13
13
  end
14
14
  column do |membership|
15
15
  if authorized?(:destroy, membership)
16
- link_to(I18n.t('admin.entries.remove'), admin_entry_membership_path(membership.entry, membership), :method => :delete, :data => {:confirm => I18n.t('active_admin.delete_confirmation'), :rel => 'delete_membership'})
16
+ link_to(I18n.t('pageflow.admin.entries.remove'), admin_entry_membership_path(membership.entry, membership), :method => :delete, :data => {:confirm => I18n.t('active_admin.delete_confirmation'), :rel => 'delete_membership'})
17
17
  end
18
18
  end
19
19
  end
20
20
  else
21
21
  div :class => "blank_slate_container" do
22
22
  span :class => "blank_slate" do
23
- I18n.t('admin.entries.no_members')
23
+ I18n.t('pageflow.admin.entries.no_members')
24
24
  end
25
25
  end
26
26
  end
27
27
  if authorized? :manage, Pageflow::Entry
28
28
  span do
29
- link_to I18n.t('admin.users.add'), new_admin_entry_membership_path(entry), :class => 'button', :data => {:rel => 'add_member'}
29
+ link_to I18n.t('pageflow.admin.users.add'), new_admin_entry_membership_path(entry), :class => 'button', :data => {:rel => 'add_member'}
30
30
  end
31
31
  end
32
32
  end
@@ -2,7 +2,7 @@ module Pageflow
2
2
  module Admin
3
3
  class RevisionsTab < ViewComponent
4
4
  def build(entry)
5
- embedded_index_table entry.revisions, :blank_slate_text => I18n.t('admin.entries.no_revisions') do
5
+ embedded_index_table entry.revisions, :blank_slate_text => I18n.t('pageflow.admin.entries.no_revisions') do
6
6
  scope(:publications)
7
7
  scope(:publications_and_user_snapshots)
8
8
  scope(:frozen)
@@ -24,25 +24,25 @@ module Pageflow
24
24
  if revision.published_until
25
25
  I18n.l(revision.published_until)
26
26
  elsif revision.published?
27
- I18n.t('admin.entries.forever')
27
+ I18n.t('pageflow.admin.entries.forever')
28
28
  else
29
29
  '-'
30
30
  end
31
31
  end
32
32
  column :created_with do |revision|
33
- span(I18n.t(revision.created_with, :scope => 'admin.entries.revision_created_with'),
34
- :title => I18n.t(revision.created_with, :scope => 'admin.entries.revision_created_with_hint'))
33
+ span(I18n.t(revision.created_with, :scope => 'pageflow.admin.entries.revision_created_with'),
34
+ :title => I18n.t(revision.created_with, :scope => 'pageflow.admin.entries.revision_created_with_hint'))
35
35
  end
36
36
  column do |revision|
37
- text_node(link_to(t('admin.entries.show'), pageflow.revision_path(revision), :class => 'show'))
38
- text_node(link_to(t('admin.entries.restore'), restore_admin_revision_path(revision), :method => :post, :class => 'restore', :data => {:confirm => I18n.t('admin.entries.confirm_restore')}))
37
+ text_node(link_to(t('pageflow.admin.entries.show'), pageflow.revision_path(revision), :class => 'show'))
38
+ text_node(link_to(t('pageflow.admin.entries.restore'), restore_admin_revision_path(revision), :method => :post, :class => 'restore', :data => {:confirm => I18n.t('pageflow.admin.entries.confirm_restore')}))
39
39
  end
40
40
  end
41
41
  end
42
42
 
43
- para(I18n.t('admin.entries.published_revision_legend'), :class => 'legend published')
43
+ para(I18n.t('pageflow.admin.entries.published_revision_legend'), :class => 'legend published')
44
44
 
45
- text_node(button_to(t('admin.entries.snapshot'),
45
+ text_node(button_to(t('pageflow.admin.entries.snapshot'),
46
46
  snapshot_admin_entry_path(entry),
47
47
  :method => :post))
48
48
  end
@@ -12,7 +12,7 @@ module Pageflow
12
12
  else
13
13
  div :class => "blank_slate_container" do
14
14
  span :class => "blank_slate" do
15
- I18n.t('admin.accounts.no_members')
15
+ I18n.t('pageflow.admin.accounts.no_members')
16
16
  end
17
17
  end
18
18
  end
@@ -1,5 +1,5 @@
1
1
  <!DOCTYPE html>
2
- <html>
2
+ <%= content_tag(:html, lang: I18n.locale) do %>
3
3
  <head>
4
4
  <title><%= @page_title.presence || 'Pageflow' %></title>
5
5
 
@@ -24,4 +24,4 @@
24
24
  </script>
25
25
  <%= yield %>
26
26
  <% end %>
27
- </html>
27
+ <% end %>
@@ -1,3 +1,3 @@
1
1
  json.key_format!(camelize: :lower)
2
- json.(Pageflow.config, :confirm_encoding_jobs)
2
+ json.(Pageflow.config, :confirm_encoding_jobs, :available_locales)
3
3
  json.file_types(Pageflow.config.file_types, :collection_name, :type_name, :param_key, :i18n_key)
@@ -1,7 +1,9 @@
1
- <p>Hallo <%= @resource.first_name %>,</p>
1
+ <% I18n.with_locale(@resource.locale) do %>
2
+ <p><%= t('.salutation', first_name: @resource.first_name, last_name: @resource.last_name) %>,</p>
2
3
 
3
- <p>für dein persönliches Pageflow-Benutzerkonto wurde ein Link zur Passwortänderung angefordert. Du kannst diese Aktion durchführen, indem du folgenden Link anklickst.</p>
4
+ <p><%= t('.instruction') %></p>
4
5
 
5
- <p><%= link_to edit_password_url(@resource, :reset_password_token => @resource.reset_password_token), edit_password_url(@resource, :reset_password_token => @resource.reset_password_token) %></p>
6
+ <p><%= link_to edit_password_url(@resource, :reset_password_token => @resource.reset_password_token), edit_password_url(@resource, :reset_password_token => @resource.reset_password_token) %></p>
6
7
 
7
- <p>Falls Du diese Anfrage zur Passwortänderung gar nicht selbst gestartet hast, ignorier diese Mail einfach. Dein Passwort wird nicht geändert, bevor du den oben stehenden Link nicht bestätigt hast und im Anschluss ein neues Passwort anlegst.</p>
8
+ <p><%= t('.ignore_hint') %></p>
9
+ <% end %>
@@ -6,7 +6,7 @@ json.default_file_rights entry.account.default_file_rights
6
6
  json.published(entry.published?)
7
7
 
8
8
  json.configuration do
9
- json.(entry, :title, :summary, :credits, :manual_start, :emphasize_chapter_beginning, :emphasize_new_pages, :share_image_id, :share_image_x, :share_image_y)
9
+ json.(entry, :title, :summary, :credits, :manual_start, :emphasize_chapter_beginning, :emphasize_new_pages, :share_image_id, :share_image_x, :share_image_y, :locale)
10
10
  json.home_url entry.home_button.url_value
11
11
  json.home_button_enabled entry.home_button.enabled_value
12
12
  end
@@ -0,0 +1,6 @@
1
+ <div id="help_entries_seed">
2
+ <nav>
3
+ <%= help_entries_menu %>
4
+ </nav>
5
+ <%= help_entry_sections %>
6
+ </div>
@@ -0,0 +1,14 @@
1
+ {
2
+ "root": "<%= edit_entry_path(@entry).html_safe %>",
3
+ "config": <%= editor_config_seeds %>,
4
+
5
+ "entry": <%= render_json_seed(@entry) %>,
6
+ "chapters": <%= @entry.chapters.to_json.html_safe %>,
7
+ "pages": <%= @entry.pages.to_json.html_safe %>,
8
+
9
+ "files": <%= files_json_seeds(@entry) %>,
10
+
11
+ "theming": <%= render_json_seed(@entry.theming) %>,
12
+ "widget_types": <%= widget_types_json_seeds %>,
13
+ "page_types": <%= page_type_json_seeds %>
14
+ }
@@ -10,3 +10,6 @@ json.exhausted_html(render_html_partial('pageflow/editor/quotas/published_entrie
10
10
  entry: @entry_publication.entry,
11
11
  quota: @entry_publication.quota,
12
12
  account: @entry_publication.quota.account))
13
+ json.published_message_html(render_html_partial('published_message',
14
+ entry: @entry_publication.entry,
15
+ account: @entry_publication.quota.account))
@@ -5,13 +5,13 @@
5
5
 
6
6
  <%= render 'pageflow/entries/skip_links' %>
7
7
  <h1 class="hidden"><%= entry.title %></h1>
8
- <img src="<%= image_path("pageflow/themes/#{entry.theming.theme.directory_name}/logo_print.png") %>" class="print_image" alt="Logo image for print version">
8
+ <img src="<%= image_path("pageflow/themes/#{entry.theming.theme.directory_name}/logo_print.png") %>" class="print_image" alt="<%= t('.print_logo') %>">
9
9
  <span class="print_only page_url"><%= request.original_url %></span>
10
10
  <%= content_tag :div, :id => 'content', :class => 'entry', :data => {:role => 'slideshow'} do %>
11
11
  <%= render entry.pages %>
12
12
 
13
- <div class="scroll_indicator indicator">Scrollen, um weiterzulesen</div>
14
- <div class="hidden_text_indicator indicator">Wischen um Text wieder einzublenden</div>
13
+ <div class="scroll_indicator indicator"><%= t('.scroll_indicator') %></div>
14
+ <div class="hidden_text_indicator indicator"><%= t('.swipe_indicator') %></div>
15
15
  <% end %>
16
16
 
17
17
  <%= render 'pageflow/entries/header', :entry => entry %>