alchemy_cms 2.8.3 → 2.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +3 -2
- data/README.md +108 -25
- data/alchemy_cms.gemspec +0 -1
- data/app/assets/stylesheets/alchemy/archive.scss +2 -2
- data/app/assets/stylesheets/alchemy/base.scss +0 -37
- data/app/assets/stylesheets/alchemy/elements.scss +1 -1
- data/app/assets/stylesheets/alchemy/flash.scss +1 -1
- data/app/assets/stylesheets/alchemy/form_elements.scss +1 -1
- data/app/assets/stylesheets/alchemy/icon-font.css.scss +40 -40
- data/app/assets/stylesheets/alchemy/icons.scss +4 -32
- data/app/assets/stylesheets/alchemy/jquery-ui.scss +4 -4
- data/app/assets/stylesheets/alchemy/menubar.css.scss +20 -12
- data/app/assets/stylesheets/alchemy/modules.scss +0 -4
- data/app/assets/stylesheets/alchemy/search.scss +1 -1
- data/app/assets/stylesheets/alchemy/sitemap.scss +1 -1
- data/app/assets/stylesheets/tiny_mce/plugins/inlinepopups/skins/alchemy-tinymce-dialog/window.css.scss +3 -3
- data/app/controllers/alchemy/admin/base_controller.rb +12 -8
- data/app/controllers/alchemy/admin/dashboard_controller.rb +10 -5
- data/app/controllers/alchemy/admin/elements_controller.rb +1 -1
- data/app/controllers/alchemy/admin/essence_pictures_controller.rb +8 -1
- data/app/controllers/alchemy/admin/layoutpages_controller.rb +1 -1
- data/app/controllers/alchemy/admin/pages_controller.rb +11 -6
- data/app/controllers/alchemy/admin/resources_controller.rb +2 -2
- data/app/controllers/alchemy/admin/users_controller.rb +1 -1
- data/app/controllers/alchemy/base_controller.rb +71 -37
- data/app/controllers/alchemy/elements_controller.rb +1 -1
- data/app/controllers/alchemy/pages_controller.rb +9 -3
- data/app/controllers/alchemy/pictures_controller.rb +1 -0
- data/app/helpers/alchemy/admin/base_helper.rb +2 -10
- data/app/helpers/alchemy/admin/pages_helper.rb +1 -1
- data/app/helpers/alchemy/base_helper.rb +1 -1
- data/app/helpers/alchemy/pages_helper.rb +1 -1
- data/app/models/alchemy/attachment.rb +3 -4
- data/app/models/alchemy/cell.rb +1 -1
- data/app/models/alchemy/content.rb +3 -4
- data/app/models/alchemy/element.rb +5 -6
- data/app/models/alchemy/folded_page.rb +1 -1
- data/app/models/alchemy/language.rb +1 -1
- data/app/models/alchemy/message.rb +1 -7
- data/app/models/alchemy/page.rb +12 -10
- data/app/models/alchemy/page/{cells.rb → page_cells.rb} +2 -2
- data/app/models/alchemy/page/{elements.rb → page_elements.rb} +2 -2
- data/app/models/alchemy/page/{naming.rb → page_naming.rb} +1 -1
- data/app/models/alchemy/page/{natures.rb → page_natures.rb} +3 -3
- data/app/models/alchemy/page/{scopes.rb → page_scopes.rb} +3 -3
- data/app/models/alchemy/page/page_users.rb +33 -0
- data/app/models/alchemy/picture.rb +3 -3
- data/app/models/alchemy/site.rb +2 -2
- data/app/views/alchemy/admin/dashboard/_locked_pages.html.erb +1 -1
- data/app/views/alchemy/admin/dashboard/_recent_pages.html.erb +1 -1
- data/app/views/alchemy/admin/dashboard/_sites.html.erb +1 -1
- data/app/views/alchemy/admin/dashboard/index.html.erb +10 -4
- data/app/views/alchemy/admin/pages/_page.html.erb +1 -1
- data/app/views/alchemy/admin/pages/update.js.erb +1 -1
- data/app/views/alchemy/{user_sessions → base}/leave.html.erb +2 -2
- data/app/views/alchemy/base/permission_denied.js.erb +3 -2
- data/app/views/layouts/alchemy/admin.html.erb +6 -3
- data/config/alchemy/config.yml +1 -11
- data/config/alchemy/modules.yml +0 -12
- data/config/locales/alchemy.de.yml +3 -40
- data/config/locales/alchemy.en.yml +2 -22
- data/config/routes.rb +2 -27
- data/db/migrate/20130827094554_alchemy_two_point_six.rb +0 -31
- data/lib/alchemy/auth_accessors.rb +54 -0
- data/lib/alchemy/capistrano.rb +5 -17
- data/lib/alchemy/engine.rb +7 -7
- data/lib/alchemy/errors.rb +6 -0
- data/lib/alchemy/essence.rb +2 -2
- data/lib/alchemy/seeder.rb +1 -1
- data/lib/alchemy/tasks/helpers.rb +83 -0
- data/lib/alchemy/test_support/auth_helpers.rb +35 -0
- data/lib/alchemy/test_support/controller_requests.rb +37 -0
- data/{spec/support → lib/alchemy/test_support}/factories.rb +7 -28
- data/{spec/support/alchemy → lib/alchemy/test_support}/integration_helpers.rb +9 -36
- data/lib/alchemy/upgrader.rb +8 -7
- data/lib/alchemy/upgrader/two_point_nine.rb +33 -0
- data/lib/alchemy/userstamp.rb +10 -0
- data/lib/alchemy/version.rb +1 -3
- data/lib/rails/templates/alchemy.rb +1 -0
- data/lib/tasks/alchemy/db.rake +5 -5
- data/spec/controllers/admin/attachments_controller_spec.rb +3 -3
- data/spec/controllers/admin/dashboard_controller_spec.rb +55 -34
- data/spec/controllers/admin/elements_controller_spec.rb +1 -1
- data/spec/controllers/admin/essence_pictures_controller_spec.rb +22 -6
- data/spec/controllers/admin/pages_controller_spec.rb +41 -58
- data/spec/controllers/admin/resources_controller_spec.rb +30 -5
- data/spec/controllers/admin/trash_controller_spec.rb +1 -1
- data/spec/controllers/attachments_controller_spec.rb +26 -44
- data/spec/controllers/base_controller_spec.rb +8 -33
- data/spec/controllers/elements_controller_spec.rb +1 -1
- data/spec/controllers/pages_controller_spec.rb +7 -15
- data/spec/controllers/pictures_controller_spec.rb +44 -5
- data/spec/dummy/app/controllers/application_controller.rb +9 -1
- data/spec/dummy/app/models/user.rb +14 -0
- data/spec/dummy/db/migrate/20130827094554_alchemy_two_point_six.rb +0 -31
- data/spec/dummy/db/schema.rb +0 -31
- data/spec/features/admin/language_tree_feature_spec.rb +34 -0
- data/spec/features/admin/pages_controller_spec.rb +1 -1
- data/spec/features/pages_controller_spec.rb +5 -12
- data/spec/features/picture_security_spec.rb +2 -2
- data/spec/features/security_spec.rb +6 -45
- data/spec/features/translation_integration_spec.rb +11 -20
- data/spec/{support → fixtures}/80x60.png +0 -0
- data/spec/support/image with spaces.png b/data/spec/fixtures/image with → spaces.png +0 -0
- data/spec/{support → fixtures}/image.png +0 -0
- data/spec/{support → fixtures}/image2.PNG +0 -0
- data/spec/{support → fixtures}/image3.jpeg +0 -0
- data/spec/helpers/admin/base_helper_spec.rb +31 -43
- data/spec/helpers/admin/pages_helper_spec.rb +4 -2
- data/spec/helpers/base_helper_spec.rb +10 -3
- data/spec/helpers/pages_helper_spec.rb +32 -22
- data/spec/models/attachment_spec.rb +1 -1
- data/spec/models/element_spec.rb +33 -57
- data/spec/models/message_spec.rb +0 -16
- data/spec/models/page_spec.rb +62 -26
- data/spec/models/picture_spec.rb +5 -5
- data/spec/spec_helper.rb +13 -4
- data/spec/tasks/helpers_spec.rb +213 -0
- metadata +33 -75
- data/app/controllers/alchemy/passwords_controller.rb +0 -35
- data/app/controllers/alchemy/user_sessions_controller.rb +0 -67
- data/app/controllers/alchemy/users_controller.rb +0 -46
- data/app/mailers/alchemy/notifications.rb +0 -33
- data/app/models/alchemy/page/users.rb +0 -25
- data/app/models/alchemy/user.rb +0 -183
- data/app/views/alchemy/admin/users/_table.html.erb +0 -69
- data/app/views/alchemy/admin/users/_user.html.erb +0 -39
- data/app/views/alchemy/admin/users/edit.html.erb +0 -6
- data/app/views/alchemy/admin/users/index.html.erb +0 -58
- data/app/views/alchemy/admin/users/new.html.erb +0 -6
- data/app/views/alchemy/notifications/admin_user_created.de.text.erb +0 -15
- data/app/views/alchemy/notifications/admin_user_created.en.text.erb +0 -15
- data/app/views/alchemy/notifications/registered_user_created.de.text.erb +0 -13
- data/app/views/alchemy/notifications/registered_user_created.en.text.erb +0 -13
- data/app/views/alchemy/notifications/reset_password_instructions.de.text.erb +0 -8
- data/app/views/alchemy/notifications/reset_password_instructions.en.text.erb +0 -8
- data/app/views/alchemy/passwords/edit.html.erb +0 -35
- data/app/views/alchemy/passwords/new.html.erb +0 -30
- data/app/views/alchemy/user_sessions/new.html.erb +0 -48
- data/app/views/alchemy/users/new.html.erb +0 -14
- data/config/initializers/devise.rb +0 -242
- data/config/locales/devise.de.yml +0 -58
- data/config/locales/devise.en.yml +0 -60
- data/lib/rails/generators/alchemy/devise/devise_generator.rb +0 -29
- data/spec/controllers/admin/users_controller_spec.rb +0 -132
- data/spec/controllers/passwords_controller_spec.rb +0 -16
- data/spec/controllers/user_sessions_controller_spec.rb +0 -22
- data/spec/controllers/users_controller_spec.rb +0 -66
- data/spec/mailers/notifications_spec.rb +0 -67
- data/spec/models/user_spec.rb +0 -252
- data/spec/support/alchemy/controller_helpers.rb +0 -35
@@ -8,7 +8,7 @@
|
|
8
8
|
<% else %>
|
9
9
|
<% @locked_pages.each do |page| %>
|
10
10
|
<tr class="<%= cycle('even', 'odd', :name => 'locked_pages') %>">
|
11
|
-
<% if
|
11
|
+
<% if current_alchemy_user.id == page.locked_by %>
|
12
12
|
<td>
|
13
13
|
<%= link_to(page.name, alchemy.edit_admin_page_path(page)) %>
|
14
14
|
</td>
|
@@ -9,7 +9,7 @@
|
|
9
9
|
<% @last_edited_pages.each do |page| %>
|
10
10
|
<tr class="<%= cycle('even', 'odd', :name => 'edited_pages') %>">
|
11
11
|
<td>
|
12
|
-
<%= link_to_if((page.locked_by.blank? || page.locked_by ==
|
12
|
+
<%= link_to_if((page.locked_by.blank? || page.locked_by == current_alchemy_user.id), page.name, edit_admin_page_path(page)) %>
|
13
13
|
</td>
|
14
14
|
<td>
|
15
15
|
<small><%= l(page.updated_at) %></small>
|
@@ -4,7 +4,7 @@
|
|
4
4
|
<% @sites.each do |site| %>
|
5
5
|
<tr class="<%= cycle('even', 'odd', :name => 'sites') %>">
|
6
6
|
<td>
|
7
|
-
<%= link_to_unless(site == Alchemy::Site.current, site.name, login_url(:protocol => 'http://', :host => site.host, :user => {:login =>
|
7
|
+
<%= link_to_unless(site == Alchemy::Site.current, site.name, login_url(:protocol => 'http://', :host => site.host, :user => {:login => current_alchemy_user.login}), :target => '_blank') %>
|
8
8
|
</td>
|
9
9
|
<td><small><%= site.host %></small></td>
|
10
10
|
</tr>
|
@@ -17,22 +17,28 @@
|
|
17
17
|
) %>
|
18
18
|
|
19
19
|
<div id="dashboard">
|
20
|
+
<% if current_alchemy_user.respond_to?(:name) %>
|
20
21
|
<h1>
|
21
22
|
<% if @first_time -%>
|
22
|
-
<%= _t(
|
23
|
+
<%= _t(:welcome_note, name: current_alchemy_user.name) %>
|
23
24
|
<% else -%>
|
24
|
-
<%= _t(
|
25
|
+
<%= _t(:welcome_back_note, name: current_alchemy_user.name) %>
|
25
26
|
<% end -%>
|
26
27
|
</h1>
|
28
|
+
<% end %>
|
29
|
+
<% if @last_sign_at %>
|
27
30
|
<p>
|
28
|
-
<small><%= _t('Your last login was on %{time}', time: l(
|
31
|
+
<small><%= _t('Your last login was on %{time}', time: l(@last_sign_at)) %></small>
|
29
32
|
</p>
|
33
|
+
<% end %>
|
30
34
|
<div class="column left">
|
31
35
|
<%= render 'locked_pages' %>
|
32
36
|
<%= render 'recent_pages' %>
|
33
37
|
</div>
|
34
38
|
<div class="column right">
|
35
|
-
|
39
|
+
<% if @online_users %>
|
40
|
+
<%= render 'users' %>
|
41
|
+
<% end %>
|
36
42
|
<% if multi_site? %>
|
37
43
|
<%= render 'sites' %>
|
38
44
|
<% end %>
|
@@ -99,7 +99,7 @@
|
|
99
99
|
<%- end -%>
|
100
100
|
</div>
|
101
101
|
</div>
|
102
|
-
<%- if @sorting || (!page.folded?(
|
102
|
+
<%- if @sorting || (!page.folded?(current_alchemy_user) && !page.children.empty?) -%>
|
103
103
|
<ul id="page_<%= page.id %>_children" class="level_<%= page.level %>_children">
|
104
104
|
<%= render :partial => 'page', :collection => page.children %>
|
105
105
|
</ul>
|
@@ -19,7 +19,7 @@ Alchemy.growl("<%= @notice -%>");
|
|
19
19
|
$page = $('#page_<%= @page.id %>');
|
20
20
|
Alchemy.overlayObserver($page);
|
21
21
|
|
22
|
-
<% if @page.locked? && @page.locker ==
|
22
|
+
<% if @page.locked? && @page.locker == current_alchemy_user %>
|
23
23
|
$('#locked_page_<%= @page.id %> > a').html('<%= @page.name -%>');
|
24
24
|
<% end %>
|
25
25
|
|
@@ -2,9 +2,9 @@
|
|
2
2
|
<h2><%= _t("You are about to leave Alchemy") %>.</h2>
|
3
3
|
<p class="buttons">
|
4
4
|
<label><%= _t("Do you want to") %></label>
|
5
|
-
<%= link_to _t('stay logged in'), alchemy.root_path, :
|
5
|
+
<%= link_to _t('stay logged in'), alchemy.root_path, class: 'button' %>
|
6
6
|
</p>
|
7
|
-
<%= form_tag
|
7
|
+
<%= form_tag Alchemy.logout_path, method: 'delete', class: 'buttons' do %>
|
8
8
|
<label><%= _t('or to completly') %></label>
|
9
9
|
<%= button _t(:logout), autofocus: true %>
|
10
10
|
<% end %>
|
@@ -1,2 +1,3 @@
|
|
1
|
-
Alchemy.closeCurrentWindow()
|
2
|
-
window.location.href = '<%=
|
1
|
+
Alchemy.closeCurrentWindow(function() {
|
2
|
+
window.location.href = '<%= Alchemy.login_path %>';
|
3
|
+
});
|
@@ -43,7 +43,7 @@
|
|
43
43
|
<%= yield(:alchemy_main_navigation) %>
|
44
44
|
</div>
|
45
45
|
<div id="logout">
|
46
|
-
<% if
|
46
|
+
<% if current_alchemy_user %>
|
47
47
|
<%= link_to_overlay_window(
|
48
48
|
"<span class='module icon exit'></span><label>#{_t(:leave)}</label>".html_safe,
|
49
49
|
alchemy.leave_admin_path, {
|
@@ -58,7 +58,7 @@
|
|
58
58
|
<% end %>
|
59
59
|
</div>
|
60
60
|
</div>
|
61
|
-
<% if
|
61
|
+
<% if current_alchemy_user %>
|
62
62
|
<div id="top_menu">
|
63
63
|
<div id="sub_navigation">
|
64
64
|
<%= admin_subnavigation %>
|
@@ -71,7 +71,10 @@
|
|
71
71
|
</div>
|
72
72
|
<div id="user_info">
|
73
73
|
<%= select_tag 'change_locale', options_for_select(::I18n.available_locales.map { |l| [l.to_s.upcase, l] }, ::I18n.locale), :class => 'alchemy_selectbox tiny' %>
|
74
|
-
|
74
|
+
<% if current_alchemy_user.respond_to?(:name) %>
|
75
|
+
<%= _t('Logged in as') %>
|
76
|
+
<%= current_alchemy_user.name %>
|
77
|
+
<% end %>
|
75
78
|
</div>
|
76
79
|
</div>
|
77
80
|
<% end %>
|
data/config/alchemy/config.yml
CHANGED
@@ -183,14 +183,4 @@ link_target_options: [blank]
|
|
183
183
|
# Should pages that redirect to an external url open the link in a new tab/window?
|
184
184
|
open_external_links_in_new_tab: true
|
185
185
|
|
186
|
-
|
187
|
-
#
|
188
|
-
# List of Devise modules that should be activated on the user model.
|
189
|
-
#
|
190
|
-
devise_modules:
|
191
|
-
- :database_authenticatable
|
192
|
-
- :trackable
|
193
|
-
- :validatable
|
194
|
-
- :timeoutable
|
195
|
-
- :recoverable
|
196
|
-
# - :encryptable # Uncomment this if you are upgrading from an Alchemy version < 2.5.0
|
186
|
+
email_regexp: !ruby/regexp '/\A[^@\s]+@([^@\s]+\.)+[^@\s]+\z/'
|
data/config/alchemy/modules.yml
CHANGED
@@ -54,18 +54,6 @@
|
|
54
54
|
controller: 'alchemy/admin/sites'
|
55
55
|
action: index
|
56
56
|
|
57
|
-
- name: users
|
58
|
-
engine_name: alchemy
|
59
|
-
navigation:
|
60
|
-
name: 'modules.users'
|
61
|
-
controller: 'alchemy/admin/users'
|
62
|
-
action: index
|
63
|
-
icon: users
|
64
|
-
sub_navigation:
|
65
|
-
- name: 'modules.users'
|
66
|
-
controller: 'alchemy/admin/users'
|
67
|
-
action: index
|
68
|
-
|
69
57
|
- name: tags
|
70
58
|
engine_name: alchemy
|
71
59
|
navigation:
|
@@ -291,7 +291,6 @@ de:
|
|
291
291
|
"Successfully added content": "%{content} wurde hinzugefügt"
|
292
292
|
"Successfully deleted content": "%{content} wurde gelöscht"
|
293
293
|
"Successfully saved content position": "Die Position wurde gespeichert."
|
294
|
-
"Successfully signup admin user": "Admin Benutzer wurde erfolgreich eingerichtet."
|
295
294
|
"Switch to Flash® Uploader": "Auf den Flash® Uploader wechseln"
|
296
295
|
sitemap_editor_info: "Die Sitemap wird automatisch generiert"
|
297
296
|
searchresults_editor_info: "Dieses Element stellt die Suchergebnisse dar. Es Bedarf keinerlei Anpassung."
|
@@ -310,8 +309,6 @@ de:
|
|
310
309
|
"Warning!": "Achtung!"
|
311
310
|
content_description_missing: "Warnung: Für diesen Content konnte die Vorlage nicht gefunden werden. Bitte überprüfen Sie die elements.yml Datei."
|
312
311
|
element_description_missing: "Warnung! Für dieses Element konnte die Vorlage nicht gefunden werden. Bitte überprüfen Sie die elements.yml Datei."
|
313
|
-
"Welcome back, %{name}": "Willkommen zurück, %{name}!"
|
314
|
-
"Welcome, %{name}": "Willkommen, %{name}!"
|
315
312
|
"Welcome to Alchemy": "Willkommen in Alchemy"
|
316
313
|
"Who else is online": "Wer ist noch online"
|
317
314
|
"Yes": "Ja"
|
@@ -321,8 +318,6 @@ de:
|
|
321
318
|
"You may upload files with following extensions": "Sie können %{file_types_description} mit folgenden Endungen hochladen: %{file_types}"
|
322
319
|
"You may upload any file": "Sie können jede Art von Datei hochladen."
|
323
320
|
"Your last login was on %{time}": "Sie waren zuletzt angemeldet am %{time}."
|
324
|
-
"Your user credentials": "Ihre Zugangsdaten"
|
325
|
-
"Your Alchemy Login": "Ihre Alchemy Zugangsdaten"
|
326
321
|
"Your last updated pages": "Ihre zuletzt bearbeiteten Seiten"
|
327
322
|
"Your trash is empty": "Der Papierkorb ist leer"
|
328
323
|
above: "darüber"
|
@@ -355,7 +350,6 @@ de:
|
|
355
350
|
confirm_to_delete_images_from_server: "Wollen Sie diese Bilder wirklich vom Server löschen?"
|
356
351
|
confirm_to_delete_language: "Wollen Sie diese Sprache wirklich löschen?<br/>ACHTUNG! Alle zugehörigen Seiten werden ebenfalls gelöscht!"
|
357
352
|
confirm_to_delete_page: "Wollen Sie diese Seite wirklich löschen? Alle Inhalte gehen dabei unwiderruflich verloren!"
|
358
|
-
confirm_to_delete_user: "Wollen Sie diesen Benutzer wirklich löschen?"
|
359
353
|
contactform_body: "Nachrichten Vorlage"
|
360
354
|
content_essence_not_found: "Essenz wurde nicht gefunden"
|
361
355
|
content_not_found: "Das Feld für diesen Inhalt ist nicht vorhanden."
|
@@ -372,7 +366,6 @@ de:
|
|
372
366
|
"Create site": "Eine neue Website erstellen"
|
373
367
|
create_language_tree_heading: "Einen leeren Sprachbaum erstellen"
|
374
368
|
create_page: "Eine Unterseite anlegen"
|
375
|
-
create_user: "Einen Benutzer anlegen"
|
376
369
|
currently_edited_by: "Wird bearbeitet von"
|
377
370
|
cut_element: "Element ausschneiden"
|
378
371
|
delete_file: "Datei vom Server löschen"
|
@@ -380,7 +373,6 @@ de:
|
|
380
373
|
delete_language: "Sprache löschen"
|
381
374
|
delete_page: "Seite löschen"
|
382
375
|
delete_tag: 'Tag löschen'
|
383
|
-
delete_user: "Benutzer löschen"
|
384
376
|
document: "Dokument"
|
385
377
|
documents: "Dateien"
|
386
378
|
download_csv: "CSV runterladen"
|
@@ -393,7 +385,6 @@ de:
|
|
393
385
|
edit_page: "Seite bearbeiten"
|
394
386
|
edit_page_properties: "Seiteneigenschaften bearbeiten"
|
395
387
|
edit_tag: 'Tag bearbeiten'
|
396
|
-
edit_user: "Benutzer bearbeiten"
|
397
388
|
edit_selected_pictures: "Selektierte Bilder:"
|
398
389
|
element_editor_not_found: "Bei diesem Element ist ein Fehler aufgetreten"
|
399
390
|
element_of_type: "Element"
|
@@ -454,7 +445,6 @@ de:
|
|
454
445
|
meta_description: "Meta Beschreibung"
|
455
446
|
meta_keywords: "Meta Tags"
|
456
447
|
modules:
|
457
|
-
user_sessions: "Anmeldung"
|
458
448
|
attachments: "Dateien"
|
459
449
|
dashboard: "Dashboard"
|
460
450
|
pictures: "Bilder"
|
@@ -462,7 +452,6 @@ de:
|
|
462
452
|
layoutpages: "Globale Seiten"
|
463
453
|
library: "Bibliothek"
|
464
454
|
pages: "Seiten"
|
465
|
-
users: "Benutzer"
|
466
455
|
tags: "Tags"
|
467
456
|
sites: "Websites"
|
468
457
|
name: "Name"
|
@@ -584,11 +573,12 @@ de:
|
|
584
573
|
upload_file: "Datei(en) hochladen"
|
585
574
|
upload_image: "Bild(er) hochladen"
|
586
575
|
url_name: "URL-Name"
|
587
|
-
username: "Benutzername"
|
588
576
|
visible: "sichtbar"
|
589
577
|
want_to_create_new_language: "Wollen Sie einen neuen leeren Sprachbaum erstellen?"
|
590
578
|
want_to_make_copy_of_existing_language: "Wollen Sie eine Kopie eines vorhanden Sprachbaums machen?"
|
591
579
|
"We need at least one default.": "Es muss eine Standardsprache geben."
|
580
|
+
welcome_note: "Willkommen %{name}"
|
581
|
+
welcome_back_note: "Willkommen zurück %{name}"
|
592
582
|
welcome_please_identify_notice: "Willkommen! Bitte identifizieren Sie sich."
|
593
583
|
width: "Breite"
|
594
584
|
without_tag: 'Ohne Tag'
|
@@ -608,8 +598,6 @@ de:
|
|
608
598
|
"Succesfully created": "Erfolgreich erstellt"
|
609
599
|
"Succesfully updated": "Erfolgreich aktualisiert"
|
610
600
|
"Succesfully removed": "Erfolgreich gelöscht"
|
611
|
-
"You are already logged in": "Sie sind bereits angemeldet."
|
612
|
-
"No users found": "Keine Benutzer gefunden."
|
613
601
|
"Nothing found": "Keine Einträge gefunden."
|
614
602
|
"Or drag files over here": "Oder ziehen Sie die Dateien hier rauf"
|
615
603
|
"Now drop the files": "Lassen Sie die Dateien nun los"
|
@@ -785,13 +773,7 @@ de:
|
|
785
773
|
alchemy/picture:
|
786
774
|
attributes:
|
787
775
|
image_file:
|
788
|
-
blank: "
|
789
|
-
alchemy/user:
|
790
|
-
attributes:
|
791
|
-
login:
|
792
|
-
invalid: "darf nur aus Buchstaben, Zahlen, Leerzeichen und .-_@ bestehen."
|
793
|
-
email:
|
794
|
-
invalid: "entspricht nicht dem Format einer E-Mail-Adresse."
|
776
|
+
blank: "Bitte fügen Sie ein Bild an."
|
795
777
|
|
796
778
|
activemodel:
|
797
779
|
|
@@ -843,10 +825,6 @@ de:
|
|
843
825
|
one: Bild
|
844
826
|
other: Bilder
|
845
827
|
|
846
|
-
alchemy/user:
|
847
|
-
one: Benutzer
|
848
|
-
other: Benutzer
|
849
|
-
|
850
828
|
alchemy/site:
|
851
829
|
one: Website
|
852
830
|
other: Websites
|
@@ -926,21 +904,6 @@ de:
|
|
926
904
|
name: "Name"
|
927
905
|
tag_list: Tags
|
928
906
|
|
929
|
-
alchemy/user:
|
930
|
-
email: "E-Mail"
|
931
|
-
firstname: "Vorname"
|
932
|
-
gender: "Anrede"
|
933
|
-
language: "Sprache"
|
934
|
-
lastname: "Nachname"
|
935
|
-
last_sign_in_at: "letzter Login am"
|
936
|
-
login: "Benutzername"
|
937
|
-
name: "Name"
|
938
|
-
password: "Passwort"
|
939
|
-
password_confirmation: "Passwort Bestätigung"
|
940
|
-
roles: "Benutzerrollen"
|
941
|
-
tag_list: Tags
|
942
|
-
send_credentials: "Sende Benutzerdaten per E-Mail"
|
943
|
-
|
944
907
|
alchemy/site:
|
945
908
|
name: "Bezeichnung"
|
946
909
|
host: "primäre Domain"
|
@@ -193,7 +193,6 @@ en:
|
|
193
193
|
confirm_to_delete_image: "Do you really want to delete this image from server?"
|
194
194
|
confirm_to_delete_image_from_server: "Do you really want to delete this image from the server?"
|
195
195
|
confirm_to_delete_images_from_server: "Do you really want to delete these images from the server?"
|
196
|
-
confirm_to_delete_user: "Do you really want to delete this user?"
|
197
196
|
contactform_body: "Message Template"
|
198
197
|
content_description_missing: "Warning: Content is missing its description. Please check the elements.yml"
|
199
198
|
content_essence_not_found: "Content essence not found"
|
@@ -209,7 +208,6 @@ en:
|
|
209
208
|
"Create site": "Create a new site"
|
210
209
|
create_language_tree_heading: "Create empty language tree"
|
211
210
|
create_page: "Create a new subpage"
|
212
|
-
create_user: "Create a new user"
|
213
211
|
created_at: "Created at"
|
214
212
|
currently_edited_by: "This page is locked by"
|
215
213
|
cut_element: "Cut this element."
|
@@ -217,7 +215,6 @@ en:
|
|
217
215
|
delete_image: "Remove this image"
|
218
216
|
delete_language: "Delete this language"
|
219
217
|
delete_page: "Delete this page"
|
220
|
-
delete_user: "Delete this user"
|
221
218
|
document: "File"
|
222
219
|
documents: "Files"
|
223
220
|
download_csv: "Download CSV"
|
@@ -230,7 +227,6 @@ en:
|
|
230
227
|
edit_page: "Edit this page"
|
231
228
|
edit_page_properties: "Edit the page´s properties."
|
232
229
|
edit_selected_pictures: "Edit selected pictures"
|
233
|
-
edit_user: "Edit the user´s properties."
|
234
230
|
element_description_missing: "WARNING! Missing description. Please check your elements.yml file."
|
235
231
|
element_dirty_close_window_notice: "You have unsaved elements. Do you really want to close the elements window?"
|
236
232
|
element_editor_not_found: "Error within this Element"
|
@@ -284,7 +280,6 @@ en:
|
|
284
280
|
meta_description: "Meta-Description"
|
285
281
|
meta_keywords: "Meta-Keywords"
|
286
282
|
modules:
|
287
|
-
user_sessions: "Login"
|
288
283
|
attachments: "Files"
|
289
284
|
dashboard: "Dashboard"
|
290
285
|
pictures: "Images"
|
@@ -292,7 +287,6 @@ en:
|
|
292
287
|
layoutpages: "Global Pages"
|
293
288
|
library: "Library"
|
294
289
|
pages: "Pages"
|
295
|
-
users: "Users"
|
296
290
|
tags: "Tags"
|
297
291
|
sites: "Sites"
|
298
292
|
name: "Name"
|
@@ -305,7 +299,6 @@ en:
|
|
305
299
|
no_images_in_archive: "You don't have any images in your archive."
|
306
300
|
no_more_elements_to_add: "No more elements available."
|
307
301
|
no_search_results: "Your search did not return any results."
|
308
|
-
"No users found": "No users found."
|
309
302
|
"not a valid image": "This is not an valid image."
|
310
303
|
"Page created": "Page: '%{name}' created."
|
311
304
|
page_for_links:
|
@@ -399,10 +392,11 @@ en:
|
|
399
392
|
upload_file: "Upload file(s)"
|
400
393
|
upload_image: "Upload image(s)"
|
401
394
|
url_name: "URL-Name"
|
402
|
-
username: "Username"
|
403
395
|
want_to_create_new_language: "Do you want to create a new empty language tree?"
|
404
396
|
want_to_make_copy_of_existing_language: "Do you want to copy an existing language tree?"
|
405
397
|
"Welcome to Alchemy": "Welcome to Alchemy"
|
398
|
+
welcome_note: "Welcome %{name}"
|
399
|
+
welcome_back_note: "Welcome back %{name}"
|
406
400
|
welcome_please_identify_notice: "Welcome! Please identify."
|
407
401
|
width: "Width"
|
408
402
|
"You are already logged in": "You are already logged in."
|
@@ -666,20 +660,6 @@ en:
|
|
666
660
|
image_file_size: "Filesize"
|
667
661
|
name: "Name"
|
668
662
|
|
669
|
-
alchemy/user:
|
670
|
-
email: "Email"
|
671
|
-
firstname: "Firstname"
|
672
|
-
gender: "Gender"
|
673
|
-
language: "Language"
|
674
|
-
lastname: "Lastname"
|
675
|
-
last_sign_in_at: "Last Login At"
|
676
|
-
login: "Username"
|
677
|
-
name: "Name"
|
678
|
-
password: "Password"
|
679
|
-
password_confirmation: "Password confirmation"
|
680
|
-
role: "Userrole"
|
681
|
-
send_credentials: "Send email with credentials"
|
682
|
-
|
683
663
|
alchemy/site:
|
684
664
|
host: primary Host
|
685
665
|
|
data/config/routes.rb
CHANGED
@@ -15,31 +15,6 @@ Alchemy::Engine.routes.draw do
|
|
15
15
|
get '/admin/dashboard/update_check' => 'admin/dashboard#update_check',
|
16
16
|
:as => :update_check
|
17
17
|
|
18
|
-
devise_scope :user do
|
19
|
-
get '/admin/login' => 'user_sessions#new', :as => :login
|
20
|
-
post '/admin/login' => 'user_sessions#create', :as => :login
|
21
|
-
delete '/admin/logout' => 'user_sessions#destroy', :as => :logout
|
22
|
-
get '/admin/dashboard' => 'admin/dashboard#index', :as => :user_root
|
23
|
-
get '/admin/leave' => 'user_sessions#leave', :as => :leave_admin
|
24
|
-
get '/admin/passwords' => 'passwords#new', :as => :new_password
|
25
|
-
get '/admin/passwords/:id/edit/:reset_password_token' => 'passwords#edit', :as => :edit_password
|
26
|
-
post '/admin/passwords' => 'passwords#create', :as => :password
|
27
|
-
put '/admin/passwords' => 'passwords#update', :as => :password
|
28
|
-
end
|
29
|
-
|
30
|
-
# This actualy does all the Devise magic. I.e. current_user method in ApplicationController
|
31
|
-
devise_for(
|
32
|
-
:user,
|
33
|
-
:class_name => 'Alchemy::User',
|
34
|
-
:controllers => {
|
35
|
-
:sessions => 'alchemy/user_sessions'
|
36
|
-
},
|
37
|
-
:skip => [:sessions, :passwords] # skipping Devise default routes.
|
38
|
-
)
|
39
|
-
|
40
|
-
get '/admin/signup' => 'users#new', :as => :signup
|
41
|
-
post '/admin/signup' => 'users#create', :as => :signup
|
42
|
-
|
43
18
|
get '/attachment/:id/download(/:name)' => 'attachments#download',
|
44
19
|
:as => :download_attachment
|
45
20
|
get '/attachment/:id/show' => 'attachments#show',
|
@@ -57,13 +32,13 @@ Alchemy::Engine.routes.draw do
|
|
57
32
|
get "/pictures/:id/thumbnails/:size(/:crop)(/:crop_from/:crop_size)/:name.:format" => 'pictures#thumbnail',
|
58
33
|
:as => :thumbnail, :defaults => {:format => 'png', :name => "thumbnail"}
|
59
34
|
|
35
|
+
get '/admin/leave' => 'base#leave', :as => :leave_admin
|
36
|
+
|
60
37
|
resources :messages, :only => [:index, :new, :create]
|
61
38
|
resources :elements, :only => :show
|
62
39
|
|
63
40
|
namespace :admin do
|
64
41
|
|
65
|
-
resources :users
|
66
|
-
|
67
42
|
resources :contents do
|
68
43
|
collection do
|
69
44
|
post :order
|
@@ -265,37 +265,6 @@ class AlchemyTwoPointSix < ActiveRecord::Migration
|
|
265
265
|
add_index "alchemy_sites", ["host", "public"], :name => "alchemy_sites_public_hosts_idx"
|
266
266
|
add_index "alchemy_sites", ["host"], :name => "index_alchemy_sites_on_host"
|
267
267
|
|
268
|
-
create_table "alchemy_users", :force => true do |t|
|
269
|
-
t.string "firstname"
|
270
|
-
t.string "lastname"
|
271
|
-
t.string "login"
|
272
|
-
t.string "email"
|
273
|
-
t.string "gender"
|
274
|
-
t.string "roles", :default => "registered"
|
275
|
-
t.string "language"
|
276
|
-
t.string "encrypted_password", :limit => 128, :default => "", :null => false
|
277
|
-
t.string "password_salt", :limit => 128, :default => "", :null => false
|
278
|
-
t.integer "sign_in_count", :default => 0, :null => false
|
279
|
-
t.integer "failed_attempts", :default => 0, :null => false
|
280
|
-
t.datetime "last_request_at"
|
281
|
-
t.datetime "current_sign_in_at"
|
282
|
-
t.datetime "last_sign_in_at"
|
283
|
-
t.string "current_sign_in_ip"
|
284
|
-
t.string "last_sign_in_ip"
|
285
|
-
t.datetime "created_at", :null => false
|
286
|
-
t.datetime "updated_at", :null => false
|
287
|
-
t.integer "creator_id"
|
288
|
-
t.integer "updater_id"
|
289
|
-
t.text "cached_tag_list"
|
290
|
-
t.string "reset_password_token"
|
291
|
-
t.datetime "reset_password_sent_at"
|
292
|
-
end
|
293
|
-
|
294
|
-
add_index "alchemy_users", ["email"], :name => "index_alchemy_users_on_email", :unique => true
|
295
|
-
add_index "alchemy_users", ["login"], :name => "index_alchemy_users_on_login", :unique => true
|
296
|
-
add_index "alchemy_users", ["reset_password_token"], :name => "index_alchemy_users_on_reset_password_token", :unique => true
|
297
|
-
add_index "alchemy_users", ["roles"], :name => "index_alchemy_users_on_roles"
|
298
|
-
|
299
268
|
create_table "events", :force => true do |t|
|
300
269
|
t.string "name"
|
301
270
|
t.string "hidden_name"
|