tenon 1.1.4 → 1.1.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/tenon/features/asset_detachment.js.coffee +1 -1
- data/app/assets/javascripts/tenon/features/asset_uploader.js.coffee +1 -1
- data/app/assets/javascripts/tenon/features/modal_windows.js.coffee +0 -2
- data/app/assets/javascripts/tenon/features/nested_fields.js +2 -2
- data/app/assets/javascripts/tenon/features/new_item_version_handler.js.coffee +2 -2
- data/app/assets/javascripts/tenon/features/protect_changes.js.coffee +1 -1
- data/app/assets/javascripts/tenon/features/record_approval.js.coffee +3 -3
- data/app/assets/javascripts/tenon/features/record_boolean_toggle.js.coffee +1 -1
- data/app/assets/javascripts/tenon/features/record_list.js.coffee +3 -3
- data/app/assets/javascripts/tenon/features/record_list_updater.js.coffee +1 -1
- data/app/assets/javascripts/tenon/features/tenon_content/asset_link.js.coffee +1 -1
- data/app/assets/javascripts/tenon/templates/assets/asset_field.jst.eco +2 -2
- data/app/assets/javascripts/tenon/templates/assets/asset_row.jst.eco +2 -2
- data/app/assets/javascripts/tenon/templates/assets/asset_select.jst.eco +1 -1
- data/app/assets/javascripts/tenon/templates/contacts/contact_row.jst.eco +9 -9
- data/app/assets/javascripts/tenon/templates/errors.jst.eco +2 -2
- data/app/assets/javascripts/tenon/templates/events/event_row.jst.eco +2 -2
- data/app/assets/javascripts/tenon/templates/item_versions/item_version_row.jst.eco +2 -2
- data/app/assets/javascripts/tenon/templates/pages/page_row.jst.eco +1 -1
- data/app/assets/javascripts/tenon/templates/post_categories/post_category_row.jst.eco +1 -1
- data/app/assets/javascripts/tenon/templates/posts/post_row.jst.eco +3 -3
- data/app/assets/javascripts/tenon/templates/users/user_row.jst.eco +2 -2
- data/app/controllers/tenon/assets_controller.rb +1 -1
- data/app/controllers/tenon/base_controller.rb +4 -4
- data/app/controllers/tenon/comments_controller.rb +2 -2
- data/app/controllers/tenon/contacts_controller.rb +4 -4
- data/app/controllers/tenon/resources_controller.rb +3 -3
- data/app/decorators/tenon/asset_decorator.rb +3 -3
- data/app/decorators/tenon/comment_decorator.rb +1 -1
- data/app/decorators/tenon/contact_decorator.rb +2 -2
- data/app/decorators/tenon/event_decorator.rb +2 -2
- data/app/helpers/tenon/application_helper.rb +6 -0
- data/app/helpers/tenon/asset_helper.rb +1 -1
- data/app/helpers/tenon/item_version_helper.rb +5 -5
- data/app/helpers/tenon/tenon_content_helper.rb +1 -1
- data/app/helpers/tenon/tenon_helper.rb +7 -7
- data/app/mailers/tenon/comment_mailer.rb +1 -1
- data/app/mailers/tenon/contact_mailer.rb +1 -1
- data/app/models/tenon/asset.rb +1 -1
- data/app/models/tenon/page.rb +3 -3
- data/app/models/tenon/tenon_content/row_types.rb +17 -17
- data/app/views/layouts/tenon/application.html.haml +4 -0
- data/app/views/layouts/tenon/login.html.haml +3 -0
- data/app/views/tenon/assets/_form.html.haml +2 -2
- data/app/views/tenon/assets/_sidebar_index.html.haml +6 -6
- data/app/views/tenon/assets/crop.html.haml +3 -4
- data/app/views/tenon/assets/edit.html.haml +1 -1
- data/app/views/tenon/assets/index.html.haml +2 -2
- data/app/views/tenon/comment_mailer/comment_notification.html.haml +2 -2
- data/app/views/tenon/comments/_sidebar_index.html.haml +6 -6
- data/app/views/tenon/comments/index.html.haml +2 -2
- data/app/views/tenon/comments/index.json.jbuilder +1 -1
- data/app/views/tenon/contact_mailer/contact_notification.html.haml +4 -4
- data/app/views/tenon/contacts/_sidebar_index.html.haml +8 -8
- data/app/views/tenon/contacts/index.html.haml +2 -2
- data/app/views/tenon/contacts/index.json.jbuilder +4 -4
- data/app/views/tenon/events/_form.html.haml +7 -7
- data/app/views/tenon/events/edit.html.haml +1 -1
- data/app/views/tenon/events/index.html.haml +4 -4
- data/app/views/tenon/events/index.json.jbuilder +1 -1
- data/app/views/tenon/events/new.html.haml +1 -1
- data/app/views/tenon/fields/_asset.html.haml +3 -3
- data/app/views/tenon/galleries/_form.html.haml +7 -7
- data/app/views/tenon/galleries/edit.html.haml +1 -1
- data/app/views/tenon/galleries/index.html.haml +5 -5
- data/app/views/tenon/galleries/new.html.haml +1 -1
- data/app/views/tenon/index/index.html.haml +4 -4
- data/app/views/tenon/item_assets/new.html.haml +6 -6
- data/app/views/tenon/item_versions/_item_version.json.jbuilder +4 -4
- data/app/views/tenon/item_versions/index.html.haml +2 -5
- data/app/views/tenon/item_versions/new.html.haml +1 -1
- data/app/views/tenon/pages/_form.html.haml +14 -14
- data/app/views/tenon/pages/edit.html.haml +1 -1
- data/app/views/tenon/pages/index.html.haml +5 -5
- data/app/views/tenon/pages/index.json.jbuilder +4 -4
- data/app/views/tenon/pages/new.html.haml +1 -1
- data/app/views/tenon/post_categories/_form.html.haml +1 -1
- data/app/views/tenon/post_categories/_post_category.json.jbuilder +1 -1
- data/app/views/tenon/post_categories/index.html.haml +5 -5
- data/app/views/tenon/posts/_form.html.haml +14 -14
- data/app/views/tenon/posts/edit.html.haml +1 -1
- data/app/views/tenon/posts/index.html.haml +6 -6
- data/app/views/tenon/posts/index.json.jbuilder +2 -2
- data/app/views/tenon/posts/new.html.haml +1 -1
- data/app/views/tenon/redirects/_form.html.haml +10 -10
- data/app/views/tenon/redirects/_redirect.json.jbuilder +1 -1
- data/app/views/tenon/redirects/edit.html.haml +1 -1
- data/app/views/tenon/redirects/index.html.haml +8 -8
- data/app/views/tenon/redirects/new.html.haml +1 -1
- data/app/views/tenon/settings/_contact.html.haml +8 -8
- data/app/views/tenon/settings/_general.html.haml +4 -4
- data/app/views/tenon/settings/_seo.html.haml +4 -4
- data/app/views/tenon/settings/show.html.haml +9 -9
- data/app/views/tenon/shared/_i18n_language_nav.html.haml +3 -3
- data/app/views/tenon/shared/_main_nav.html.haml +11 -11
- data/app/views/tenon/shared/_posts_nav.html.haml +3 -3
- data/app/views/tenon/shared/_seo_fields.html.haml +3 -3
- data/app/views/tenon/shared/_util_nav.html.haml +2 -2
- data/app/views/tenon/shared/_version_warning.html.haml +5 -6
- data/app/views/tenon/shared/menu_items/_comments.html.haml +1 -1
- data/app/views/tenon/shared/menu_items/_events.html.haml +2 -2
- data/app/views/tenon/shared/menu_items/_galleries.html.haml +2 -2
- data/app/views/tenon/shared/menu_items/_pages.html.haml +2 -2
- data/app/views/tenon/shared/menu_items/_posts.html.haml +2 -2
- data/app/views/tenon/shared/section_header/_quick_search.html.haml +1 -1
- data/app/views/tenon/tenon_callouts/_form.html.haml +7 -9
- data/app/views/tenon/tenon_callouts/edit.html.haml +1 -1
- data/app/views/tenon/tenon_callouts/index.html.haml +5 -5
- data/app/views/tenon/tenon_callouts/new.html.haml +1 -1
- data/app/views/tenon/tenon_content/_builder.html.haml +2 -2
- data/app/views/tenon/tenon_content/_display.html.haml +3 -3
- data/app/views/tenon/tenon_content/_embed_modal.html.haml +3 -3
- data/app/views/tenon/tenon_content/_fields.html.haml +9 -10
- data/app/views/tenon/tenon_content/_row.html.haml +4 -4
- data/app/views/tenon/tenon_content/piece_types/form/_background_image.html.haml +6 -6
- data/app/views/tenon/tenon_content/piece_types/form/_embedded_content.html.haml +1 -2
- data/app/views/tenon/tenon_content/piece_types/form/_image.html.haml +17 -17
- data/app/views/tenon/users/_form.html.haml +11 -11
- data/app/views/tenon/users/edit.html.haml +1 -1
- data/app/views/tenon/users/index.html.haml +5 -5
- data/app/views/tenon/users/index.json.jbuilder +3 -3
- data/app/views/tenon/users/new.html.haml +1 -1
- data/config/locales/tenon.en.yml +313 -0
- data/lib/tenon/version.rb +1 -1
- metadata +4 -4
- data/app/models/tenon/thinger.rb +0 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 967b1850854d4e7f6cb607d7f7b3763de4714b35
|
4
|
+
data.tar.gz: 72534e798939103469b7e284ef9d8ebfc6bcf809
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9e865dfd372376f5eb278b89d7da6d1a5612e43a43cfdbc2e6108d19da0368e901934f0b709f6bf7f5a8a129b21f3b74611cdb61d9a4b447a754580994d26fbc
|
7
|
+
data.tar.gz: b0f461df34c107b0e21dd168643d299cc4116e00b6c57594b85ffde0632f4114c3e02649e4aada3c1eda59c48a2a5ef7f41fa3cd41b3ea9f551f5b5d4c14a7ec
|
@@ -8,4 +8,4 @@ class Tenon.features.AssetDetachment
|
|
8
8
|
@$assetField = $(e.currentTarget).closest('.tn-tc-asset-field')
|
9
9
|
@$assetField.find('.asset-id-field').removeAttr('value')
|
10
10
|
@$assetField.find('.thumbnail img').attr('src', '/assets/tenon/thumb-doc.png')
|
11
|
-
@$assetField.find('.asset-info').html(
|
11
|
+
@$assetField.find('.asset-info').html(I18n.tenon.assets.no_asset_selected)
|
@@ -61,7 +61,7 @@ class Tenon.features.AssetUploader
|
|
61
61
|
@titleCounter += 1
|
62
62
|
|
63
63
|
_updateButtonText: ->
|
64
|
-
$('#choose-files').text(
|
64
|
+
$('#choose-files').text(I18n.tenon.assets.choose_another_file)
|
65
65
|
|
66
66
|
_resetCounter: =>
|
67
67
|
$('#asset_title').val($('#aset_title').data('original-value'))
|
@@ -41,7 +41,6 @@ class Tenon.features.ModalWindows
|
|
41
41
|
@_launchWithContent() if @opts.content?.length
|
42
42
|
|
43
43
|
_launchWithUrl: (e) =>
|
44
|
-
console.debug("called _launchWithUrl")
|
45
44
|
@remote = true
|
46
45
|
Tenon.$genericLoader.show()
|
47
46
|
$.ajax
|
@@ -51,7 +50,6 @@ class Tenon.features.ModalWindows
|
|
51
50
|
beforeSend: null
|
52
51
|
|
53
52
|
_launchWithTarget: (e) =>
|
54
|
-
console.debug("called _launchWithTarget")
|
55
53
|
if @opts.closest?.length && @opts.$link
|
56
54
|
$parentNode = @opts.$link.closest(@opts.closest)
|
57
55
|
$el = $parentNode.find(@opts.target)
|
@@ -52,7 +52,7 @@ Tenon.features.nestedFields = {
|
|
52
52
|
var self = Tenon.features.nestedFields,
|
53
53
|
hiddenField = $(this).prev('input[name*=_destroy]')[0];
|
54
54
|
|
55
|
-
if (confirm(
|
55
|
+
if (confirm(I18n.tenon.common.are_you_sure)) {
|
56
56
|
// Existing records get set as deleted, new records just get cleared out of the DOM
|
57
57
|
if(hiddenField) {
|
58
58
|
hiddenField.value = 'true';
|
@@ -92,4 +92,4 @@ Tenon.features.nestedFields = {
|
|
92
92
|
}
|
93
93
|
});
|
94
94
|
}
|
95
|
-
};
|
95
|
+
};
|
@@ -14,10 +14,10 @@ class Tenon.features.RecordApproval
|
|
14
14
|
_finishToggle: =>
|
15
15
|
@$link.toggleClass('unapprove approve')
|
16
16
|
if @$link.hasClass('approve')
|
17
|
-
@_setTooltip(
|
17
|
+
@_setTooltip(I18n.tenon.common.approve)
|
18
18
|
@$link.find('i').toggleClass('fa-spin fa-gear fa-thumbs-up')
|
19
19
|
else
|
20
|
-
@_setTooltip(
|
20
|
+
@_setTooltip(I18n.tenon.common.unapprove)
|
21
21
|
@$link.find('i').toggleClass('fa-spin fa-gear fa-thumbs-down')
|
22
22
|
|
23
23
|
_startIconLoad: =>
|
@@ -30,4 +30,4 @@ class Tenon.features.RecordApproval
|
|
30
30
|
.tooltip('hide')
|
31
31
|
.attr('data-original-title', tooltip)
|
32
32
|
.tooltip('fixTitle')
|
33
|
-
.tooltip('show')
|
33
|
+
.tooltip('show')
|
@@ -10,7 +10,7 @@ class Tenon.features.RecordBooleanToggle
|
|
10
10
|
@trueTooltip = @$link.data('truetooltip')
|
11
11
|
@falseTooltip = @$link.data('falsetooltip')
|
12
12
|
@_startIconLoad()
|
13
|
-
@_setTooltip(
|
13
|
+
@_setTooltip(I18n.tenon.common.loading)
|
14
14
|
$.getJSON(@$link.attr('href'))
|
15
15
|
.done(@_finishToggle)
|
16
16
|
.fail((data)-> console.log(data))
|
@@ -41,9 +41,9 @@ class Tenon.features.RecordList
|
|
41
41
|
|
42
42
|
_dataLoaded: (data) =>
|
43
43
|
if data.records.length == 0
|
44
|
-
@_showInfoLi(
|
44
|
+
@_showInfoLi(I18n.tenon.record_list.no_entries_found)
|
45
45
|
else if @$list.data('records-nested')
|
46
|
-
@_showInfoLi(
|
46
|
+
@_showInfoLi(I18n.tenon.record_list.no_entries_found) if data.records.length == 0
|
47
47
|
new Tenon.features.NestedSetWriter(data.records, @$list, @_templatePath, @_recordName)
|
48
48
|
else
|
49
49
|
@_drawRecords(data.records)
|
@@ -52,7 +52,7 @@ class Tenon.features.RecordList
|
|
52
52
|
@$list.trigger('tenon.records-refreshed')
|
53
53
|
|
54
54
|
_failedLoad: =>
|
55
|
-
@_showInfoLi(
|
55
|
+
@_showInfoLi(I18n.tenon.record_list.there_was_an_error_contacting_the_server)
|
56
56
|
|
57
57
|
_drawRecords: (records) =>
|
58
58
|
for record in records
|
@@ -9,7 +9,7 @@ class Tenon.features.RecordListUpdater
|
|
9
9
|
$el = $(e.currentTarget)
|
10
10
|
@clearQuery = $el.attr('data-clear-record-list-params')
|
11
11
|
if $el.prop("tagName").toLowerCase() == 'form'
|
12
|
-
@_updateWithQuery(@_processFormData($el),
|
12
|
+
@_updateWithQuery(@_processFormData($el), I18n.tenon.common.search, $el)
|
13
13
|
else
|
14
14
|
@_updateWithQuery(URI($el.attr('href')).query(true), $el.textContent)
|
15
15
|
|
@@ -2,7 +2,7 @@ class Tenon.features.tenonContent.AssetLink extends Tenon.features.tenonContent.
|
|
2
2
|
_setFields: ($li) =>
|
3
3
|
$link = $('<a />').attr('href', $li.data('style-urls')['original'])
|
4
4
|
selected = @$browseButton.getSelection().getSelectedText()
|
5
|
-
text = if selected.length then selected else
|
5
|
+
text = if selected.length then selected else I18n.tenon.assets.asset_link
|
6
6
|
$link.html(text)
|
7
7
|
@$browseButton.insertHtml($link[0].outerHTML)
|
8
8
|
|
@@ -10,8 +10,8 @@
|
|
10
10
|
</div>
|
11
11
|
</div>
|
12
12
|
<div class="record-actions">
|
13
|
-
<a data-tooltip="
|
14
|
-
<a data-confirm="
|
13
|
+
<a data-tooltip="<%= I18n.tenon.common.edit %>" href="<%= @asset.edit_path %>" title="<%= I18n.tenon.common.edit %>"><i class="fa fa-pencil"></i></a>
|
14
|
+
<a data-confirm="<%= I18n.tenon.common.are_you_sure %>" data-method="delete" data-tooltip="<%= I18n.tenon.common.delete %>" href="<%= @asset.path %>" rel="nofollow" title="<%= I18n.tenon.common.delete %>"><i class="fa fa-trash-o"></i></a>
|
15
15
|
</div>
|
16
16
|
</div>
|
17
17
|
</li>
|
@@ -2,12 +2,12 @@
|
|
2
2
|
<div class="thumbnail"><%- @asset.icon %></div>
|
3
3
|
<div class="record-details">
|
4
4
|
<div class="record-title">
|
5
|
-
<a href="<%= @asset.edit_path %>" data-modal-remote="true" data-modal-title="
|
5
|
+
<a href="<%= @asset.edit_path %>" data-modal-remote="true" data-modal-title="<%= I18n.tenon.assets.edit_asset %>"><%= @asset.display_name %></a>
|
6
6
|
</div>
|
7
7
|
|
8
8
|
<div class="record-fields">
|
9
9
|
<div class="record-field">
|
10
|
-
|
10
|
+
<%= I18n.tenon.assets.size %> - <%= @asset.human_size %>
|
11
11
|
</div>
|
12
12
|
</div>
|
13
13
|
|
@@ -1 +1 @@
|
|
1
|
-
<li>Asset</li>
|
1
|
+
<li>Asset</li>
|
@@ -8,13 +8,13 @@
|
|
8
8
|
</div>
|
9
9
|
|
10
10
|
<div class="record-title">
|
11
|
-
|
11
|
+
<%= I18n.tenon.contact_mailer.from %>:
|
12
12
|
<strong>
|
13
13
|
<a href="mailto:<%= @contact.email %>"><%= @contact.name %> (<%= @contact.email %>)</a>
|
14
14
|
</strong>
|
15
15
|
<br />
|
16
16
|
<small>
|
17
|
-
|
17
|
+
<%= I18n.tenon.contact_mailer.sent_on %>:
|
18
18
|
<strong>
|
19
19
|
<%- @contact.sent_date %>
|
20
20
|
</strong>
|
@@ -25,28 +25,28 @@
|
|
25
25
|
<p><%= @contact.content %></p>
|
26
26
|
<hr />
|
27
27
|
<p>
|
28
|
-
<strong
|
28
|
+
<strong><%= I18n.tenon.contact_mailer.name %>: </strong>
|
29
29
|
<%= @contact.name %>
|
30
30
|
</p>
|
31
31
|
<p>
|
32
|
-
<strong
|
32
|
+
<strong><%= I18n.tenon.contact_mailer.email %>: </strong>
|
33
33
|
<a href="mailto: <%= @contact.email %>"><%= @contact.email %></a>
|
34
34
|
</p>
|
35
35
|
<p>
|
36
36
|
<p>
|
37
|
-
<strong
|
38
|
-
<%= @contact.
|
37
|
+
<strong><%= I18n.tenon.contact_mailer.phone %>: </strong>
|
38
|
+
<%= @contact.phone %>
|
39
39
|
</p>
|
40
40
|
<p>
|
41
|
-
<strong
|
41
|
+
<strong><%= I18n.tenon.contact_mailer.ip %>:</strong>
|
42
42
|
<%= @contact.user_ip %>
|
43
43
|
</p>
|
44
44
|
<p>
|
45
|
-
<strong
|
45
|
+
<strong><%= I18n.tenon.contact_mailer.agent %>:</strong>
|
46
46
|
<%= @contact.user_agent %>
|
47
47
|
</p>
|
48
48
|
<p>
|
49
|
-
<strong
|
49
|
+
<strong><%= I18n.tenon.contact_mailer.referrer %>:</strong>
|
50
50
|
<%= @contact.referrer %>
|
51
51
|
</p>
|
52
52
|
</div>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<div class="error-explanation">
|
2
|
-
<h4
|
2
|
+
<h4><%= I18n.tenon.common.the_following_errors_occurred %>:</h2>
|
3
3
|
<ul>
|
4
4
|
<% for field, errors of @errors: %>
|
5
5
|
<% for error in errors: %>
|
@@ -10,4 +10,4 @@
|
|
10
10
|
<% end %>
|
11
11
|
<% end %>
|
12
12
|
</ul>
|
13
|
-
</div>
|
13
|
+
</div>
|
@@ -12,10 +12,10 @@
|
|
12
12
|
|
13
13
|
<div class="record-fields">
|
14
14
|
<div class="record-field">
|
15
|
-
|
15
|
+
<%= I18n.tenon.events.when %> - <%= @event.display_date %>
|
16
16
|
</div>
|
17
17
|
<div class="record-field">
|
18
|
-
|
18
|
+
<%= I18n.tenon.events.where %> - <%= @event.location %>
|
19
19
|
</div>
|
20
20
|
</div>
|
21
21
|
</div>
|
@@ -10,11 +10,11 @@
|
|
10
10
|
|
11
11
|
<div class="record-fields">
|
12
12
|
<div class="record-field">
|
13
|
-
|
13
|
+
<%= I18n.tenon.item_versions.created %> - <%= @item_version.created_at %>
|
14
14
|
</div>
|
15
15
|
|
16
16
|
<div class="record-field">
|
17
|
-
|
17
|
+
<%= I18n.tenon.item_versions.creator %> - <%= @item_version.user_email %>
|
18
18
|
</div>
|
19
19
|
</div>
|
20
20
|
|
@@ -6,7 +6,7 @@
|
|
6
6
|
</div>
|
7
7
|
|
8
8
|
<div class="record-title">
|
9
|
-
<a href="<%= @post_category.edit_path %>" data-modal-remote="true" data-modal-title="
|
9
|
+
<a href="<%= @post_category.edit_path %>" data-modal-remote="true" data-modal-title="<%= I18n.tenon.post_categories.edit_post_category %>"><%= @post_category.title %></a>
|
10
10
|
</div>
|
11
11
|
</div>
|
12
12
|
</li>
|
@@ -14,15 +14,15 @@
|
|
14
14
|
<div class="record-fields">
|
15
15
|
<% if @post.author: %>
|
16
16
|
<div class="record-field">
|
17
|
-
|
17
|
+
<%= I18n.tenon.posts.author %> - <%= @post.author %>
|
18
18
|
</div>
|
19
19
|
<% end %>
|
20
20
|
<div class="record-field">
|
21
|
-
|
21
|
+
<%= I18n.tenon.posts.published %> - <%= @post.publish_at %>
|
22
22
|
</div>
|
23
23
|
<% if @post.categories: %>
|
24
24
|
<div class="record-field">
|
25
|
-
|
25
|
+
<%= I18n.tenon.posts.categories %> - <%= @post.categories %>
|
26
26
|
</div>
|
27
27
|
<% end %>
|
28
28
|
</div>
|
@@ -11,10 +11,10 @@
|
|
11
11
|
|
12
12
|
<div class="record-fields">
|
13
13
|
<div class="record-field">
|
14
|
-
|
14
|
+
<%= I18n.tenon.users.roles %> - <%= @user.roles %>
|
15
15
|
</div>
|
16
16
|
<div class="record-field">
|
17
|
-
|
17
|
+
<%= I18n.tenon.users.last_login %> - <%= @user.last_login %>
|
18
18
|
</div>
|
19
19
|
</div>
|
20
20
|
</div>
|
@@ -19,7 +19,7 @@ module Tenon
|
|
19
19
|
|
20
20
|
def create
|
21
21
|
asset = Tenon::Asset.new(resource_params)
|
22
|
-
flash[:notice] = '
|
22
|
+
flash[:notice] = t('tenon.assets.successfully_uploaded') if asset.save && !request.xhr?
|
23
23
|
@asset = asset.decorate
|
24
24
|
respond_with(@asset, location: assets_path)
|
25
25
|
end
|
@@ -6,7 +6,7 @@ module Tenon
|
|
6
6
|
before_filter :require_admin, unless: :devise_controller?
|
7
7
|
|
8
8
|
rescue_from CanCan::AccessDenied do |exception|
|
9
|
-
flash[:warning] = '
|
9
|
+
flash[:warning] = t('tenon.common.you_are_not_authorized')
|
10
10
|
redirect_to root_path
|
11
11
|
end
|
12
12
|
|
@@ -23,9 +23,9 @@ module Tenon
|
|
23
23
|
def set_title
|
24
24
|
case params[:action]
|
25
25
|
when 'new', 'create'
|
26
|
-
@page_title = "
|
26
|
+
@page_title = "#{t('tenon.common.new')} #{params[:controller].gsub('tenon/', '').singularize.humanize}".titleize
|
27
27
|
when 'edit', 'update'
|
28
|
-
@page_title = "
|
28
|
+
@page_title = "#{t('tenon.common.edit')} #{params[:controller].gsub('tenon/', '').singularize.humanize}".titleize
|
29
29
|
else
|
30
30
|
@page_title = params[:controller].gsub('tenon/', '').humanize.titleize
|
31
31
|
end
|
@@ -34,7 +34,7 @@ module Tenon
|
|
34
34
|
|
35
35
|
def require_admin
|
36
36
|
unless current_user && current_user.staff?
|
37
|
-
flash[:warning] =
|
37
|
+
flash[:warning] = t('tenon.common.youre_not_authorized_for_that') if current_user
|
38
38
|
redirect_to new_user_session_path
|
39
39
|
end
|
40
40
|
end
|
@@ -27,10 +27,10 @@ module Tenon
|
|
27
27
|
respond_to do |format|
|
28
28
|
if @comment.toggle_approved!
|
29
29
|
format.json { render json: @comment.to_json }
|
30
|
-
format.html { flash[:notice] = '
|
30
|
+
format.html { flash[:notice] = t('tenon.comments.comment_approved') and redirect_to comments_path }
|
31
31
|
else
|
32
32
|
format.json { render status: 500, nothing: true }
|
33
|
-
format.html { flash[:warning] = '
|
33
|
+
format.html { flash[:warning] = t('tenon.comments.error_approving_comment') and redirect_to comments_path }
|
34
34
|
end
|
35
35
|
end
|
36
36
|
end
|
@@ -29,10 +29,10 @@ module Tenon
|
|
29
29
|
respond_to do |format|
|
30
30
|
if @contact.toggle_read!
|
31
31
|
format.json { render json: @contact.to_json }
|
32
|
-
format.html { flash[:notice] = '
|
32
|
+
format.html { flash[:notice] = t('tenon.contacts.contact_flagged_as_read') and redirect_to contacts_path }
|
33
33
|
else
|
34
34
|
format.json { render status: 500, nothing: true }
|
35
|
-
format.html { flash[:warning] = '
|
35
|
+
format.html { flash[:warning] = t('tenon.contacts.error_flagging_contact_as_read') and redirect_to contacts_path }
|
36
36
|
end
|
37
37
|
end
|
38
38
|
end
|
@@ -41,10 +41,10 @@ module Tenon
|
|
41
41
|
respond_to do |format|
|
42
42
|
if @contact.toggle_replied!
|
43
43
|
format.json { render json: @contact.to_json }
|
44
|
-
format.html { flash[:notice] = '
|
44
|
+
format.html { flash[:notice] = t('tenon.contacts.contact_flagged_as_replied') and redirect_to contacts_path }
|
45
45
|
else
|
46
46
|
format.json { render status: 500, nothing: true }
|
47
|
-
format.html { flash[:warning] = '
|
47
|
+
format.html { flash[:warning] = t('tenon.contacts.error_flagging_contact_as_replied.') and redirect_to contacts_path }
|
48
48
|
end
|
49
49
|
end
|
50
50
|
end
|
@@ -41,7 +41,7 @@ module Tenon
|
|
41
41
|
authorize!(:publish, resource)
|
42
42
|
if resource.update_attributes(resource_params)
|
43
43
|
save_item_version if resource.respond_to?(:versions)
|
44
|
-
flash[:notice] = "#{human_name}
|
44
|
+
flash[:notice] = "#{human_name} #{t('tenon.common.saved_successfully')}." unless request.xhr?
|
45
45
|
end
|
46
46
|
|
47
47
|
self.resource = resource.decorate
|
@@ -52,7 +52,7 @@ module Tenon
|
|
52
52
|
self.resource = klass.new(resource_params).decorate
|
53
53
|
authorize!(:publish, resource)
|
54
54
|
if resource.save && !request.xhr?
|
55
|
-
flash[:notice] = "#{human_name}
|
55
|
+
flash[:notice] = "#{human_name} #{t('tenon.common.saved_successfully')}."
|
56
56
|
save_item_version if resource.respond_to?(:versions)
|
57
57
|
end
|
58
58
|
respond_with(resource.decorate, location: after_create_path, status: (201 if resource.valid?))
|
@@ -83,7 +83,7 @@ module Tenon
|
|
83
83
|
item_version.user = current_user
|
84
84
|
item_version.created_at = resource.updated_at
|
85
85
|
item_version.save_type = 'post-save'
|
86
|
-
item_version.title = '
|
86
|
+
item_version.title = t('tenon.item_versions.post_save')
|
87
87
|
item_version.save
|
88
88
|
end
|
89
89
|
|
@@ -19,7 +19,7 @@ module Tenon
|
|
19
19
|
|
20
20
|
def crop_link
|
21
21
|
h.action_link(
|
22
|
-
'
|
22
|
+
I18n.t('tenon.assets.crop'),
|
23
23
|
[:crop, object],
|
24
24
|
'crop',
|
25
25
|
class: 'asset-crop',
|
@@ -33,13 +33,13 @@ module Tenon
|
|
33
33
|
def edit_link(opts = {})
|
34
34
|
defaults = {
|
35
35
|
'data-modal-remote' => true,
|
36
|
-
'data-modal-title' => '
|
36
|
+
'data-modal-title' => I18n.t('tenon.assets.edit_asset')
|
37
37
|
}
|
38
38
|
super(opts.merge(defaults))
|
39
39
|
end
|
40
40
|
|
41
41
|
def download_link
|
42
|
-
h.action_link('
|
42
|
+
h.action_link(I18n.t('tenon.assets.download'), object.attachment.url, 'download', target: '_')
|
43
43
|
end
|
44
44
|
|
45
45
|
def style_urls
|
@@ -16,7 +16,7 @@ module Tenon
|
|
16
16
|
def error_message
|
17
17
|
errors = []
|
18
18
|
@object.errors.full_messages.each { |error| errors << "<li>#{error}</li>" }
|
19
|
-
"<div class='error-explanation' id='error-explanation'
|
19
|
+
"<div class='error-explanation' id='error-explanation'>#{I18n.t('tenon.common.there_were_problems_with_the_following_fields')}:<ul>#{errors.join('')}<ul></div>"
|
20
20
|
end
|
21
21
|
end
|
22
22
|
end
|
@@ -1,13 +1,13 @@
|
|
1
1
|
module Tenon
|
2
2
|
class ContactDecorator < ApplicationDecorator
|
3
3
|
def sent_date
|
4
|
-
@object.created_at.strftime('%B %e, %Y at %l:%M %p')
|
4
|
+
"#{@object.created_at.strftime('%B %e, %Y')} #{I18n.t('tenon.common.at')} #{@object.created_at.strftime('%l:%M %p')}"
|
5
5
|
end
|
6
6
|
|
7
7
|
def error_message
|
8
8
|
errors = []
|
9
9
|
@object.errors.full_messages.each { |error| errors << "<li>#{error}</li>" }
|
10
|
-
"<div class='error-explanation' id='error-explanation'
|
10
|
+
"<div class='error-explanation' id='error-explanation'>#{I18n.t('tenon.common.there_were_problems_with_the_following_fields')}:<ul>#{errors.join('')}<ul></div>"
|
11
11
|
end
|
12
12
|
end
|
13
13
|
end
|
@@ -2,9 +2,9 @@ module Tenon
|
|
2
2
|
class EventDecorator < ApplicationDecorator
|
3
3
|
def display_date
|
4
4
|
if @object.starts_at.to_date == @object.ends_at.to_date
|
5
|
-
"#{@object.starts_at.strftime('%B %d, %Y')} from #{@object.starts_at.strftime('%I:%M%p')} until #{@object.ends_at.strftime('%I:%M%p')}"
|
5
|
+
"#{@object.starts_at.strftime('%B %d, %Y')} #{I18n.t('tenon.events.from')} #{@object.starts_at.strftime('%I:%M%p')} #{I18n.t('tenon.events.until')} #{@object.ends_at.strftime('%I:%M%p')}"
|
6
6
|
else
|
7
|
-
"#{@object.starts_at.strftime("%B %d, %Y at %I:%M%p")} until #{@object.ends_at.strftime("%B %d, %Y at %I:%M%p")}"
|
7
|
+
"#{@object.starts_at.strftime("%B %d, %Y at %I:%M%p")} #{I18n.t('tenon.events.until')} #{@object.ends_at.strftime("%B %d, %Y at %I:%M%p")}"
|
8
8
|
end
|
9
9
|
end
|
10
10
|
end
|
@@ -79,6 +79,12 @@ module Tenon
|
|
79
79
|
false
|
80
80
|
end
|
81
81
|
|
82
|
+
def current_translations
|
83
|
+
I18n.backend.send(:init_translations) unless I18n.backend.initialized?
|
84
|
+
@translations ||= I18n.backend.send(:translations)
|
85
|
+
@translations[I18n.locale].with_indifferent_access
|
86
|
+
end
|
87
|
+
|
82
88
|
private
|
83
89
|
|
84
90
|
def h5bp_opening_tag(ie_versions = 6..8)
|
@@ -17,24 +17,24 @@ module Tenon
|
|
17
17
|
data = {
|
18
18
|
'modal-remote' => true,
|
19
19
|
'modal-handler' => 'Tenon.features.NewItemVersionHandler',
|
20
|
-
'modal-title' => '
|
20
|
+
'modal-title' => t('tenon.item_versions.save_draft')
|
21
21
|
}
|
22
|
-
link_to '
|
22
|
+
link_to t('tenon.item_versions.save_draft'), path, class: css_class, data: data
|
23
23
|
end
|
24
24
|
|
25
25
|
def clear_draft_link
|
26
26
|
path = url_for(version: nil)
|
27
|
-
link_to '
|
27
|
+
link_to t('tenon.item_versions.load_active_version'), path, class: 'delete-link'
|
28
28
|
end
|
29
29
|
|
30
30
|
def load_draft_link(obj)
|
31
31
|
path = item_versions_path(item_type: obj.class.to_s, item_id: obj.id)
|
32
32
|
data = {
|
33
33
|
'modal-remote' => true,
|
34
|
-
'modal-title' => '
|
34
|
+
'modal-title' => t('tenon.item_versions.load_draft'),
|
35
35
|
'modal-handler' => 'Tenon.features.ItemVersionIndexHandler'
|
36
36
|
}
|
37
|
-
link_to '
|
37
|
+
link_to t('tenon.item_versions.load_draft'), path, class: 'delete-link', data: data
|
38
38
|
end
|
39
39
|
|
40
40
|
private
|
@@ -32,7 +32,7 @@ module Tenon
|
|
32
32
|
links << link_to(name.to_s.titleize, '#', class: 'btn btn-white', data: { size: size_for_breakpoint(widths[:default]) })
|
33
33
|
end
|
34
34
|
last = Tenon.config.breakpoints.front_end.values.last
|
35
|
-
links << link_to('
|
35
|
+
links << link_to(t('tenon.common.mobile'), '#', class: 'btn btn-white', data: { size: 320, mobile: true })
|
36
36
|
links.join('').html_safe
|
37
37
|
end
|
38
38
|
|
@@ -36,7 +36,7 @@ module Tenon
|
|
36
36
|
def edit_link(obj, options = {})
|
37
37
|
if can?(:edit, obj)
|
38
38
|
url = polymorphic_url([:edit] + Array(obj))
|
39
|
-
action_link('
|
39
|
+
action_link(t('tenon.common.edit'), url, 'pencil', options)
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
@@ -44,21 +44,21 @@ module Tenon
|
|
44
44
|
def delete_link(obj, options = {})
|
45
45
|
if can?(:destroy, obj)
|
46
46
|
default_options = { data: {
|
47
|
-
confirm: '
|
48
|
-
tooltip: '
|
47
|
+
confirm: t('tenon.common.are_you_sure'),
|
48
|
+
tooltip: t('tenon.common.delete'),
|
49
49
|
method: 'Delete',
|
50
50
|
remote: 'true'
|
51
51
|
} }
|
52
52
|
url = polymorphic_url(obj)
|
53
|
-
action_link('
|
53
|
+
action_link(t('tenon.common.delete'), url, 'trash-o', default_options.deep_merge(options))
|
54
54
|
end
|
55
55
|
end
|
56
56
|
|
57
57
|
# browser detection and warning message
|
58
58
|
def browser_detection(http)
|
59
|
-
if http.match(/MSIE 6|MSIE 7|MSIE 8.0/)
|
60
|
-
content_tag(:div,
|
61
|
-
end
|
59
|
+
# if http.match(/MSIE 6|MSIE 7|MSIE 8.0/)
|
60
|
+
content_tag(:div, t('tenon.common.for_an_optimal_tenon_experience', latest_version: link_to('latest version', 'http://browsehappy.com/', target: '_blank'), modern_browser: link_to('modern browser', 'http://browsehappy.com/', target: '_blank')).html_safe, id: 'flash-warning', class: 'flash-msg')
|
61
|
+
# end
|
62
62
|
end
|
63
63
|
|
64
64
|
def i18n_language_nav(table)
|
@@ -8,7 +8,7 @@ module Tenon
|
|
8
8
|
@comment = comment
|
9
9
|
mail(
|
10
10
|
to: email,
|
11
|
-
subject: "#{Tenon::MySettings.site_name} -
|
11
|
+
subject: "#{Tenon::MySettings.site_name} - #{I18n.t('tenon.comment_mailer.new_comment')}: #{@post.title}",
|
12
12
|
from: Tenon::MySettings.from_email
|
13
13
|
)
|
14
14
|
end
|