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
data/config/routes.rb CHANGED
@@ -24,6 +24,8 @@ Pageflow::Engine.routes.draw do
24
24
 
25
25
  namespace :editor do
26
26
  resources :entries, :only => :index, :shallow => true do
27
+ get :seed, :on => :member
28
+
27
29
  resources :files, :path => 'files/:collection_name', :only => [:index, :create, :update] do
28
30
  get :retry, :on => :member
29
31
  end
@@ -0,0 +1,5 @@
1
+ class AddLocaleToUsers < ActiveRecord::Migration
2
+ def change
3
+ add_column :users, :locale, :string
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ class AddLocaleToRevisions < ActiveRecord::Migration
2
+ def change
3
+ add_column :pageflow_revisions, :locale, :string
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ class ActiveAdmin::Views::Pages::Base
2
+ alias_method :original_build, :build
3
+
4
+ def build(*args)
5
+ original_build(*args)
6
+ set_attribute(:lang, I18n.locale)
7
+ end
8
+ end
@@ -1,11 +1,13 @@
1
1
  module Pageflow
2
2
  module Generators
3
- class ActiveAdminMenuGenerator < Rails::Generators::Base
3
+ class ActiveAdminInitializerGenerator < Rails::Generators::Base
4
4
  desc "Configure active admin utilitiy menu to contain profile link."
5
5
 
6
6
  def configure_active_admin
7
7
  inject_into_file 'config/initializers/active_admin.rb', after: "ActiveAdmin.setup do |config|\n" do
8
8
  <<-RUBY
9
+ Pageflow.active_admin_settings(config)
10
+
9
11
  config.namespace :admin do |admin|
10
12
  # Place a user user profile button next to the sign out link.
11
13
  admin.build_menu :utility_navigation do |menu|
@@ -17,7 +17,7 @@ module Pageflow
17
17
  invoke 'pageflow:routes'
18
18
  invoke 'pageflow:user'
19
19
  invoke 'pageflow:seeds'
20
- invoke 'pageflow:active_admin_menu'
20
+ invoke 'pageflow:active_admin_initializer'
21
21
 
22
22
  rake 'pageflow:install:migrations'
23
23
  end
data/lib/pageflow.rb CHANGED
@@ -59,4 +59,10 @@ module Pageflow
59
59
  mount Pageflow::Engine, at: '/'
60
60
  end
61
61
  end
62
+
63
+ def self.active_admin_settings(config)
64
+ config.before_filter do
65
+ I18n.locale = current_user.try(:locale) || I18n.default_locale
66
+ end
67
+ end
62
68
  end
@@ -28,6 +28,14 @@ module Pageflow
28
28
  "activerecord.values.pageflow/page.template.#{name}"
29
29
  end
30
30
 
31
+ def help_entry_translation_key
32
+ "pageflow.help_entries.built_in_page_type.#{name}"
33
+ end
34
+
35
+ def translation_key_prefix
36
+ "pageflow.built_in_page_type.#{name}"
37
+ end
38
+
31
39
  def thumbnail_candidates
32
40
  @thumbnail_candidates.presence || super
33
41
  end
@@ -68,6 +68,19 @@ module Pageflow
68
68
  # @return [WidgetTypes]
69
69
  attr_reader :widget_types
70
70
 
71
+ # Used to add new sections to the help dialog displayed in the
72
+ # editor.
73
+ #
74
+ # @exmaple
75
+ #
76
+ # config.help_entries.register('pageflow.rainbow.help_entries.colors', priority: 11)
77
+ # config.help_entries.register('pageflow.rainbow.help_entries.colors.blue',
78
+ # parent: 'pageflow.rainbow.help_entries.colors')
79
+ #
80
+ # @since 0.7
81
+ # @return [HelpEntries]
82
+ attr_reader :help_entries
83
+
71
84
  # Paperclip style definitions of thumbnails used by Pageflow.
72
85
  # @return Hash
73
86
  attr_accessor :thumbnail_styles
@@ -149,6 +162,11 @@ module Pageflow
149
162
  # @return [Admin::TabsRegistry]
150
163
  attr_reader :admin_resource_tabs
151
164
 
165
+ # Array of locales which can be chosen as interface language by a
166
+ # user or for an entry. Defaults to `I18n.available_locales`.
167
+ # @since 0.7
168
+ attr_accessor :available_locales
169
+
152
170
  def initialize
153
171
  @paperclip_filesystem_default_options = {}
154
172
  @paperclip_s3_default_options = {}
@@ -162,6 +180,7 @@ module Pageflow
162
180
  @themes = Themes.new
163
181
  @file_types = FileTypes.new(page_types)
164
182
  @widget_types = WidgetTypes.new
183
+ @help_entries = HelpEntries.new
165
184
 
166
185
  @thumbnail_styles = {}
167
186
  @css_rendered_thumbnail_styles = Pageflow::PagesHelper::CSS_RENDERED_THUMBNAIL_STYLES
@@ -173,6 +192,16 @@ module Pageflow
173
192
  @confirm_encoding_jobs = false
174
193
 
175
194
  @admin_resource_tabs = Pageflow::Admin::Tabs.new
195
+
196
+ @available_locales = Engine.config.i18n.available_locales
197
+ end
198
+
199
+ # Activate a plugin.
200
+ #
201
+ # @param [Plugin] plugin
202
+ # @since 0.7
203
+ def plugin(plugin)
204
+ plugin.configure(self)
176
205
  end
177
206
 
178
207
  # Make a page type available for use in the system.
@@ -6,6 +6,7 @@ require 'friendly_id'
6
6
  require 'devise'
7
7
  require 'cancan'
8
8
  require 'jbuilder'
9
+ require 'kramdown'
9
10
 
10
11
  require 'resque_mailer'
11
12
  require 'resque_scheduler'
@@ -13,13 +14,14 @@ require 'resque_scheduler'
13
14
  require 'active_admin'
14
15
  require 'active_admin/patches/views/attributes_table'
15
16
  require 'active_admin/patches/views/table_for'
17
+ require 'active_admin/patches/views/pages/base'
16
18
 
17
19
  require 'jquery-layout-rails'
18
20
  require 'videojs_rails'
19
21
  require 'backbone-rails'
20
22
  require 'marionette-rails'
21
23
  require 'jquery-fileupload-rails'
22
- require 'wysihtml5-rails'
24
+ require 'wysihtml5x/rails'
23
25
  require 'i18n-js'
24
26
 
25
27
  module Pageflow
@@ -31,7 +33,8 @@ module Pageflow
31
33
  config.autoload_paths << File.join(config.root, 'app', 'views', 'components')
32
34
 
33
35
  config.i18n.load_path += Dir[config.root.join('config', 'locales', '**', '*.yml').to_s]
34
- config.i18n.default_locale = :de
36
+ config.i18n.available_locales = [:en, :de]
37
+ config.i18n.default_locale = :en
35
38
 
36
39
  # Supress deprecation warning. This is the future default value of the option.
37
40
  I18n.config.enforce_available_locales = true
@@ -39,10 +42,10 @@ module Pageflow
39
42
  # FORCE RAILS TO MAKE I18N AVAILABLE TO ACTIVE ADMIN
40
43
  config.before_configuration do
41
44
  I18n.load_path += Dir[Engine.root.join('config', 'locales', '**', '*.yml').to_s]
42
- I18n.locale = :de
43
- I18n.default_locale = :de
45
+ I18n.locale = :en
46
+ I18n.default_locale = :en
44
47
  config.i18n.load_path += Dir[Engine.root.join('config', 'locales', '**', '*.yml').to_s]
45
- config.i18n.locale = :de
48
+ config.i18n.locale = :en
46
49
  # bypasses rails bug with i18n in production
47
50
  I18n.reload!
48
51
  config.i18n.reload!
@@ -0,0 +1,55 @@
1
+ module Pageflow
2
+ class HelpEntries
3
+ include Enumerable
4
+
5
+ def initialize
6
+ @help_entries = []
7
+ @help_entries_by_name = {}
8
+ end
9
+
10
+ # Add a section to the help dialog displayed in the editor.
11
+ #
12
+ # Translation keys for the help entry are derived from its name by
13
+ # appending ".menu_item" and ".text". Text is parsed as markdown.
14
+ #
15
+ # @param [String] name Translation key prefix
16
+ # @param [Hash] options
17
+ # @option options [String] :parent Name of the parent help entry
18
+ # @option options [Fixnum] :priority (10) Entries with higher
19
+ # priority come first in the entry list.
20
+ def register(name, options = {})
21
+ help_entry = HelpEntry.new(name, options)
22
+ @help_entries_by_name[name] = help_entry
23
+
24
+ collection = find_collection(options[:parent])
25
+
26
+ collection << help_entry
27
+ collection.sort_by! { |help_entry| -help_entry.priority }
28
+ end
29
+
30
+ # @api private
31
+ def flat
32
+ map do |help_entry|
33
+ [help_entry, help_entry.children]
34
+ end.flatten
35
+ end
36
+
37
+ def each(&block)
38
+ @help_entries.each(&block)
39
+ end
40
+
41
+ private
42
+
43
+ def find_collection(name)
44
+ if name
45
+ parent = @help_entries_by_name.fetch(name) do
46
+ throw "Help entry with name #{name} not found."
47
+ end
48
+
49
+ parent.children
50
+ else
51
+ @help_entries
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,19 @@
1
+ module Pageflow
2
+ class HelpEntry
3
+ attr_reader :name, :children
4
+
5
+ def initialize(name, options)
6
+ @name = name
7
+ @options = options
8
+ @children = []
9
+ end
10
+
11
+ def translation_key
12
+ name
13
+ end
14
+
15
+ def priority
16
+ @options.fetch(:priority, 10)
17
+ end
18
+ end
19
+ end
@@ -8,7 +8,29 @@ module Pageflow
8
8
 
9
9
  # Name to display in editor.
10
10
  def translation_key
11
- "pageflow.#{name}.page_type_name"
11
+ "#{translation_key_prefix}.page_type_name"
12
+ end
13
+
14
+ # Translation key for a one line description of the page type.
15
+ def description_translation_key
16
+ "#{translation_key_prefix}.page_type_description"
17
+ end
18
+
19
+ # Translation key for the category the page type shall be
20
+ # displayed in inside the page type select menu.
21
+ def category_translation_key
22
+ "#{translation_key_prefix}.page_type_category_name"
23
+ end
24
+
25
+ # Translation key for a markdown text fragment describing the page
26
+ # type.
27
+ def help_entry_translation_key
28
+ "#{translation_key_prefix}.help_entries.page_type"
29
+ end
30
+
31
+ # Common prefix of all page type translation keys.
32
+ def translation_key_prefix
33
+ "pageflow.#{name}"
12
34
  end
13
35
 
14
36
  # Override to return a string in snake_case.
@@ -136,37 +158,5 @@ module Pageflow
136
158
  name
137
159
  end
138
160
  end
139
-
140
- # Include in your engine if it mainly defines new page types. Sets
141
- # up load paths so you can place all files related to a page type
142
- # in a single directory. The following structure is proposed for a
143
- # page type engine:
144
- #
145
- # pageflow-rainbow/
146
- # page_types/
147
- # pageflow/
148
- # rainbow/
149
- # editor.js
150
- # page.html.erb
151
- # page_type.json.jbuilder
152
- # rainbow.css.scss
153
- # rainbow.js
154
- # lib/
155
- # pageflow/
156
- # rainbow/
157
- # engine.rb
158
- # page_type.rb
159
- #
160
- module Engine
161
- extend ActiveSupport::Concern
162
-
163
- included do
164
- paths["app/views"] << 'page_types'
165
-
166
- initializer :assets do |config|
167
- Rails.application.config.assets.paths << root.join('page_types')
168
- end
169
- end
170
- end
171
161
  end
172
162
  end
@@ -0,0 +1,13 @@
1
+ module Pageflow
2
+ # Base class for Pageflow extensions which perform more complex
3
+ # configuration changes.
4
+ #
5
+ # @since 0.7
6
+ class Plugin
7
+ # Override to configure Pageflow
8
+ #
9
+ # @param [Configuration] config
10
+ def configure(config)
11
+ end
12
+ end
13
+ end
@@ -41,6 +41,10 @@ module Pageflow
41
41
  [last_name, first_name] * ", "
42
42
  end
43
43
 
44
+ def locale
45
+ super.presence || I18n.default_locale
46
+ end
47
+
44
48
  def update_with_password(attributes)
45
49
  if needs_password?(attributes)
46
50
  super(attributes)
@@ -1,3 +1,3 @@
1
1
  module Pageflow
2
- VERSION = "0.6.0"
2
+ VERSION = "0.7.0"
3
3
  end
@@ -0,0 +1,4 @@
1
+ // In jquery-ui-rails version > 5.0 jquery.ui.*.{js,css} was renamed to jquery-ui/*.{js,css}
2
+ // This file is used by Active Admin to resolve jquery-ui dependency
3
+
4
+ //= require jquery-ui
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pageflow
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Codevise Solutions Ltd
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-15 00:00:00.000000000 Z
11
+ date: 2015-02-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -268,6 +268,20 @@ dependencies:
268
268
  - - ! '>='
269
269
  - !ruby/object:Gem::Version
270
270
  version: '0'
271
+ - !ruby/object:Gem::Dependency
272
+ name: kramdown
273
+ requirement: !ruby/object:Gem::Requirement
274
+ requirements:
275
+ - - ~>
276
+ - !ruby/object:Gem::Version
277
+ version: '1.5'
278
+ type: :runtime
279
+ prerelease: false
280
+ version_requirements: !ruby/object:Gem::Requirement
281
+ requirements:
282
+ - - ~>
283
+ - !ruby/object:Gem::Version
284
+ version: '1.5'
271
285
  - !ruby/object:Gem::Dependency
272
286
  name: videojs_rails
273
287
  requirement: !ruby/object:Gem::Requirement
@@ -302,14 +316,14 @@ dependencies:
302
316
  requirements:
303
317
  - - ~>
304
318
  - !ruby/object:Gem::Version
305
- version: '4.2'
319
+ version: '5.0'
306
320
  type: :runtime
307
321
  prerelease: false
308
322
  version_requirements: !ruby/object:Gem::Requirement
309
323
  requirements:
310
324
  - - ~>
311
325
  - !ruby/object:Gem::Version
312
- version: '4.2'
326
+ version: '5.0'
313
327
  - !ruby/object:Gem::Dependency
314
328
  name: jquery-layout-rails
315
329
  requirement: !ruby/object:Gem::Requirement
@@ -328,14 +342,14 @@ dependencies:
328
342
  name: jquery-fileupload-rails
329
343
  requirement: !ruby/object:Gem::Requirement
330
344
  requirements:
331
- - - ~>
345
+ - - '='
332
346
  - !ruby/object:Gem::Version
333
347
  version: 0.4.1
334
348
  type: :runtime
335
349
  prerelease: false
336
350
  version_requirements: !ruby/object:Gem::Requirement
337
351
  requirements:
338
- - - ~>
352
+ - - '='
339
353
  - !ruby/object:Gem::Version
340
354
  version: 0.4.1
341
355
  - !ruby/object:Gem::Dependency
@@ -395,19 +409,19 @@ dependencies:
395
409
  - !ruby/object:Gem::Version
396
410
  version: '0'
397
411
  - !ruby/object:Gem::Dependency
398
- name: wysihtml5-rails
412
+ name: wysihtml5x-rails
399
413
  requirement: !ruby/object:Gem::Requirement
400
414
  requirements:
401
- - - ! '>='
415
+ - - '='
402
416
  - !ruby/object:Gem::Version
403
- version: '0'
417
+ version: 0.4.17
404
418
  type: :runtime
405
419
  prerelease: false
406
420
  version_requirements: !ruby/object:Gem::Requirement
407
421
  requirements:
408
- - - ! '>='
422
+ - - '='
409
423
  - !ruby/object:Gem::Version
410
- version: '0'
424
+ version: 0.4.17
411
425
  - !ruby/object:Gem::Dependency
412
426
  name: bourbon
413
427
  requirement: !ruby/object:Gem::Requirement
@@ -775,6 +789,7 @@ files:
775
789
  - app/assets/javascripts/pageflow/admin/entries.js
776
790
  - app/assets/javascripts/pageflow/asset_urls.js.erb
777
791
  - app/assets/javascripts/pageflow/audio_player.js
792
+ - app/assets/javascripts/pageflow/audio_player/media_events.js
778
793
  - app/assets/javascripts/pageflow/bandwidth.js
779
794
  - app/assets/javascripts/pageflow/base.js
780
795
  - app/assets/javascripts/pageflow/built_in_widget_types.js
@@ -807,6 +822,7 @@ files:
807
822
  - app/assets/javascripts/pageflow/editor/initializers/setup_collections.js
808
823
  - app/assets/javascripts/pageflow/editor/initializers/setup_config.js
809
824
  - app/assets/javascripts/pageflow/editor/initializers/setup_file_types.js
825
+ - app/assets/javascripts/pageflow/editor/initializers/setup_help_entries.js
810
826
  - app/assets/javascripts/pageflow/editor/initializers/setup_page_types.js
811
827
  - app/assets/javascripts/pageflow/editor/initializers/setup_widget_types.js
812
828
  - app/assets/javascripts/pageflow/editor/models/audio_file.js
@@ -869,7 +885,7 @@ files:
869
885
  - app/assets/javascripts/pageflow/editor/templates/files_explorer.jst.ejs
870
886
  - app/assets/javascripts/pageflow/editor/templates/files_explorer_blank_slate.jst.ejs
871
887
  - app/assets/javascripts/pageflow/editor/templates/files_gallery_blank_slate.jst.ejs
872
- - app/assets/javascripts/pageflow/editor/templates/help.jst.ejs.erb
888
+ - app/assets/javascripts/pageflow/editor/templates/help.jst.ejs
873
889
  - app/assets/javascripts/pageflow/editor/templates/help_button.jst.ejs
874
890
  - app/assets/javascripts/pageflow/editor/templates/loading.jst.ejs
875
891
  - app/assets/javascripts/pageflow/editor/templates/locked.jst.ejs
@@ -944,6 +960,7 @@ files:
944
960
  - app/assets/javascripts/pageflow/history.js
945
961
  - app/assets/javascripts/pageflow/ie9.js
946
962
  - app/assets/javascripts/pageflow/jquery_utils.js
963
+ - app/assets/javascripts/pageflow/links.js
947
964
  - app/assets/javascripts/pageflow/lt_ie9.js
948
965
  - app/assets/javascripts/pageflow/manual_start.js
949
966
  - app/assets/javascripts/pageflow/page_type.js
@@ -986,6 +1003,7 @@ files:
986
1003
  - app/assets/javascripts/pageflow/ui/views/configuration_editor_tab_view.js
987
1004
  - app/assets/javascripts/pageflow/ui/views/configuration_editor_view.js
988
1005
  - app/assets/javascripts/pageflow/ui/views/inputs/check_box_input_view.js
1006
+ - app/assets/javascripts/pageflow/ui/views/inputs/extended_select_input_view.js
989
1007
  - app/assets/javascripts/pageflow/ui/views/inputs/file_input_view.js
990
1008
  - app/assets/javascripts/pageflow/ui/views/inputs/page_reference_input_view.js
991
1009
  - app/assets/javascripts/pageflow/ui/views/inputs/proxy_url_input_view.js
@@ -1002,6 +1020,7 @@ files:
1002
1020
  - app/assets/javascripts/pageflow/video_player/buffer_underrun_waiting.js
1003
1021
  - app/assets/javascripts/pageflow/video_player/filter_for_silk.js
1004
1022
  - app/assets/javascripts/pageflow/video_player/lazy.js
1023
+ - app/assets/javascripts/pageflow/video_player/media_events.js
1005
1024
  - app/assets/javascripts/pageflow/video_player/play_button_patch.js
1006
1025
  - app/assets/javascripts/pageflow/video_player/player_buffered_patch.js
1007
1026
  - app/assets/javascripts/pageflow/video_player/prebuffering.js
@@ -1104,13 +1123,16 @@ files:
1104
1123
  - app/assets/stylesheets/pageflow/text_variants.css.scss
1105
1124
  - app/assets/stylesheets/pageflow/themes/default.css.scss
1106
1125
  - app/assets/stylesheets/pageflow/themes/default/anchors.css.scss
1126
+ - app/assets/stylesheets/pageflow/themes/default/base.css.scss
1107
1127
  - app/assets/stylesheets/pageflow/themes/default/loading_spinner.css.scss
1108
1128
  - app/assets/stylesheets/pageflow/themes/default/navigation.css.scss
1109
1129
  - app/assets/stylesheets/pageflow/themes/default/overview.css.scss
1110
1130
  - app/assets/stylesheets/pageflow/themes/default/page.css.scss
1111
1131
  - app/assets/stylesheets/pageflow/themes/default/player_controls.css.scss
1132
+ - app/assets/stylesheets/pageflow/themes/default/variables.css.scss
1112
1133
  - app/assets/stylesheets/pageflow/ui.css.scss
1113
1134
  - app/assets/stylesheets/pageflow/ui/forms.css.scss
1135
+ - app/assets/stylesheets/pageflow/ui/input/extended_select_input.css.scss
1114
1136
  - app/assets/stylesheets/pageflow/ui/tabs_view.css.scss
1115
1137
  - app/assets/stylesheets/pageflow/video_player.css.scss
1116
1138
  - app/controllers/concerns/pageflow/edit_locking.rb
@@ -1128,6 +1150,7 @@ files:
1128
1150
  - app/controllers/pageflow/files_controller.rb
1129
1151
  - app/controllers/pageflow/pages_controller.rb
1130
1152
  - app/controllers/pageflow/revisions_controller.rb
1153
+ - app/helpers/pageflow/admin/locales_helper.rb
1131
1154
  - app/helpers/pageflow/admin/memberships_helper.rb
1132
1155
  - app/helpers/pageflow/admin/revisions_helper.rb
1133
1156
  - app/helpers/pageflow/admin/users_helper.rb
@@ -1138,6 +1161,7 @@ files:
1138
1161
  - app/helpers/pageflow/file_thumbnails_helper.rb
1139
1162
  - app/helpers/pageflow/files_helper.rb
1140
1163
  - app/helpers/pageflow/folders_helper.rb
1164
+ - app/helpers/pageflow/help_entries_helper.rb
1141
1165
  - app/helpers/pageflow/info_box_helper.rb
1142
1166
  - app/helpers/pageflow/media_query_helper.rb
1143
1167
  - app/helpers/pageflow/page_types_helper.rb
@@ -1176,6 +1200,7 @@ files:
1176
1200
  - app/models/pageflow/membership.rb
1177
1201
  - app/models/pageflow/null_user.rb
1178
1202
  - app/models/pageflow/page.rb
1203
+ - app/models/pageflow/positioned_file.rb
1179
1204
  - app/models/pageflow/published_entry.rb
1180
1205
  - app/models/pageflow/revision.rb
1181
1206
  - app/models/pageflow/theming.rb
@@ -1221,7 +1246,10 @@ files:
1221
1246
  - app/views/pageflow/editor/encoding_confirmations/check.json.jbuilder
1222
1247
  - app/views/pageflow/editor/entries/_analytics.html.erb
1223
1248
  - app/views/pageflow/editor/entries/_entry.json.jbuilder
1249
+ - app/views/pageflow/editor/entries/_help_entries_seed.html.erb
1224
1250
  - app/views/pageflow/editor/entries/index.json.jbuilder
1251
+ - app/views/pageflow/editor/entries/seed.json.erb
1252
+ - app/views/pageflow/editor/entry_publications/_published_message.html.erb
1225
1253
  - app/views/pageflow/editor/entry_publications/check.json.jbuilder
1226
1254
  - app/views/pageflow/editor/files/_file.json.jbuilder
1227
1255
  - app/views/pageflow/editor/files/create.json.jbuilder
@@ -1259,6 +1287,9 @@ files:
1259
1287
  - app/views/pageflow/entries/show.json.jbuilder
1260
1288
  - app/views/pageflow/file_types/_thumbnails.css.erb
1261
1289
  - app/views/pageflow/files/show.html.erb
1290
+ - app/views/pageflow/help_entries/_menu.html.erb
1291
+ - app/views/pageflow/help_entries/_menu_item.html.erb
1292
+ - app/views/pageflow/help_entries/_section.html.erb
1262
1293
  - app/views/pageflow/page_types/_page_type.json.jbuilder
1263
1294
  - app/views/pageflow/pages/_info_box.html.erb
1264
1295
  - app/views/pageflow/pages/_page.html.erb
@@ -1277,39 +1308,14 @@ files:
1277
1308
  - app/views/pageflow/user_mailer/invitation.text.erb
1278
1309
  - app/views/pageflow/video_files/_video_file.html.erb
1279
1310
  - config/initializers/admin_resource_tabs.rb
1311
+ - config/initializers/help_entries.rb
1280
1312
  - config/initializers/page_type_helpers.rb
1281
1313
  - config/initializers/paperclip.rb
1282
1314
  - config/initializers/view_components.rb
1283
1315
  - config/initializers/widget_types.rb
1284
1316
  - config/initializers/zencoder.rb
1285
- - config/locales/activeadmin.de.yml
1286
- - config/locales/activerecord.de.yml
1287
- - config/locales/admin/accounts.yml
1288
- - config/locales/admin/entries.yml
1289
- - config/locales/admin/folders.de.yml
1290
- - config/locales/admin/revisions.yml
1291
- - config/locales/admin/tabs.de.yml
1292
- - config/locales/admin/themings.yml
1293
- - config/locales/admin/users.yml
1294
- - config/locales/admin/users/delete_me.de.yml
1295
- - config/locales/admin/users/me.de.yml
1296
1317
  - config/locales/de.yml
1297
- - config/locales/devise.de.yml
1298
- - config/locales/devise.en.yml
1299
- - config/locales/edit_locks.de.yml
1300
- - config/locales/editor.de.yml
1301
- - config/locales/editor/blank_entry.yml
1302
- - config/locales/editor/quotas.de.yml
1303
1318
  - config/locales/en.yml
1304
- - config/locales/formtastic.de.yml
1305
- - config/locales/pageflow/audio.de.yml
1306
- - config/locales/pageflow/editor/background_positioning.de.yml
1307
- - config/locales/pageflow/editor/errors.de.yml
1308
- - config/locales/pageflow/ui.de.yml
1309
- - config/locales/pageflow/user_mailer.yml
1310
- - config/locales/pageflow/widgets.de.yml
1311
- - config/locales/quotas.de.yml
1312
- - config/locales/rails.de.yml
1313
1319
  - config/routes.rb
1314
1320
  - config/spring.rb
1315
1321
  - db/migrate/20140418225525_setup_schema.rb
@@ -1327,9 +1333,12 @@ files:
1327
1333
  - db/migrate/20141028125408_add_emphasize_chapter_beginning_to_revisions.rb
1328
1334
  - db/migrate/20141119164526_add_emphasize_new_pages_to_revisions.rb
1329
1335
  - db/migrate/20141119174032_add_sharing_image_to_revisions.rb
1336
+ - db/migrate/20141128150305_add_locale_to_users.rb
1337
+ - db/migrate/20141208161030_add_locale_to_revisions.rb
1330
1338
  - lib/active_admin/patches/views/attributes_table.rb
1339
+ - lib/active_admin/patches/views/pages/base.rb
1331
1340
  - lib/active_admin/patches/views/table_for.rb
1332
- - lib/generators/pageflow/active_admin_menu/active_admin_menu_generator.rb
1341
+ - lib/generators/pageflow/active_admin_initializer/active_admin_initializer_generator.rb
1333
1342
  - lib/generators/pageflow/assets/assets_generator.rb
1334
1343
  - lib/generators/pageflow/assets/templates/application.css.scss
1335
1344
  - lib/generators/pageflow/assets/templates/application.js
@@ -1361,8 +1370,11 @@ files:
1361
1370
  - lib/pageflow/engine.rb
1362
1371
  - lib/pageflow/file_type.rb
1363
1372
  - lib/pageflow/file_types.rb
1373
+ - lib/pageflow/help_entries.rb
1374
+ - lib/pageflow/help_entry.rb
1364
1375
  - lib/pageflow/hooks.rb
1365
1376
  - lib/pageflow/page_type.rb
1377
+ - lib/pageflow/plugin.rb
1366
1378
  - lib/pageflow/quota.rb
1367
1379
  - lib/pageflow/quotas.rb
1368
1380
  - lib/pageflow/revision_component.rb
@@ -1405,6 +1417,7 @@ files:
1405
1417
  - vendor/assets/javascripts/jquery.fullscreen.js
1406
1418
  - vendor/assets/javascripts/jquery.placeholder.js
1407
1419
  - vendor/assets/javascripts/jquery.simulate-events.js
1420
+ - vendor/assets/javascripts/jquery.ui.all.js
1408
1421
  - vendor/assets/javascripts/polyfills/bind.js
1409
1422
  - vendor/assets/javascripts/polyfills/get_computed_style.js
1410
1423
  homepage: http://www.pageflow.io