tenon 1.1.4 → 1.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (127) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/tenon/features/asset_detachment.js.coffee +1 -1
  3. data/app/assets/javascripts/tenon/features/asset_uploader.js.coffee +1 -1
  4. data/app/assets/javascripts/tenon/features/modal_windows.js.coffee +0 -2
  5. data/app/assets/javascripts/tenon/features/nested_fields.js +2 -2
  6. data/app/assets/javascripts/tenon/features/new_item_version_handler.js.coffee +2 -2
  7. data/app/assets/javascripts/tenon/features/protect_changes.js.coffee +1 -1
  8. data/app/assets/javascripts/tenon/features/record_approval.js.coffee +3 -3
  9. data/app/assets/javascripts/tenon/features/record_boolean_toggle.js.coffee +1 -1
  10. data/app/assets/javascripts/tenon/features/record_list.js.coffee +3 -3
  11. data/app/assets/javascripts/tenon/features/record_list_updater.js.coffee +1 -1
  12. data/app/assets/javascripts/tenon/features/tenon_content/asset_link.js.coffee +1 -1
  13. data/app/assets/javascripts/tenon/templates/assets/asset_field.jst.eco +2 -2
  14. data/app/assets/javascripts/tenon/templates/assets/asset_row.jst.eco +2 -2
  15. data/app/assets/javascripts/tenon/templates/assets/asset_select.jst.eco +1 -1
  16. data/app/assets/javascripts/tenon/templates/contacts/contact_row.jst.eco +9 -9
  17. data/app/assets/javascripts/tenon/templates/errors.jst.eco +2 -2
  18. data/app/assets/javascripts/tenon/templates/events/event_row.jst.eco +2 -2
  19. data/app/assets/javascripts/tenon/templates/item_versions/item_version_row.jst.eco +2 -2
  20. data/app/assets/javascripts/tenon/templates/pages/page_row.jst.eco +1 -1
  21. data/app/assets/javascripts/tenon/templates/post_categories/post_category_row.jst.eco +1 -1
  22. data/app/assets/javascripts/tenon/templates/posts/post_row.jst.eco +3 -3
  23. data/app/assets/javascripts/tenon/templates/users/user_row.jst.eco +2 -2
  24. data/app/controllers/tenon/assets_controller.rb +1 -1
  25. data/app/controllers/tenon/base_controller.rb +4 -4
  26. data/app/controllers/tenon/comments_controller.rb +2 -2
  27. data/app/controllers/tenon/contacts_controller.rb +4 -4
  28. data/app/controllers/tenon/resources_controller.rb +3 -3
  29. data/app/decorators/tenon/asset_decorator.rb +3 -3
  30. data/app/decorators/tenon/comment_decorator.rb +1 -1
  31. data/app/decorators/tenon/contact_decorator.rb +2 -2
  32. data/app/decorators/tenon/event_decorator.rb +2 -2
  33. data/app/helpers/tenon/application_helper.rb +6 -0
  34. data/app/helpers/tenon/asset_helper.rb +1 -1
  35. data/app/helpers/tenon/item_version_helper.rb +5 -5
  36. data/app/helpers/tenon/tenon_content_helper.rb +1 -1
  37. data/app/helpers/tenon/tenon_helper.rb +7 -7
  38. data/app/mailers/tenon/comment_mailer.rb +1 -1
  39. data/app/mailers/tenon/contact_mailer.rb +1 -1
  40. data/app/models/tenon/asset.rb +1 -1
  41. data/app/models/tenon/page.rb +3 -3
  42. data/app/models/tenon/tenon_content/row_types.rb +17 -17
  43. data/app/views/layouts/tenon/application.html.haml +4 -0
  44. data/app/views/layouts/tenon/login.html.haml +3 -0
  45. data/app/views/tenon/assets/_form.html.haml +2 -2
  46. data/app/views/tenon/assets/_sidebar_index.html.haml +6 -6
  47. data/app/views/tenon/assets/crop.html.haml +3 -4
  48. data/app/views/tenon/assets/edit.html.haml +1 -1
  49. data/app/views/tenon/assets/index.html.haml +2 -2
  50. data/app/views/tenon/comment_mailer/comment_notification.html.haml +2 -2
  51. data/app/views/tenon/comments/_sidebar_index.html.haml +6 -6
  52. data/app/views/tenon/comments/index.html.haml +2 -2
  53. data/app/views/tenon/comments/index.json.jbuilder +1 -1
  54. data/app/views/tenon/contact_mailer/contact_notification.html.haml +4 -4
  55. data/app/views/tenon/contacts/_sidebar_index.html.haml +8 -8
  56. data/app/views/tenon/contacts/index.html.haml +2 -2
  57. data/app/views/tenon/contacts/index.json.jbuilder +4 -4
  58. data/app/views/tenon/events/_form.html.haml +7 -7
  59. data/app/views/tenon/events/edit.html.haml +1 -1
  60. data/app/views/tenon/events/index.html.haml +4 -4
  61. data/app/views/tenon/events/index.json.jbuilder +1 -1
  62. data/app/views/tenon/events/new.html.haml +1 -1
  63. data/app/views/tenon/fields/_asset.html.haml +3 -3
  64. data/app/views/tenon/galleries/_form.html.haml +7 -7
  65. data/app/views/tenon/galleries/edit.html.haml +1 -1
  66. data/app/views/tenon/galleries/index.html.haml +5 -5
  67. data/app/views/tenon/galleries/new.html.haml +1 -1
  68. data/app/views/tenon/index/index.html.haml +4 -4
  69. data/app/views/tenon/item_assets/new.html.haml +6 -6
  70. data/app/views/tenon/item_versions/_item_version.json.jbuilder +4 -4
  71. data/app/views/tenon/item_versions/index.html.haml +2 -5
  72. data/app/views/tenon/item_versions/new.html.haml +1 -1
  73. data/app/views/tenon/pages/_form.html.haml +14 -14
  74. data/app/views/tenon/pages/edit.html.haml +1 -1
  75. data/app/views/tenon/pages/index.html.haml +5 -5
  76. data/app/views/tenon/pages/index.json.jbuilder +4 -4
  77. data/app/views/tenon/pages/new.html.haml +1 -1
  78. data/app/views/tenon/post_categories/_form.html.haml +1 -1
  79. data/app/views/tenon/post_categories/_post_category.json.jbuilder +1 -1
  80. data/app/views/tenon/post_categories/index.html.haml +5 -5
  81. data/app/views/tenon/posts/_form.html.haml +14 -14
  82. data/app/views/tenon/posts/edit.html.haml +1 -1
  83. data/app/views/tenon/posts/index.html.haml +6 -6
  84. data/app/views/tenon/posts/index.json.jbuilder +2 -2
  85. data/app/views/tenon/posts/new.html.haml +1 -1
  86. data/app/views/tenon/redirects/_form.html.haml +10 -10
  87. data/app/views/tenon/redirects/_redirect.json.jbuilder +1 -1
  88. data/app/views/tenon/redirects/edit.html.haml +1 -1
  89. data/app/views/tenon/redirects/index.html.haml +8 -8
  90. data/app/views/tenon/redirects/new.html.haml +1 -1
  91. data/app/views/tenon/settings/_contact.html.haml +8 -8
  92. data/app/views/tenon/settings/_general.html.haml +4 -4
  93. data/app/views/tenon/settings/_seo.html.haml +4 -4
  94. data/app/views/tenon/settings/show.html.haml +9 -9
  95. data/app/views/tenon/shared/_i18n_language_nav.html.haml +3 -3
  96. data/app/views/tenon/shared/_main_nav.html.haml +11 -11
  97. data/app/views/tenon/shared/_posts_nav.html.haml +3 -3
  98. data/app/views/tenon/shared/_seo_fields.html.haml +3 -3
  99. data/app/views/tenon/shared/_util_nav.html.haml +2 -2
  100. data/app/views/tenon/shared/_version_warning.html.haml +5 -6
  101. data/app/views/tenon/shared/menu_items/_comments.html.haml +1 -1
  102. data/app/views/tenon/shared/menu_items/_events.html.haml +2 -2
  103. data/app/views/tenon/shared/menu_items/_galleries.html.haml +2 -2
  104. data/app/views/tenon/shared/menu_items/_pages.html.haml +2 -2
  105. data/app/views/tenon/shared/menu_items/_posts.html.haml +2 -2
  106. data/app/views/tenon/shared/section_header/_quick_search.html.haml +1 -1
  107. data/app/views/tenon/tenon_callouts/_form.html.haml +7 -9
  108. data/app/views/tenon/tenon_callouts/edit.html.haml +1 -1
  109. data/app/views/tenon/tenon_callouts/index.html.haml +5 -5
  110. data/app/views/tenon/tenon_callouts/new.html.haml +1 -1
  111. data/app/views/tenon/tenon_content/_builder.html.haml +2 -2
  112. data/app/views/tenon/tenon_content/_display.html.haml +3 -3
  113. data/app/views/tenon/tenon_content/_embed_modal.html.haml +3 -3
  114. data/app/views/tenon/tenon_content/_fields.html.haml +9 -10
  115. data/app/views/tenon/tenon_content/_row.html.haml +4 -4
  116. data/app/views/tenon/tenon_content/piece_types/form/_background_image.html.haml +6 -6
  117. data/app/views/tenon/tenon_content/piece_types/form/_embedded_content.html.haml +1 -2
  118. data/app/views/tenon/tenon_content/piece_types/form/_image.html.haml +17 -17
  119. data/app/views/tenon/users/_form.html.haml +11 -11
  120. data/app/views/tenon/users/edit.html.haml +1 -1
  121. data/app/views/tenon/users/index.html.haml +5 -5
  122. data/app/views/tenon/users/index.json.jbuilder +3 -3
  123. data/app/views/tenon/users/new.html.haml +1 -1
  124. data/config/locales/tenon.en.yml +313 -0
  125. data/lib/tenon/version.rb +1 -1
  126. metadata +4 -4
  127. data/app/models/tenon/thinger.rb +0 -4
@@ -21,8 +21,8 @@
21
21
  %li
22
22
  = link_to edit_user_path(current_user) do
23
23
  .header-icon= fa_icon('fw gear')
24
- .header-label Edit Info
24
+ .header-label= t('tenon.users.edit_info')
25
25
  %li
26
26
  = link_to destroy_user_session_path, method: :delete do
27
27
  .header-icon= fa_icon('fw sign-out')
28
- .header-label Sign Out
28
+ .header-label= t('tenon.users.sign_out')
@@ -1,14 +1,13 @@
1
1
  .flash.flash-notice
2
- %p
3
- You are viewing a draft version of this resource. Hitting save will replace the active version with this version.
2
+ %p= t('tenon.item_versions.you_are_viewing_a_draft')
4
3
 
5
- %p Auto-saving is disabled when you are viewing a draft version.
4
+ %p= t('tenon.item_versions.auto_saving_is_disabled')
6
5
 
7
6
  %p
8
7
  %small
9
- Draft
8
+ = t('tenon.item_versions.draft')
10
9
  - unless @item_version.title.blank?
11
10
  %strong "#{@item_version.title}"
12
- was created on #{@item_version.created_at.strftime('%m/%d/%Y at %l:%M %p')}
13
- by #{@item_version.user.try(:email)}
11
+ #{t('tenon.item_versions.was_created_on')} #{@item_version.created_at.strftime('%m/%d/%Y')} #{t('tenon.common.at')} #{@item_version.created_at.strftime('%l:%M %p')}
12
+ #{t('tenon.item_versions.by')} #{@item_version.user.try(:email)}
14
13
  =link_to fa_icon('times'), '#', id: 'flash-dismiss'
@@ -1,2 +1,2 @@
1
1
  - if can?(:index, Comment)
2
- = tenon_menu_item "Comments", comments_path, :active => is_active("comments"), :submenu => false
2
+ = tenon_menu_item t('tenon.comments.comments'), comments_path, :active => is_active("comments"), :submenu => false
@@ -2,5 +2,5 @@
2
2
  = tenon_menu_item item, events_path, :active => is_active("events"), :submenu => can?(:create, Event)
3
3
  - if can?(:create, Event)
4
4
  %ul.tenon_submenu{ :class => is_active(["events"]) ? "#{item} active" : item }
5
- = link_to "New Event", new_event_path, :class => ("active" if is_active(["events"]) && params[:action] == "new")
6
- .spacer
5
+ = link_to t('tenon.events.new_event'), new_event_path, :class => ("active" if is_active(["events"]) && params[:action] == "new")
6
+ .spacer
@@ -2,5 +2,5 @@
2
2
  = tenon_menu_item item, galleries_path, :active => is_active("galleries"), :submenu => can?(:create, Gallery)
3
3
  - if can?(:create, Gallery)
4
4
  %ul.tenon_submenu{ :class => is_active(["galleries"]) ? "#{item} active" : item }
5
- = link_to "New Gallery", new_gallery_path, :class => ("active" if is_active(["galleries"]) && params[:action] == "new")
6
- .spacer
5
+ = link_to t('tenon.galleries.new_gallery'), new_gallery_path, :class => ("active" if is_active(["galleries"]) && params[:action] == "new")
6
+ .spacer
@@ -2,5 +2,5 @@
2
2
  = tenon_menu_item item, pages_path, :active => is_active("pages"), :submenu => can?(:create, Page)
3
3
  - if can?(:create, Page)
4
4
  %ul.tenon_submenu{ :class => is_active(["pages"]) ? "#{item} active" : item }
5
- = link_to "New Page", new_page_path, :class => ("active" if is_active(["pages"]) && params[:action] == "new")
6
- .spacer
5
+ = link_to t('tenon.pages.new_page'), new_page_path, :class => ("active" if is_active(["pages"]) && params[:action] == "new")
6
+ .spacer
@@ -2,6 +2,6 @@
2
2
  = tenon_menu_item item, posts_path, :active => is_active(["posts", "post_categories"]), :submenu => can?(:create, Post) || can?(:index, PostCategory)
3
3
  - if can?(:create, Post) || can?(:index, PostCategory)
4
4
  %ul.tenon_submenu{ :class => is_active(["posts", "post_categories"]) ? "#{item} active" : item }
5
- = link_to "New Post", new_post_path, :class => ("active" if params[:controller] == "tenon/posts" && params[:action] == "new") if can?(:create, Post)
6
- = link_to "Post Categories", post_categories_path, :class => ("active" if params[:controller] == "tenon/post_categories") if can?(:index, PostCategory)
5
+ = link_to t('tenon.posts.new_post'), new_post_path, :class => ("active" if params[:controller] == "tenon/posts" && params[:action] == "new") if can?(:create, Post)
6
+ = link_to t('tenon.post_categories.post_categories'), post_categories_path, :class => ("active" if params[:controller] == "tenon/post_categories") if can?(:index, PostCategory)
7
7
  .spacer
@@ -1,3 +1,3 @@
1
1
  #quick-search-container
2
2
  %ul
3
- %li= text_field_tag :q, params[:q], id: 'quick-search', class: 'search', placeholder: 'SEARCH', data: { 'record-list' => record_list }
3
+ %li= text_field_tag :q, params[:q], id: 'quick-search', class: 'search', placeholder: t('tenon.common.search'), data: { 'record-list' => record_list }
@@ -1,8 +1,8 @@
1
1
  - content_for :sidebar do
2
2
  .sidebar
3
3
  .content
4
- %h2 Tenon Callouts
5
- = link_to "New Tenon Callout", new_tenon_callout_path, class: 'btn btn-block btn-primary'
4
+ %h2= t('tenon.tenon_callouts.tenon_callouts')
5
+ = link_to t('tenon.tenon_callouts.new_tenon_callout'), new_tenon_callout_path, class: 'btn btn-block btn-primary'
6
6
 
7
7
  = form_for @tenon_callout, builder: Tenon::FormBuilder do |f|
8
8
  = error_messages_for :tenon_callout
@@ -15,7 +15,7 @@
15
15
  = f.text_area :content
16
16
 
17
17
  .fields.small
18
- %h4.box-label Details
18
+ %h4.box-label= t('tenon.common.details')
19
19
  .box
20
20
  .form-group.bordered
21
21
  = f.text_field :button_text, :placeholder => '--'
@@ -26,22 +26,20 @@
26
26
 
27
27
  .form-group.bordered.inline
28
28
  = f.check_box :new_window, class: 'tn-checkbox-right'
29
- = f.super_label :new_window, 'Open in New Window'
29
+ = f.super_label :new_window, t('tenon.tenon_callouts.open_in_new_window')
30
30
 
31
- %h4.box-label Actions
31
+ %h4.box-label= t('tenon.common.actions')
32
32
  .box
33
33
  .form-group.inline
34
34
  = f.check_box :published, class: 'tn-checkbox-right'
35
35
  = f.super_label :published
36
36
 
37
37
  .content
38
- %button.btn.btn-comp.submit.btn-block{:href => 'javascript:;', data: { disable_with: "Please wait..." } } Save
38
+ %button.btn.btn-comp.submit.btn-block{ :href => 'javascript:;', data: { disable_with: t('tenon.common.please_wait') } }= t('tenon.common.save')
39
39
 
40
40
  - if @tenon_callout.persisted?
41
41
  %hr
42
42
  .content
43
- = link_to "Delete", @tenon_callout, data: {method: :delete, confirm: 'Are you sure you want to delete this?'}, :class => 'delete-link'
44
-
45
-
43
+ = link_to t('tenon.common.delete'), @tenon_callout, data: { method: :delete, confirm: t('tenon.common.are_you_sure') }, :class => 'delete-link'
46
44
 
47
45
  .spacer
@@ -1,5 +1,5 @@
1
1
  %header
2
- %h1 Edit a Tenon Callout
2
+ %h1= t('tenon.tenon_callouts.edit_a_tenon_callout')
3
3
 
4
4
  .tools
5
5
  = render "tenon/shared/section_header/sidebar_toggle"
@@ -1,11 +1,11 @@
1
1
  - content_for :sidebar do
2
2
  .sidebar
3
3
  .content
4
- %h2 Tenon Callouts
5
- = link_to "New Tenon Callout", new_tenon_callout_path, class: 'btn btn-block btn-primary'
4
+ %h2= t('tenon.tenon_callouts.tenon_callouts')
5
+ = link_to t('tenon.tenon_callouts.new_tenon_callout'), new_tenon_callout_path, class: 'btn btn-block btn-primary'
6
6
 
7
7
  %header
8
- %h1 Tenon Callouts
8
+ %h1= t('tenon.tenon_callouts.tenon_callouts')
9
9
 
10
10
  .tools
11
11
  = render "tenon/shared/section_header/sidebar_toggle"
@@ -19,6 +19,6 @@
19
19
 
20
20
  .main-content
21
21
  = error_messages_for :tenon_callout
22
- %ul#tenon_callouts.record-list.sortable{data: {records: {url: tenon_callouts_path(format: 'json'), template: 'tenon/templates/tenon_callouts/tenon_callout_row', name: 'tenon_callout'}, :'reorder-path' => reorder_tenon_callouts_path}}
22
+ %ul#tenon_callouts.record-list.sortable{ data: { records: { url: tenon_callouts_path(format: 'json'), template: 'tenon/templates/tenon_callouts/tenon_callout_row', name: 'tenon_callout' }, :'reorder-path' => reorder_tenon_callouts_path } }
23
23
 
24
- = link_to "Load More Callouts", '#', :class => 'btn btn-comp infinite-loader', 'data-record-list' => '#tenon_callouts'
24
+ = link_to t('tenon.tenon_callouts.load_more'), '#', :class => 'btn btn-comp infinite-loader', 'data-record-list' => '#tenon_callouts'
@@ -1,5 +1,5 @@
1
1
  %header
2
- %h1 New Tenon Callout
2
+ %h1= t('tenon.tenon_callouts.new_tenon_callout')
3
3
 
4
4
  .tools
5
5
  = render "tenon/shared/section_header/sidebar_toggle"
@@ -3,8 +3,8 @@
3
3
  .i18n-frame
4
4
  .i18n.en.active= render 'tenon/tenon_content/fields', field: field, f: f
5
5
  - Tenon.config.languages.each do |title, lang|
6
- .i18n{class: lang}= render 'tenon/tenon_content/fields', field: "#{field}_#{lang}", lang: lang, lang_title: title, f: f
6
+ .i18n{ class: lang }= render 'tenon/tenon_content/fields', field: "#{field}_#{lang}", lang: lang, lang_title: title, f: f
7
7
  - else
8
8
  = render 'tenon/tenon_content/fields', field: field, f: f
9
9
 
10
- = render 'tenon/tenon_content/embed_modal'
10
+ = render 'tenon/tenon_content/embed_modal'
@@ -1,6 +1,6 @@
1
- .tn-tc-holder{data: {'record-type' => object.class.to_s, 'record-id' => object.id, 'field' => field}}
2
- .tenon-content{id: "#{field}-tenon-content"}
1
+ .tn-tc-holder{ data: { 'record-type' => object.class.to_s, 'record-id' => object.id, 'field' => field } }
2
+ .tenon-content{ id: "#{field}-tenon-content" }
3
3
  - object.send("#{field}_tenon_content_rows").decorate.each do |row|
4
4
  .tn-tc-row
5
5
  .tn-tc-fields= render row.partial, row: row
6
- .spacer
6
+ .spacer
@@ -1,10 +1,10 @@
1
1
  /- Shared Embed Code Modal Body
2
2
  .edit-embed-code
3
3
  .modal-body
4
- %label{for: 'embed_code'} Paste your embed code here
4
+ %label{ for: 'embed_code' }= t('tenon.tenon_content.paste_your_embed_code_here')
5
5
  %p.explanation
6
- Note: In order to get your embed to work with various screen sizes, you may want to get a code from
6
+ = t('tenon.tenon_content.note_in_order_to_get_your_embed_to_work')
7
7
  = link_to 'http://embedresponsively.com/', 'http://embedresponsively.com/', target: '_'
8
8
  = text_area_tag 'embed_code'
9
9
 
10
- .modal-footer= link_to 'Update', '#', class: 'btn btn-comp update-embed-code'
10
+ .modal-footer= link_to t('tenon.tenon_content.update'), '#', class: 'btn btn-comp update-embed-code'
@@ -1,4 +1,4 @@
1
- .tn-tc{class: field}
1
+ .tn-tc{ class: field }
2
2
  %label
3
3
  - if defined?(lang)
4
4
  = field.gsub("_#{lang}", '').to_s.titleize
@@ -7,25 +7,24 @@
7
7
  = field.to_s.titleize
8
8
 
9
9
  .explanation
10
- Select rows from the library to build this section.
11
- You can format your text by highlighting it and selecting options from the pop-up menu.
10
+ = t('tenon.tenon_content.select_rows_from_the_library')
11
+ = t('tenon.tenon_content.you_can_format_your_text')
12
12
 
13
13
  .tn-tc-main-actions
14
14
  = link_to '#', class: 'tn-tc-pop-out btn btn-primary' do
15
15
  = fa_icon('eye')
16
- %span Edit in Preview Mode
16
+ %span= t('tenon.tenon_content.edit_in_preview_mode')
17
17
 
18
- = link_to '#', class: 'tn-tc-add-content btn btn-primary initial-row', data: { modal_target: ".tenon-library", modal_closest: '.tn-tc', modal_clone: 'true', modal_title: 'Add Content', modal_handler: 'Tenon.features.tenonContent.Library' } do
18
+ = link_to '#', class: 'tn-tc-add-content btn btn-primary initial-row', data: { modal_target: ".tenon-library", modal_closest: '.tn-tc', modal_clone: 'true', modal_title: t('tenon.tenon_content.add_content'), modal_handler: 'Tenon.features.tenonContent.Library' } do
19
19
  = fa_icon('plus-circle')
20
- %span Add Content
20
+ %span= t('tenon.tenon_content.add_content')
21
21
 
22
22
  .tn-tc-wrap
23
23
  .tn-tc-sizes
24
- %h2 Preview Mode
25
- %p
26
- Use preview mode to see how your content will look on different devices. You can still make edits when you're in preview mode, but the toolbars are hidden to give you a better picture of how your content will be laid out.
24
+ %h2= t('tenon.tenon_content.preview_mode')
25
+ %p= t('tenon.tenon_content.use_preview_mode_to_see')
27
26
  = tenon_content_sizes
28
- = link_to 'Done', '#', class: 'tn-tc-pop-out-close btn btn-comp'
27
+ = link_to t('tenon.tenon_content.done'), '#', class: 'tn-tc-pop-out-close btn btn-comp'
29
28
  .tenon-content
30
29
  = f.fields_for "#{field}_tenon_content_rows" do |row|
31
30
  - if row.object
@@ -1,13 +1,13 @@
1
- .tn-tc-row{:style => ("display: none;" if f.object._destroy)}
1
+ .tn-tc-row{ :style => ("display: none;" if f.object._destroy) }
2
2
  = f.hidden_field :item_method, value: field
3
3
  .tn-tc-topbar
4
4
  .actions
5
5
  %i.fa.fa-arrows.drag-anchor
6
6
 
7
- = link_to '#', class: 'tn-tc-open-library above', data: { modal_target: ".tenon-library", modal_closest: '.tn-tc', modal_title: "Insert Content", modal_handler: 'Tenon.features.tenonContent.Library', modal_clone: 'true', tooltip: '' }, title: 'Insert Content' do
7
+ = link_to '#', class: 'tn-tc-open-library above', data: { modal_target: ".tenon-library", modal_closest: '.tn-tc', modal_title: t('tenon.tenon_content.insert_content'), modal_handler: 'Tenon.features.tenonContent.Library', modal_clone: 'true', tooltip: '' }, title: t('tenon.tenon_content.insert_content') do
8
8
  %i.fa.fa-fw.fa-plus-circle
9
9
 
10
- = link_to_remove_association(fa_icon('trash-o'), f, {'data-confirm' => 'Are you sure?', 'data-wrapper-class' => 'tn-tc-row'})
10
+ = link_to_remove_association(fa_icon('trash-o'), f, { 'data-confirm' => t('tenon.common.are_you_sure'), 'data-wrapper-class' => 'tn-tc-row' })
11
11
 
12
12
  .spacer
13
13
 
@@ -15,5 +15,5 @@
15
15
 
16
16
  .tn-tc-bottombar
17
17
  .actions
18
- = link_to '#', class: 'tn-tc-open-library below', data: { modal_target: ".tenon-library", modal_closest: '.tn-tc', modal_title: "Insert Content", modal_handler: 'Tenon.features.tenonContent.Library', modal_clone: 'true', modal_closest: '.tn-tc', tooltip: ''}, title: 'Insert Content' do
18
+ = link_to '#', class: 'tn-tc-open-library below', data: { modal_target: ".tenon-library", modal_closest: '.tn-tc', modal_title: t('tenon.tenon_content.insert_content'), modal_handler: 'Tenon.features.tenonContent.Library', modal_clone: 'true', modal_closest: '.tn-tc', tooltip: '' }, title: t('tenon.tenon_content.insert_content') do
19
19
  %i.fa.fa-fw.fa-plus-circle
@@ -2,20 +2,20 @@
2
2
  = f.hidden_field :position
3
3
  = f.hidden_field :size
4
4
  = f.hidden_field :stretch_to_fill
5
- .image{class: 'stretch'}
5
+ .image{ class: 'stretch' }
6
6
  - if f.object.image
7
7
  = backend_piece_image_tag(f.object)
8
8
  - else
9
- = link_to(new_item_asset_path, class: 'add-image', data: {'modal-remote' => true, 'modal-title' => 'Select Image', 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment'}) do
10
- %span Add Image
9
+ = link_to(new_item_asset_path, class: 'add-image', data: { 'modal-remote' => true, 'modal-title' => t('tenon.tenon_content.select_image'), 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment' }) do
10
+ %span= t('tenon.tenon_content.add_image')
11
11
 
12
- .medium-editor-toolbar.medium-toolbar-arrow-under.medium-editor-toolbar-active.image-controls{style: 'display: none; margin-top: -65px;'}
12
+ .medium-editor-toolbar.medium-toolbar-arrow-under.medium-editor-toolbar-active.image-controls{ style: 'display: none; margin-top: -65px;' }
13
13
  %ul.medium-editor-toolbar-actions.clearfix
14
14
  %li
15
- %button{title: 'Crop', class: 'asset-crop medium-editor-action medium-editor-button-first', data: {'tooltip' => true, 'post-crop-handler' => 'Tenon.features.tenonContent.PostCropHandler', 'asset-id' => f.object.image_id}}
15
+ %button{ title: t('tenon.assets.crop'), class: 'asset-crop medium-editor-action medium-editor-button-first', data: { 'tooltip' => true, 'post-crop-handler' => 'Tenon.features.tenonContent.PostCropHandler', 'asset-id' => f.object.image_id } }
16
16
  %i.fa.fa-crop
17
17
  %li
18
- %button{href: new_item_asset_path, title: 'Replace Image', class: 'replace-image medium-editor-action medium-editor-button-last', data: {'modal-remote' => 'true', 'modal-title' => "Select Image", 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment', 'tooltip' => true}}
18
+ %button{ href: new_item_asset_path, title: t('tenon.tenon_content.replace_image'), class: 'replace-image medium-editor-action medium-editor-button-last', data: { 'modal-remote' => 'true', 'modal-title' => t('tenon.tenon_content.select_image'), 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment', 'tooltip' => true } }
19
19
  %i.fa.fa-picture-o
20
20
 
21
21
  .medium-editor-toolbar-form-anchor
@@ -1,8 +1,7 @@
1
1
  .embedded-content
2
- = link_to 'Edit Embed Code', '#', class: 'open-embed-modal', 'data-modal-target' => '.edit-embed-code', 'data-modal-title' => 'Edit Embed Code', 'data-modal-clone' => 'true', 'data-modal-handler' => 'Tenon.features.tenonContent.EmbeddedContentModalHandler'
2
+ = link_to t('tenon.tenon_content.edit_embed_code'), '#', class: 'open-embed-modal', 'data-modal-target' => '.edit-embed-code', 'data-modal-title' => t('tenon.tenon_content.edit_embed_code'), 'data-modal-clone' => 'true', 'data-modal-handler' => 'Tenon.features.tenonContent.EmbeddedContentModalHandler'
3
3
  .embed= raw f.object.try(:embed_code)
4
4
 
5
-
6
5
  = f.hidden_field :embed_code, class: 'embed-code-field'
7
6
  = f.hidden_field :position
8
7
  = f.hidden_field :size
@@ -2,47 +2,47 @@
2
2
  = f.hidden_field :position
3
3
  = f.hidden_field :size
4
4
  = f.hidden_field :stretch_to_fill
5
- .image{class: f.object.stretch_to_fill? ? 'stretch' : ''}
5
+ .image{ class: f.object.stretch_to_fill? ? 'stretch' : '' }
6
6
  - if f.object.image
7
7
  = backend_piece_image_tag(f.object)
8
8
  - else
9
- = link_to(new_item_asset_path, class: 'add-image', data: {'modal-remote' => true, 'modal-title' => "Select Image", 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment'}) do
10
- %span Add Image
9
+ = link_to(new_item_asset_path, class: 'add-image', data: { 'modal-remote' => true, 'modal-title' => t('tenon.tenon_content.select_image'), 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment' }) do
10
+ %span= t('tenon.tenon_content.add_image')
11
11
 
12
- = f.super_text_area :caption, class: 'caption', placeholder: 'Enter caption here...', style: ("display: none;" unless f.object.show_caption)
12
+ = f.super_text_area :caption, class: 'caption', placeholder: t('tenon.tenon_content.enter_caption_here'), style: ("display: none;" unless f.object.show_caption)
13
13
  = f.hidden_field :show_caption
14
14
 
15
- .medium-editor-toolbar-form-anchor.link-form{style: 'position: absolute; z-index: 10;'}
16
- = link_to new_item_asset_path(hide_upload: true), 'title' => 'Link to an Asset', 'data-modal-remote' => 'true', 'data-modal-handler' => 'Tenon.features.tenonContent.ImageAssetLink', 'data-modal-title' => 'Link to Asset', 'data-tooltip' => true do
15
+ .medium-editor-toolbar-form-anchor.link-form{ style: 'position: absolute; z-index: 10;' }
16
+ = link_to new_item_asset_path(hide_upload: true), 'title' => t('tenon.tenon_content.link_to_an_asset'), 'data-modal-remote' => 'true', 'data-modal-handler' => 'Tenon.features.tenonContent.ImageAssetLink', 'data-modal-title' => t('tenon.tenon_content.link_to_an_asset'), 'data-tooltip' => true do
17
17
  %i.fa.fa-file-pdf-o
18
- = f.super_text_field :link_url, placeholder: 'Paste or type a link', style: 'display; inline; width: 316px;';
19
- = link_to '', '#', class: 'medium-editor-cancel', title: 'Cancel', data: { tooltip: true }
18
+ = f.super_text_field :link_url, placeholder: t('tenon.tenon_content.paste_or_type_a_link'), style: 'display; inline; width: 316px;';
19
+ = link_to '', '#', class: 'medium-editor-cancel', title: t('tenon.tenon_content.cancel'), data: { tooltip: true }
20
20
 
21
- .medium-editor-toolbar.medium-toolbar-arrow-under.medium-editor-toolbar-active.image-controls{style: "display: none; margin-top: -65px;"}
21
+ .medium-editor-toolbar.medium-toolbar-arrow-under.medium-editor-toolbar-active.image-controls{ style: "display: none; margin-top: -65px;" }
22
22
  %ul.medium-editor-toolbar-actions.clearfix
23
23
  %li
24
- %button{title: 'Crop', class: 'asset-crop medium-editor-action medium-editor-button-first', data: {'tooltip' => true, 'post-crop-handler' => 'Tenon.features.tenonContent.PostCropHandler', 'asset-id' => f.object.image_id}}
24
+ %button{ title: t('tenon.assets.crop'), class: 'asset-crop medium-editor-action medium-editor-button-first', data: { 'tooltip' => true, 'post-crop-handler' => 'Tenon.features.tenonContent.PostCropHandler', 'asset-id' => f.object.image_id } }
25
25
  %i.fa.fa-crop
26
26
  %li
27
- %button{title: 'Grow', class: 'grow-image medium-editor-action', data: {'column-resize-operation' => 'increase', 'tooltip' => true}}
27
+ %button{ title: t('tenon.tenon_content.grow'), class: 'grow-image medium-editor-action', data: { 'column-resize-operation' => 'increase', 'tooltip' => true } }
28
28
  %i.fa.fa-plus
29
29
  %li
30
- %button{title: 'Shrink', class: 'shrink-image medium-editor-action', data: {'column-resize-operation' => 'decrease', 'tooltip' => true}}
30
+ %button{ title: t('tenon.tenon_content.shrink'), class: 'shrink-image medium-editor-action', data: { 'column-resize-operation' => 'decrease', 'tooltip' => true } }
31
31
  %i.fa.fa-minus
32
32
  %li
33
- %button{title: 'Toggle Caption', class: 'medium-editor-action toggle-caption', data: {tooltip: true}}
33
+ %button{ title: t('tenon.tenon_content.toggle_caption'), class: 'medium-editor-action toggle-caption', data: { tooltip: true } }
34
34
  %i.fa.fa-comment
35
35
  %li
36
- %button{title: 'Swap Sides', class: 'swap-sides medium-editor-action', data: {tooltip: true}}
36
+ %button{ title: t('tenon.tenon_content.swap_sides'), class: 'swap-sides medium-editor-action', data: { tooltip: true } }
37
37
  %i.fa.fa-exchange
38
38
  %li
39
- %button{title: 'Stretch to Fill', class: "stretch-to-fill medium-editor-action #{f.object.stretch_to_fill? ? 'medium-editor-button-active' : ''}", data: {tooltip: true}}
39
+ %button{ title: t('tenon.tenon_content.stretch_to_fill'), class: "stretch-to-fill medium-editor-action #{f.object.stretch_to_fill? ? 'medium-editor-button-active' : ''}", data: { tooltip: true } }
40
40
  %i.fa.fa-arrows-alt
41
41
  %li
42
- %button.add-link.medium-editor-action{title: 'Add Link', class: ('medium-editor-button-active' unless f.object.link_url.blank?), data: {tooltip: true}}
42
+ %button.add-link.medium-editor-action{title: t('tenon.tenon_content.add_link'), class: ('medium-editor-button-active' unless f.object.link_url.blank?), data: { tooltip: true } }
43
43
  %i.fa.fa-link
44
44
  %li
45
- %button{href: new_item_asset_path, title: 'Replace Image', class: 'replace-image medium-editor-action medium-editor-button-last', data: {'modal-remote' => 'true', 'modal-title' => "Select Image", 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment', 'tooltip' => true}}
45
+ %button{ href: new_item_asset_path, title: t('tenon.tenon_content.replace_image'), class: 'replace-image medium-editor-action medium-editor-button-last', data: { 'modal-remote' => 'true', 'modal-title' => t('tenon.tenon_content.select_image'), 'modal-handler' => 'Tenon.features.tenonContent.AssetAttachment', 'tooltip' => true } }
46
46
  %i.fa.fa-picture-o
47
47
 
48
48
  .medium-editor-toolbar-form-anchor
@@ -1,8 +1,8 @@
1
1
  - content_for :sidebar do
2
2
  .sidebar
3
3
  .content
4
- %h2 Users
5
- = link_to "New User", new_user_path, class: 'btn btn-block btn-primary'
4
+ %h2= t('tenon.users.users')
5
+ = link_to t('tenon.users.new_user'), new_user_path, class: 'btn btn-block btn-primary'
6
6
 
7
7
  = form_for @user, :builder => Tenon::FormBuilder do |f|
8
8
  = error_messages_for :user
@@ -13,20 +13,20 @@
13
13
 
14
14
  .form-group.bordered
15
15
  - if @user.persisted?
16
- = f.super_label :password, "New Password"
16
+ = f.super_label :password, t('tenon.users.new_password')
17
17
  - else
18
18
  = f.super_label :password
19
19
  = f.password_field :password, :autocomplete => "off"
20
20
  .form-group
21
21
  - if @user.persisted?
22
- = f.super_label :password_confirmation, "Confirm New Password"
22
+ = f.super_label :password_confirmation, t('tenon.users.confirm_new_password')
23
23
  - else
24
- = f.super_label :password_confirmation, "Confirm Password"
24
+ = f.super_label :password_confirmation, t('tenon.users.confirm_password')
25
25
  = f.password_field :password_confirmation
26
26
 
27
27
  .fields.small
28
- %h4.box-label Roles
29
- .explanation Roles define a user's abilities throughout the site.
28
+ %h4.box-label= t('tenon.users.roles')
29
+ .explanation= t('tenon.users.roles_define_a_users_abilities')
30
30
  .box
31
31
  .form-group.inline
32
32
  - @roles.each do |role|
@@ -35,16 +35,16 @@
35
35
  %label{ for: "role_id_#{role.id}" }= role.title
36
36
  .spacer
37
37
 
38
- %h4.box-label Actions
38
+ %h4.box-label= t('tenon.common.actions')
39
39
  .box
40
40
  .content
41
41
  = f.check_box :approved, class: 'tn-checkbox-right'
42
- = f.super_label :approved, "Approved?"
42
+ = f.super_label :approved, t('tenon.common.approved')
43
43
 
44
44
  .content
45
- = f.submit "Save", :class => 'btn btn-block btn-comp', data: { disable_with: "Please wait..." }
45
+ = f.submit t('tenon.common.save'), :class => 'btn btn-block btn-comp', data: { disable_with: t('tenon.common.please_wait') }
46
46
 
47
47
  - if @user.persisted?
48
48
  %hr
49
49
  .content
50
- = link_to "Delete", @user, :data => {:method => :delete, :confirm => "Are you sure you want to delete this?"}, :class => 'delete-link'
50
+ = link_to t('tenon.common.delete'), @user, :data => { :method => :delete, :confirm => t('tenon.common.are_you_sure') }, :class => 'delete-link'
@@ -1,5 +1,5 @@
1
1
  %header
2
- %h1 Edit a User
2
+ %h1= t('tenon.users.edit_a_user')
3
3
 
4
4
  .tools
5
5
  = render "tenon/shared/section_header/sidebar_toggle"
@@ -1,11 +1,11 @@
1
1
  - content_for :sidebar do
2
2
  .sidebar
3
3
  .content
4
- %h2 Users
5
- = link_to "New User", new_user_path, class: 'btn btn-block btn-primary'
4
+ %h2= t('tenon.users.users')
5
+ = link_to t('tenon.users.new_user'), new_user_path, class: 'btn btn-block btn-primary'
6
6
 
7
7
  %header
8
- %h1 Users
8
+ %h1= t('tenon.users.users')
9
9
 
10
10
  .tools
11
11
  = render "tenon/shared/section_header/sidebar_toggle"
@@ -18,6 +18,6 @@
18
18
  = render "tenon/shared/section_header/quick_search", record_list: '#users'
19
19
 
20
20
  .main-content
21
- %ul#users.record-list{data: {records: {url: users_path(format: 'json'), template: 'tenon/templates/users/user_row', name: 'user'}}}
21
+ %ul#users.record-list{ data: { records: { url: users_path(format: 'json'), template: 'tenon/templates/users/user_row', name: 'user' } } }
22
22
 
23
- = link_to "Load More Users", '#', :class => 'btn btn-comp infinite-loader', 'data-record-list' => '#users'
23
+ = link_to t('tenon.users.load_more'), '#', :class => 'btn btn-comp infinite-loader', 'data-record-list' => '#users'
@@ -7,11 +7,11 @@ json.records do
7
7
  if user.last_sign_in_at
8
8
  json.last_login user.last_sign_in_at.strftime('%B %e, %Y')
9
9
  else
10
- json.last_login "Never"
10
+ json.last_login t('tenon.users.never')
11
11
  end
12
12
 
13
13
  unless user == current_user
14
- json.approval_link action_link(user.approved? ? "Unapprove" : "Approve", approve_user_path(user), :icon => user.approved? ? "thumbdown" : "thumbup", :class => "approve", :confirm => user.approved? ? "Are you sure you want to unapprove this user?" : "Are you sure? The user will be notified by email.") if can?(:edit, user)
14
+ json.approval_link action_link(user.approved? ? t('tenon.users.unapprove') : t('tenon.common.approve'), approve_user_path(user), :icon => user.approved? ? "thumbdown" : "thumbup", :class => "approve", :confirm => user.approved? ? t('tenon.users.are_you_sure_you_want_to_unapprove') : t('tenon.users.are_you_sure_the_user_will_be_notified')) if can?(:edit, user)
15
15
  end
16
16
 
17
17
  json.edit_path edit_user_path(user)
@@ -25,4 +25,4 @@ json.pagination do
25
25
  json.currentPage @users.current_page
26
26
  json.totalPages @users.total_pages
27
27
  json.totalEntries @users.total_entries
28
- end
28
+ end
@@ -1,5 +1,5 @@
1
1
  %header
2
- %h1 New User
2
+ %h1= t('tenon.users.new_user')
3
3
 
4
4
  .tools
5
5
  = render "tenon/shared/section_header/sidebar_toggle"