alchemy_cms 2.2.4 → 2.3.rc5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +1 -1
- data/.travis.yml +3 -4
- data/Gemfile +1 -0
- data/README.md +10 -6
- data/alchemy_cms.gemspec +5 -2
- data/app/assets/images/alchemy/icons.png +0 -0
- data/app/assets/images/sassy-ie-overlay.png +0 -0
- data/app/assets/javascripts/alchemy/alchemy.base.js +50 -59
- data/app/assets/javascripts/alchemy/alchemy.buttons.js +14 -4
- data/app/assets/javascripts/alchemy/alchemy.datepicker.js +8 -2
- data/app/assets/javascripts/alchemy/alchemy.elements_window.js +11 -3
- data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +1 -1
- data/app/assets/javascripts/alchemy/alchemy.link_overlay.js.coffee +14 -1
- data/app/assets/javascripts/alchemy/alchemy.preview.js +1 -1
- data/app/assets/javascripts/alchemy/alchemy.preview_window.js +12 -4
- data/app/assets/javascripts/alchemy/alchemy.uploader.js +4 -1
- data/app/assets/javascripts/alchemy/alchemy.windows.js +18 -8
- data/app/assets/stylesheets/alchemy/_defaults.scss +84 -120
- data/app/assets/stylesheets/alchemy/alchemy.css +2 -2
- data/app/assets/stylesheets/alchemy/archive.css.scss +288 -0
- data/app/assets/stylesheets/alchemy/base.css.scss +95 -390
- data/app/assets/stylesheets/alchemy/dashboard.css.scss +4 -4
- data/app/assets/stylesheets/alchemy/elements.css.scss +83 -118
- data/app/assets/stylesheets/alchemy/flash.css.scss +1 -1
- data/app/assets/stylesheets/alchemy/form_elements.css.scss +528 -0
- data/app/assets/stylesheets/alchemy/frame.css.scss +13 -39
- data/app/assets/stylesheets/alchemy/icons.css.scss +217 -228
- data/app/assets/stylesheets/alchemy/jquery-ui.alchemy.css.scss +48 -50
- data/app/assets/stylesheets/alchemy/jquery.Jcrop.css.scss +1 -1
- data/app/assets/stylesheets/alchemy/login.css.scss +1 -5
- data/app/assets/stylesheets/alchemy/menubar.css.scss +19 -29
- data/app/assets/stylesheets/alchemy/pagination.css.scss +3 -4
- data/app/assets/stylesheets/alchemy/sitemap.css.scss +81 -81
- data/app/assets/stylesheets/alchemy/tables.css.scss +63 -57
- data/app/assets/stylesheets/alchemy/tinymce_dialog.css.scss +57 -57
- data/app/assets/stylesheets/alchemy/upload.css.scss +6 -6
- data/app/assets/stylesheets/tiny_mce/plugins/inlinepopups/skins/alchemy/window.css.scss +6 -10
- data/app/controllers/alchemy/admin/attachments_controller.rb +5 -4
- data/app/controllers/alchemy/admin/base_controller.rb +1 -9
- data/app/controllers/alchemy/admin/contents_controller.rb +4 -6
- data/app/controllers/alchemy/admin/elements_controller.rb +2 -2
- data/app/controllers/alchemy/admin/pages_controller.rb +2 -2
- data/app/controllers/alchemy/admin/pictures_controller.rb +74 -15
- data/app/controllers/alchemy/attachments_controller.rb +8 -2
- data/app/controllers/alchemy/base_controller.rb +47 -5
- data/app/controllers/alchemy/elements_controller.rb +1 -1
- data/app/controllers/alchemy/messages_controller.rb +12 -12
- data/app/controllers/alchemy/pages_controller.rb +5 -1
- data/app/controllers/alchemy/pictures_controller.rb +9 -4
- data/app/controllers/alchemy/user_sessions_controller.rb +2 -4
- data/app/helpers/alchemy/admin/base_helper.rb +98 -19
- data/app/helpers/alchemy/admin/contents_helper.rb +2 -2
- data/app/helpers/alchemy/admin/elements_helper.rb +2 -3
- data/app/helpers/alchemy/base_helper.rb +6 -5
- data/app/helpers/alchemy/elements_helper.rb +2 -2
- data/app/helpers/alchemy/essences_helper.rb +4 -5
- data/app/helpers/alchemy/pages_helper.rb +15 -79
- data/app/helpers/alchemy/url_helper.rb +67 -0
- data/app/mailers/alchemy/messages.rb +1 -1
- data/app/mailers/alchemy/notifications.rb +1 -1
- data/app/models/alchemy/attachment.rb +11 -2
- data/app/models/alchemy/cell.rb +20 -10
- data/app/models/alchemy/content.rb +4 -3
- data/app/models/alchemy/element.rb +170 -178
- data/app/models/alchemy/language/code.rb +4 -1
- data/app/models/alchemy/message.rb +19 -3
- data/app/models/alchemy/page.rb +45 -40
- data/app/models/alchemy/picture.rb +24 -2
- data/app/models/alchemy/user.rb +2 -3
- data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +12 -12
- data/app/views/alchemy/admin/attachments/_attachment.html.erb +1 -1
- data/app/views/alchemy/admin/attachments/create.js.erb +1 -0
- data/app/views/alchemy/admin/attachments/edit.html.erb +9 -3
- data/app/views/alchemy/admin/attachments/index.html.erb +3 -2
- data/app/views/alchemy/admin/contents/_missing.html.erb +1 -1
- data/app/views/alchemy/admin/contents/create.js.erb +54 -0
- data/app/views/alchemy/admin/contents/new.html.erb +9 -4
- data/app/views/alchemy/admin/elements/{_add_content.html.erb → _add_picture.html.erb} +4 -4
- data/app/views/alchemy/admin/elements/_elements_select.html.erb +2 -1
- data/app/views/alchemy/admin/elements/_new_element_form.html.erb +1 -1
- data/app/views/alchemy/admin/elements/{_picture_editor.html.erb → _picture_gallery_editor.html.erb} +7 -11
- data/app/views/alchemy/admin/elements/fold.js.erb +46 -0
- data/app/views/alchemy/admin/elements/index.html.erb +24 -24
- data/app/views/alchemy/admin/elements/list.js.erb +11 -9
- data/app/views/alchemy/admin/essence_files/assign.js.erb +3 -1
- data/app/views/alchemy/admin/essence_pictures/destroy.js.erb +28 -0
- data/app/views/alchemy/admin/pages/_contactform_links.html.erb +8 -6
- data/app/views/alchemy/admin/pages/_external_link.html.erb +11 -9
- data/app/views/alchemy/admin/pages/_file_link.html.erb +10 -8
- data/app/views/alchemy/admin/pages/_internal_link.html.erb +14 -10
- data/app/views/alchemy/admin/pages/_new_page_form.html.erb +1 -1
- data/app/views/alchemy/admin/pages/_page.html.erb +1 -1
- data/app/views/alchemy/admin/pages/_page_for_links.html.erb +32 -21
- data/app/views/alchemy/admin/pages/configure.html.erb +2 -2
- data/app/views/alchemy/admin/pages/configure_external.html.erb +13 -13
- data/app/views/alchemy/admin/pages/edit.html.erb +2 -2
- data/app/views/alchemy/admin/pages/index.html.erb +26 -24
- data/app/views/alchemy/admin/pages/link.html.erb +2 -5
- data/app/views/alchemy/admin/partials/_upload_form.html.erb +28 -12
- data/app/views/alchemy/admin/pictures/_archive.html.erb +54 -0
- data/app/views/alchemy/admin/pictures/_archive_overlay.html.erb +10 -7
- data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +21 -22
- data/app/views/alchemy/admin/pictures/_filter_bar.html.erb +31 -0
- data/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb +9 -0
- data/app/views/alchemy/admin/pictures/_picture.html.erb +36 -6
- data/app/views/alchemy/admin/pictures/_tag_list.html.erb +27 -0
- data/app/views/alchemy/admin/pictures/archive_overlay.js.erb +3 -1
- data/app/views/alchemy/admin/pictures/create.js.erb +4 -5
- data/app/views/alchemy/admin/pictures/edit.html.erb +26 -0
- data/app/views/alchemy/admin/pictures/edit_multiple.html.erb +39 -0
- data/app/views/alchemy/admin/pictures/index.html.erb +81 -70
- data/app/views/alchemy/admin/pictures/index.js.erb +3 -0
- data/app/views/alchemy/admin/pictures/new.html.erb +1 -0
- data/app/views/alchemy/admin/resources/index.html.erb +3 -1
- data/app/views/alchemy/admin/users/_table.html.erb +1 -1
- data/app/views/alchemy/admin/users/index.html.erb +27 -23
- data/app/views/alchemy/elements/_article_editor.html.erb +7 -2
- data/app/views/alchemy/elements/_bild_editor.html.erb +1 -1
- data/app/views/alchemy/elements/_bild_text_editor.html.erb +6 -1
- data/app/views/alchemy/elements/_bild_text_view.html.erb +3 -3
- data/app/views/alchemy/elements/_image_mosaic_editor.html.erb +1 -1
- data/app/views/alchemy/elements/_image_mosaic_view.html.erb +2 -2
- data/app/views/alchemy/elements/_intro_image_text_view.html.erb +4 -4
- data/app/views/alchemy/elements/_searchresult_editor.html.erb +4 -1
- data/app/views/alchemy/essences/_essence_boolean_editor.html.erb +1 -1
- data/app/views/alchemy/essences/_essence_picture_editor.html.erb +2 -3
- data/app/views/alchemy/essences/_essence_picture_tools.html.erb +1 -1
- data/app/views/alchemy/search/_form.html.erb +8 -0
- data/app/views/alchemy/search/_result.html.erb +3 -2
- data/app/views/alchemy/search/_results.html.erb +28 -0
- data/app/views/alchemy/user_sessions/leave.html.erb +4 -4
- data/app/views/alchemy/user_sessions/login.html.erb +1 -2
- data/app/views/layouts/alchemy/admin.html.erb +30 -10
- data/app/views/layouts/alchemy/login.html.erb +2 -39
- data/config/alchemy/elements.yml +1 -2
- data/config/alchemy/page_layouts.yml +8 -5
- data/config/authorization_rules.rb +27 -18
- data/config/initializers/localeapp.rb +9 -0
- data/config/locales/alchemy.de.yml +93 -56
- data/config/locales/alchemy.en.yml +73 -50
- data/config/routes.rb +3 -1
- data/db/migrate/20120704181529_add_upload_hash_to_alchemy_picture.rb +5 -0
- data/db/migrate/20120705214247_acts_as_taggable_on_migration.rb +28 -0
- data/db/migrate/20120728185830_add_cached_tag_list_to_alchemy_pictures.rb +5 -0
- data/db/migrate/20120831135441_set_alchemy_languages_country_code_default_to_empty_string.rb +9 -0
- data/lib/alchemy/capistrano.rb +2 -2
- data/lib/alchemy/essence.rb +14 -0
- data/lib/alchemy/page_layout.rb +0 -6
- data/lib/alchemy/resource.rb +9 -15
- data/lib/alchemy/upgrader.rb +18 -3
- data/lib/alchemy/version.rb +5 -1
- data/lib/alchemy_cms.rb +4 -1
- data/lib/rails/generators/alchemy/deploy_script/deploy_script_generator.rb +16 -6
- data/lib/rails/generators/alchemy/deploy_script/templates/deploy.rb.tt +17 -3
- data/lib/rails/generators/alchemy/elements/elements_generator.rb +6 -1
- data/lib/rails/generators/alchemy/elements/templates/editor.html.erb +10 -1
- data/lib/rails/generators/alchemy/elements/templates/view.html.erb +17 -18
- data/lib/rails/generators/alchemy/scaffold/files/pages.html.erb +4 -2
- data/lib/tasks/fleximage.rake +2 -2
- data/spec/controllers/admin/contents_controller_spec.rb +2 -2
- data/spec/controllers/admin/elements_controller_spec.rb +30 -1
- data/spec/controllers/admin/pages_controller_spec.rb +35 -18
- data/spec/controllers/admin/trash_controller_spec.rb +40 -16
- data/spec/controllers/attachments_controller_spec.rb +62 -0
- data/spec/controllers/base_controller_spec.rb +43 -42
- data/spec/controllers/elements_controller_spec.rb +30 -0
- data/spec/controllers/pages_controller_spec.rb +22 -5
- data/spec/controllers/pictures_controller_spec.rb +82 -0
- data/spec/dummy/app/models/event.rb +2 -1
- data/spec/dummy/config/database.yml +3 -2
- data/spec/dummy/db/schema.rb +51 -27
- data/spec/factories.rb +29 -8
- data/spec/helpers/admin/base_helper_spec.rb +134 -21
- data/spec/helpers/admin/contents_helper_spec.rb +2 -2
- data/spec/helpers/admin/elements_helper_spec.rb +17 -9
- data/spec/helpers/admin/essences_helper_spec.rb +7 -6
- data/spec/helpers/essences_helper_spec.rb +8 -7
- data/spec/helpers/pages_helper_spec.rb +208 -325
- data/spec/helpers/url_helper_spec.rb +171 -0
- data/spec/integration/admin/link_overlay_spec.rb +53 -0
- data/spec/integration/admin/modules_integration_spec.rb +22 -26
- data/spec/integration/admin/pages_controller_spec.rb +10 -19
- data/spec/integration/admin/picture_library_integration_spec.rb +52 -0
- data/spec/integration/admin/resources_integration_spec.rb +68 -75
- data/spec/integration/pages_controller_spec.rb +70 -61
- data/spec/integration/security_spec.rb +3 -5
- data/spec/integration/translation_integration_spec.rb +56 -0
- data/spec/libraries/essence_spec.rb +18 -0
- data/spec/libraries/resource_spec.rb +101 -79
- data/spec/libraries/resources_helper_spec.rb +3 -0
- data/spec/models/content_spec.rb +63 -60
- data/spec/models/element_spec.rb +203 -93
- data/spec/models/language_spec.rb +90 -65
- data/spec/models/page_layout_spec.rb +37 -0
- data/spec/models/page_spec.rb +181 -113
- data/spec/models/picture_spec.rb +73 -26
- data/spec/models/resource_spec.rb +52 -23
- data/spec/support/alchemy/specs_helpers.rb +2 -0
- data/spec/support/image.png +0 -0
- data/spec/{helpers/url_helpers_spec.rb → url_helpers_spec.rb} +0 -0
- data/vendor/assets/javascripts/jquery_plugins/jquery.selectBoxIt.js +1909 -0
- data/vendor/assets/javascripts/jquery_plugins/preloadCssImages.jQuery_v5.js +152 -0
- metadata +106 -33
- data/app/assets/stylesheets/alchemy/buttons.css.scss +0 -361
- data/app/assets/stylesheets/alchemy/jquery.sb.css.scss +0 -260
- data/app/views/alchemy/admin/contents/create.js.coffee +0 -49
- data/app/views/alchemy/admin/elements/fold.js.coffee +0 -37
- data/app/views/alchemy/admin/essence_pictures/destroy.js.coffee +0 -19
- data/app/views/alchemy/admin/pictures/_pictures_list.html.erb +0 -16
- data/app/views/alchemy/admin/pictures/update.js.erb +0 -3
- data/spec/dummy/config/locales/en.yml +0 -5
- data/spec/dummy/config/locales/fo.yml +0 -5
- data/spec/page_layout_spec.rb +0 -35
- data/vendor/assets/javascripts/jquery_plugins/jquery.in-place-edit.js +0 -172
- data/vendor/assets/javascripts/jquery_plugins/jquery.sb.min.js +0 -14
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<% cache(content) do %>
|
|
2
2
|
<div class="content_editor essence_boolean" id="<%= content_dom_id(content) %>">
|
|
3
|
+
<input type="hidden" value="0" name="<%= content.form_field_name %>" />
|
|
3
4
|
<%= check_box_tag(content.form_field_name, 1,
|
|
4
5
|
!content.ingredient.nil? ? content.ingredient : options[:default_value],
|
|
5
|
-
:onclick => "Alchemy.handleEssenceCheckbox(this)",
|
|
6
6
|
:class => html_options[:class],
|
|
7
7
|
:style => html_options[:style]
|
|
8
8
|
) %>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<label><%= render_content_name(content) %></label>
|
|
4
4
|
<% end %>
|
|
5
5
|
<div class="picture_thumbnail">
|
|
6
|
-
<span class="
|
|
6
|
+
<span class="picture_tool delete">
|
|
7
7
|
<% if options[:grouped] %>
|
|
8
8
|
<%= link_to_confirmation_window(
|
|
9
9
|
"",
|
|
@@ -13,8 +13,7 @@
|
|
|
13
13
|
:options => options
|
|
14
14
|
),
|
|
15
15
|
{
|
|
16
|
-
:title => t("delete_image")
|
|
17
|
-
:class => "picture_delete"
|
|
16
|
+
:title => t("delete_image")
|
|
18
17
|
}
|
|
19
18
|
) -%>
|
|
20
19
|
<% else %>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<%= form_tag(show_alchemy_page_path(@search_result_page), :method => :get, :class => 'fulltext_search') do %>
|
|
2
|
+
<% if options[:html5] %>
|
|
3
|
+
<%= search_field_tag(:query, params[:query], :placeholder => t('search query')) %>
|
|
4
|
+
<% else %>
|
|
5
|
+
<%= text_field_tag(:query, params[:query]) %>
|
|
6
|
+
<% end %>
|
|
7
|
+
<%= submit_tag(t("search"), :name => nil) %>
|
|
8
|
+
<% end %>
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<li class="search_result">
|
|
2
|
-
<h3
|
|
3
|
-
<%=
|
|
2
|
+
<h3>
|
|
3
|
+
<%= t('search_result_page.result_page') %>:
|
|
4
|
+
<%= link_to page.name, show_alchemy_page_path(page) %>
|
|
4
5
|
<%= content_tag(:span, page.language_code.upcase, :class => 'language_code') if multi_language? && options[:show_language] %>
|
|
5
6
|
</h3>
|
|
6
7
|
<%- result.each do |highlight| -%>
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<div class="search_results">
|
|
2
|
+
<% if @search_results.blank? %>
|
|
3
|
+
<h2 class="no_search_results">
|
|
4
|
+
<%=raw t('search_result_page.no_results', :query => h(params[:query])) %>
|
|
5
|
+
</h2>
|
|
6
|
+
<% else %>
|
|
7
|
+
<% if options[:show_heading] %>
|
|
8
|
+
<h1 class="search_results_heading">
|
|
9
|
+
<%=raw t("search_result_page.result_heading", :query => h(params[:query])) %>
|
|
10
|
+
</h1>
|
|
11
|
+
<% end %>
|
|
12
|
+
<% if options[:show_result_count] %>
|
|
13
|
+
<h2 class="search_result_count">
|
|
14
|
+
<%=raw t("search_result_page.result_count", :count => @search_results.length) %>
|
|
15
|
+
</h2>
|
|
16
|
+
<% end %>
|
|
17
|
+
<ul class="search_result_list">
|
|
18
|
+
<% @search_results.each do |search_result| %>
|
|
19
|
+
<% result = search_result.highlight(
|
|
20
|
+
"*#{params[:query]}*", {
|
|
21
|
+
:field => (search_result.class.name == "Alchemy::EssenceRichtext" ? :stripped_body : :body)
|
|
22
|
+
}
|
|
23
|
+
) %>
|
|
24
|
+
<%= render 'alchemy/search/result', :result => result, :options => options, :page => search_result.page %>
|
|
25
|
+
<% end %>
|
|
26
|
+
</ul>
|
|
27
|
+
<% end %>
|
|
28
|
+
</div>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
<div class="with_padding">
|
|
2
2
|
<h2><%= t("You are about to leave Alchemy") %>.</h2>
|
|
3
|
-
<p
|
|
4
|
-
|
|
3
|
+
<p class="buttons">
|
|
4
|
+
<label><%= t("Do you want to") %></label>
|
|
5
5
|
<%= link_to t('stay logged in'), alchemy.root_path, :class => 'button' %>
|
|
6
6
|
</p>
|
|
7
|
-
<p
|
|
8
|
-
|
|
7
|
+
<p class="buttons">
|
|
8
|
+
<label><%= t('or to completly') %></label>
|
|
9
9
|
<%= link_to t('logout'), alchemy.logout_path, :class => 'button' %>
|
|
10
10
|
</p>
|
|
11
11
|
</div>
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
<div id="login_box">
|
|
2
2
|
<div id="alchemy_greeting">
|
|
3
3
|
<%= image_tag("alchemy/alchemy-logo.png", :style => "width: 240px; height: 70px") %>
|
|
4
|
-
<h1><%= flash[:info] %></h1>
|
|
5
4
|
</div>
|
|
6
5
|
<div class="login_signup_box">
|
|
7
6
|
<%= form_for @user_session, :url => {:action => 'login'}, :html => { :id => "login" } do |f| %>
|
|
@@ -12,7 +11,7 @@
|
|
|
12
11
|
<%= f.label :login %>
|
|
13
12
|
</td>
|
|
14
13
|
<td class="input">
|
|
15
|
-
<%= f.text_field :login, :class => 'thin_border' %>
|
|
14
|
+
<%= f.text_field :login, :class => 'thin_border', :autofocus => true %>
|
|
16
15
|
</td>
|
|
17
16
|
</tr>
|
|
18
17
|
<tr>
|
|
@@ -33,9 +33,22 @@
|
|
|
33
33
|
<%= yield(:alchemy_main_navigation) %>
|
|
34
34
|
</div>
|
|
35
35
|
<div id="logout">
|
|
36
|
-
|
|
36
|
+
<% if current_user %>
|
|
37
|
+
<%= link_to_overlay_window(
|
|
38
|
+
"<span class='module icon exit'></span><label>#{t('leave')}</label>".html_safe,
|
|
39
|
+
alchemy.leave_admin_path, {
|
|
40
|
+
:size => "300x105",
|
|
41
|
+
:title => t("Leave Alchemy")
|
|
42
|
+
}) %>
|
|
43
|
+
<% else %>
|
|
44
|
+
<%= link_to(alchemy.root_path) do %>
|
|
45
|
+
<span class="module icon exit"></span>
|
|
46
|
+
<label><%= t('leave') %></label>
|
|
47
|
+
<% end %>
|
|
48
|
+
<% end %>
|
|
37
49
|
</div>
|
|
38
50
|
</div>
|
|
51
|
+
<% if current_user %>
|
|
39
52
|
<div id="top_menu">
|
|
40
53
|
<div id="sub_navigation">
|
|
41
54
|
<%= admin_subnavigation %>
|
|
@@ -46,35 +59,42 @@
|
|
|
46
59
|
<div id="toolbar">
|
|
47
60
|
<%= yield(:toolbar) %>
|
|
48
61
|
</div>
|
|
49
|
-
<%- if current_user -%>
|
|
50
62
|
<div id="user_info">
|
|
63
|
+
<%= select_tag 'change_locale', options_for_select(::I18n.available_locales.map { |l| [l.to_s.upcase, l] }, ::I18n.locale), :class => 'alchemy_select tiny' %>
|
|
51
64
|
<%= t('Logged in as') %> <%= current_user.name %>
|
|
52
65
|
</div>
|
|
53
|
-
<%- end -%>
|
|
54
66
|
</div>
|
|
67
|
+
<% end %>
|
|
55
68
|
<%= render :partial => 'alchemy/admin/partials/flash_notices' %>
|
|
56
69
|
<div id="main_content">
|
|
57
|
-
|
|
58
|
-
<%= yield %>
|
|
59
|
-
</div>
|
|
70
|
+
<%= yield %>
|
|
60
71
|
</div>
|
|
61
72
|
<%= yield(:javascripts) %>
|
|
62
73
|
<script type="text/javascript" charset="utf-8">
|
|
63
74
|
jQuery(function($) {
|
|
75
|
+
// Preloading all background images from CSS files.
|
|
76
|
+
$.preloadCssImages();
|
|
64
77
|
$('html').removeClass('no-js');
|
|
65
78
|
Alchemy.locale = '<%= ::I18n.locale %>';
|
|
66
79
|
Alchemy.resizeFrame();
|
|
67
80
|
Alchemy.Tooltips();
|
|
68
|
-
|
|
69
|
-
Alchemy.SelectBox('body#alchemy select.alchemy_selectbox');
|
|
70
|
-
}
|
|
81
|
+
Alchemy.SelectBox();
|
|
71
82
|
Alchemy.Datepicker();
|
|
72
83
|
if ($('#flash_notices').length > 0) {
|
|
73
84
|
Alchemy.Growler.fade();
|
|
74
85
|
}
|
|
75
|
-
$('a.please_wait, form .button, form .icon_button, #main_navi a.main_navi_entry, #sub_navigation .subnavi_tab a, .pagination a').not('#subnav_additions .subnavi_tab button').click(function() {
|
|
86
|
+
$('a.please_wait, form button.button, form .icon_button, #main_navi a.main_navi_entry, #sub_navigation .subnavi_tab a, .pagination a').not('*[data-alchemy-confirm], #subnav_additions .subnavi_tab button').click(function() {
|
|
76
87
|
Alchemy.pleaseWaitOverlay();
|
|
77
88
|
});
|
|
89
|
+
// Hack for enabling tab focus for a's styled as button
|
|
90
|
+
$('a.button').attr({tabindex: 0});
|
|
91
|
+
|
|
92
|
+
// Locale select handler
|
|
93
|
+
$('select#change_locale').on('change', function(e) {
|
|
94
|
+
var url = '<%= url_for.html_safe %>';
|
|
95
|
+
delimiter = url.match(/\?/) ? '&' : '?';
|
|
96
|
+
window.location = url + delimiter + 'locale=' + $(this).val();
|
|
97
|
+
});
|
|
78
98
|
});
|
|
79
99
|
jQuery(window).resize(function() {
|
|
80
100
|
Alchemy.resizeFrame();
|
|
@@ -1,39 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<title><%= render_alchemy_title %></title>
|
|
6
|
-
<%= csrf_meta_tag %>
|
|
7
|
-
<%= stylesheet_link_tag('alchemy/alchemy', :media => 'screen') %>
|
|
8
|
-
<%= stylesheet_link_tag('alchemy/print', :media => 'print') %>
|
|
9
|
-
<%= javascript_include_tag('alchemy/alchemy') %>
|
|
10
|
-
</head>
|
|
11
|
-
<body id="alchemy" class="login">
|
|
12
|
-
<noscript>
|
|
13
|
-
<h1><%= t(:javascript_disabled_headline) %></h1>
|
|
14
|
-
<p><%= t(:javascript_disabled_text) %></p>
|
|
15
|
-
</noscript>
|
|
16
|
-
<div id="left_menu">
|
|
17
|
-
<div id="main_navi">
|
|
18
|
-
<div id="logout">
|
|
19
|
-
<%= link_to(alchemy.root_path) do %>
|
|
20
|
-
<span class="module icon exit"></span>
|
|
21
|
-
<label><%= t('leave') %></label>
|
|
22
|
-
<% end %>
|
|
23
|
-
</div>
|
|
24
|
-
</div>
|
|
25
|
-
<div id="left_menu_background"></div>
|
|
26
|
-
</div>
|
|
27
|
-
<div id="main_content">
|
|
28
|
-
<%= yield %>
|
|
29
|
-
</div>
|
|
30
|
-
<%= yield(:javascripts) %>
|
|
31
|
-
<script type="text/javascript" charset="utf-8">
|
|
32
|
-
jQuery(document).ready(function($) {
|
|
33
|
-
$('html').removeClass('no-js');
|
|
34
|
-
Alchemy.SelectBox('body#alchemy select.alchemy_selectbox');
|
|
35
|
-
Alchemy.ButtonObserver('.button');
|
|
36
|
-
});
|
|
37
|
-
</script>
|
|
38
|
-
</body>
|
|
39
|
-
</html>
|
|
1
|
+
<%# This file only exist for cases where one want to override the login view %>
|
|
2
|
+
<%= render :template => 'layouts/alchemy/admin' %>
|
data/config/alchemy/elements.yml
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# == This file defines the page_layouts for new pages.
|
|
2
|
-
#
|
|
2
|
+
#
|
|
3
3
|
# Please make your own page_layouts for your app in your own Rails.root/config/alchemy/page_layouts.yml file.
|
|
4
4
|
#
|
|
5
5
|
# === DSL:
|
|
@@ -17,17 +17,17 @@
|
|
|
17
17
|
# action: action_name # Controllers action to use instead of the default PagesController#show
|
|
18
18
|
#
|
|
19
19
|
# === Translate page layout names
|
|
20
|
-
#
|
|
20
|
+
#
|
|
21
21
|
# Page layout names are passed through the I18n library. So you can translate them in your config/locales language yml file.
|
|
22
|
-
#
|
|
22
|
+
#
|
|
23
23
|
# Example:
|
|
24
|
-
#
|
|
24
|
+
#
|
|
25
25
|
# de:
|
|
26
26
|
# alchemy:
|
|
27
27
|
# page_layout_names:
|
|
28
28
|
# contact: Kontakt
|
|
29
29
|
# search: Suche
|
|
30
|
-
#
|
|
30
|
+
#
|
|
31
31
|
- name: intro
|
|
32
32
|
unique: true
|
|
33
33
|
elements: [header, intro_image_text]
|
|
@@ -66,3 +66,6 @@
|
|
|
66
66
|
unique: true
|
|
67
67
|
layoutpage: true
|
|
68
68
|
elements: [footnote]
|
|
69
|
+
|
|
70
|
+
- name: external
|
|
71
|
+
redirects_to_external: true
|
|
@@ -1,26 +1,35 @@
|
|
|
1
1
|
authorization do
|
|
2
|
-
|
|
2
|
+
|
|
3
3
|
role :guest do
|
|
4
4
|
has_permission_on :alchemy_pages, :to => [:show] do
|
|
5
5
|
if_attribute :public => true, :restricted => false
|
|
6
6
|
end
|
|
7
7
|
has_permission_on :alchemy_elements, :to => [:show] do
|
|
8
|
-
if_attribute :public => true
|
|
8
|
+
if_attribute :public => true, :restricted? => false
|
|
9
|
+
end
|
|
10
|
+
has_permission_on :alchemy_attachments, :to => [:show, :download] do
|
|
11
|
+
if_attribute :restricted? => false
|
|
12
|
+
end
|
|
13
|
+
has_permission_on :alchemy_pictures, :to => [:show] do
|
|
14
|
+
if_attribute :restricted? => false
|
|
9
15
|
end
|
|
10
|
-
has_permission_on :alchemy_pictures, :to => [:show]
|
|
11
|
-
has_permission_on :attachments, :to => [:show, :download]
|
|
12
16
|
end
|
|
13
|
-
|
|
17
|
+
|
|
14
18
|
role :registered do
|
|
15
19
|
includes :guest
|
|
16
20
|
has_permission_on :alchemy_pages, :to => [:show] do
|
|
17
21
|
if_attribute :public => true
|
|
18
22
|
end
|
|
23
|
+
has_permission_on :alchemy_elements, :to => [:show] do
|
|
24
|
+
if_attribute :public => true
|
|
25
|
+
end
|
|
19
26
|
has_permission_on :alchemy_admin_users, :to => [:edit, :update] do
|
|
20
27
|
if_attribute :id => is {user.id}
|
|
21
28
|
end
|
|
29
|
+
has_permission_on :alchemy_attachments, :to => [:show, :download]
|
|
30
|
+
has_permission_on :alchemy_pictures, :to => [:show]
|
|
22
31
|
end
|
|
23
|
-
|
|
32
|
+
|
|
24
33
|
role :author do
|
|
25
34
|
includes :registered
|
|
26
35
|
has_permission_on :alchemy_admin_dashboard, :to => [:index]
|
|
@@ -36,55 +45,55 @@ authorization do
|
|
|
36
45
|
has_permission_on :alchemy_admin_trash, :to => [:index, :clear]
|
|
37
46
|
has_permission_on :alchemy_admin_clipboard, :to => [:index, :insert, :remove, :clear]
|
|
38
47
|
end
|
|
39
|
-
|
|
48
|
+
|
|
40
49
|
role :editor do
|
|
41
50
|
includes :author
|
|
42
51
|
has_permission_on :alchemy_admin_attachments, :to => [:manage]
|
|
43
|
-
has_permission_on :alchemy_admin_pictures, :to => [:manage, :flush]
|
|
52
|
+
has_permission_on :alchemy_admin_pictures, :to => [:manage, :flush, :delete_multiple, :edit_multiple, :update_multiple]
|
|
44
53
|
has_permission_on :alchemy_admin_pages, :to => [:manage_pages]
|
|
45
54
|
has_permission_on :alchemy_admin_layoutpages, :to => [:index]
|
|
46
55
|
end
|
|
47
|
-
|
|
56
|
+
|
|
48
57
|
role :admin do
|
|
49
58
|
includes :editor
|
|
50
59
|
has_permission_on :alchemy_admin_users, :to => [:manage]
|
|
51
60
|
has_permission_on :alchemy_admin_languages, :to => [:manage]
|
|
52
61
|
has_permission_on :authorization_rules, :to => :read
|
|
53
62
|
end
|
|
54
|
-
|
|
63
|
+
|
|
55
64
|
end
|
|
56
65
|
|
|
57
66
|
privileges do
|
|
58
|
-
|
|
67
|
+
|
|
59
68
|
# default privilege hierarchies to facilitate RESTful Rails apps
|
|
60
69
|
privilege :manage, :includes => [:create, :read, :update, :delete]
|
|
61
70
|
privilege :read, :includes => [:index, :show]
|
|
62
71
|
privilege :create, :includes => :new
|
|
63
72
|
privilege :update, :includes => :edit
|
|
64
73
|
privilege :delete, :includes => :destroy
|
|
65
|
-
|
|
74
|
+
|
|
66
75
|
privilege :manage_pages, :alchemy_admin_pages do
|
|
67
76
|
includes :manage, :switch_language, :sort, :order, :configure, :flush, :copy, :copy_language_tree
|
|
68
77
|
end
|
|
69
|
-
|
|
78
|
+
|
|
70
79
|
privilege :manage_elements, :alchemy_admin_elements do
|
|
71
80
|
includes :manage, :copy_to_clipboard, :order, :fold, :list, :trash
|
|
72
81
|
end
|
|
73
|
-
|
|
82
|
+
|
|
74
83
|
privilege :manage_contents, :alchemy_admin_contents do
|
|
75
84
|
includes :manage, :order
|
|
76
85
|
end
|
|
77
|
-
|
|
86
|
+
|
|
78
87
|
privilege :manage_picture_essences, :alchemy_admin_essence_pictures do
|
|
79
88
|
includes :manage, :save_link, :assign, :crop
|
|
80
89
|
end
|
|
81
|
-
|
|
90
|
+
|
|
82
91
|
privilege :manage_file_essences, :alchemy_admin_essence_files do
|
|
83
92
|
includes :manage, :assign
|
|
84
93
|
end
|
|
85
|
-
|
|
94
|
+
|
|
86
95
|
privilege :edit_page_content, :alchemy_admin_pages do
|
|
87
96
|
includes :edit, :unlock, :show, :publish, :visit
|
|
88
97
|
end
|
|
89
|
-
|
|
98
|
+
|
|
90
99
|
end
|
|
@@ -21,6 +21,7 @@ de:
|
|
|
21
21
|
search: Suche
|
|
22
22
|
layout_header: 'Header Bereich'
|
|
23
23
|
layout_footer: 'Footer Bereich'
|
|
24
|
+
external: Externer Link
|
|
24
25
|
|
|
25
26
|
# == Translations for element names
|
|
26
27
|
# Just use the elements name like defined inside the config/alchemy/elements.yml file and translate it.
|
|
@@ -91,12 +92,12 @@ de:
|
|
|
91
92
|
|
|
92
93
|
# == Translations for the build in full text search.
|
|
93
94
|
search_result_page:
|
|
94
|
-
|
|
95
|
+
result_page: Seite
|
|
96
|
+
no_results: "Ihre Suche nach '%{query}' ergab keine Treffer."
|
|
95
97
|
result_heading: "Ihre Suche nach '%{query}'"
|
|
96
98
|
result_count:
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
other: "Ergab %{count} Ergebnisse"
|
|
99
|
+
one: "Ergab einen Treffer"
|
|
100
|
+
other: "Ergab %{count} Treffer"
|
|
100
101
|
|
|
101
102
|
# == Contactform translations
|
|
102
103
|
contactform:
|
|
@@ -183,7 +184,7 @@ de:
|
|
|
183
184
|
"Alchemy is open software and itself uses open software and free resources:": "Alchemy ist offene Software und benutzt selbst offene Software und freie Ressourcen:"
|
|
184
185
|
"Choose page": "Seite wählen"
|
|
185
186
|
"Cleared trash": "Der Papierkorb wurde geleert"
|
|
186
|
-
"
|
|
187
|
+
"Clear selection": "Auswahl aufheben"
|
|
187
188
|
"Clipboard": "Zwischenablage"
|
|
188
189
|
"Copy": "Kopie"
|
|
189
190
|
"Could not load Adobe Flash® Plugin!": "Adobe Flash® Plugin konnte nicht geladen werden!"
|
|
@@ -195,6 +196,8 @@ de:
|
|
|
195
196
|
"Do you really want to delete this content?": "Wollen Sie diesen Inhalt wirklich löschen?"
|
|
196
197
|
"Drag an element over to the element window to restore it": "Ziehen Sie ein Element mit der Maus in das Elemente Fenster, um es wieder herzustellen."
|
|
197
198
|
"Edit Picturemask": "Bildmaske bearbeiten"
|
|
199
|
+
"Edit image": "Bild bearbeiten"
|
|
200
|
+
"Edit multiple pictures": "Mehrere Bilder bearbeiten"
|
|
198
201
|
"Elements": "Elemente"
|
|
199
202
|
"Element trashed": "Das Element wurde in den Papierkorb gelegt"
|
|
200
203
|
"Error with the Flash® Uploader!": "Fehler mit dem Flash® Uploader!"
|
|
@@ -203,6 +206,7 @@ de:
|
|
|
203
206
|
"File renamed successfully from: '%{from}' to '%{to}'": "Datei wurde erfolgreich von: '%{from}' nach '%{to}' umbenannt."
|
|
204
207
|
"File upload error: %{error}": "Datei konnte nicht hochgeladen werden: %{error}"
|
|
205
208
|
"File: '%{name}' deleted successfully": "%{name} wurde gelöscht"
|
|
209
|
+
"Filter by tag": "Nach Schlagwörtern filtern"
|
|
206
210
|
"Flush page cache": "Seitencache löschen"
|
|
207
211
|
"Flush picture cache": "Bildercache löschen"
|
|
208
212
|
"Have much fun with Alchemy!": "Viel Spaß mit Alchemy!"
|
|
@@ -245,17 +249,22 @@ de:
|
|
|
245
249
|
"Picture uploaded succesfully": "Bild %{name} wurde hochgeladen"
|
|
246
250
|
"Picture renamed successfully": "Bild wurde erfolgreich von %{from} nach %{to} umbenannt"
|
|
247
251
|
"Picture deleted successfully": "%{name} wurde gelöscht"
|
|
252
|
+
"Pictures deleted successfully": "Die Bilder %{names} wurden gelöscht"
|
|
253
|
+
"Pictures updated successfully": "Die Bilder wurden gespeichert"
|
|
248
254
|
"Picture cache flushed": "Bildercache wurde geleert"
|
|
249
255
|
"Please Signup": "Um Ihre Homepage bearbeiten zu können, müssen Sie als erstes einen Admin Benutzer einrichten."
|
|
250
256
|
"Please choose": "Bitte wählen"
|
|
251
257
|
"Please log in": "Bitte melden Sie sich an."
|
|
258
|
+
"Please seperate the tags with commata": "*) Die Schlagwörter bitte mit Kommata getrennt eingeben."
|
|
252
259
|
use_alternative_uploader_instead: "Benutzen Sie bitte diesen alternativen Uploader."
|
|
253
260
|
"Publish page": "veröffentlichen"
|
|
254
261
|
"Read the License": "Lizenz lesen"
|
|
255
262
|
"Redirects to": "Leitet weiter auf"
|
|
256
263
|
"Remove item from clipboard": "Inhalt aus der Zwischenablage entfernen"
|
|
264
|
+
"Remove tag filter": "Filter entfernen"
|
|
257
265
|
"Remove this content": "Diesen Inhalt entfernen"
|
|
258
266
|
"Reset Imagemask": "Bildmaske zurücksetzen"
|
|
267
|
+
"Select all": "Alle auswählen"
|
|
259
268
|
"Select an content": "Wählen Sie einen Inhalt aus"
|
|
260
269
|
"Select style": "Stilvorlage"
|
|
261
270
|
"Send email with credentials": "Sende Benutzerdaten per Email"
|
|
@@ -273,6 +282,7 @@ de:
|
|
|
273
282
|
sitemap_editor_info: "Die Sitemap wird automatisch generiert"
|
|
274
283
|
searchresults_editor_info: "Dieses Element stellt die Suchergebnisse dar. Es Bedarf keinerlei Anpassung."
|
|
275
284
|
element_dirty_notice: "Dieses Element hat nicht gespeicherte Änderungen. Möchten Sie es wirklich einklappen?"
|
|
285
|
+
"Tags": "Schlagwörter"
|
|
276
286
|
"This page is locked by %{name}": "Diese Seite wird gerade von %{name} blockiert"
|
|
277
287
|
"Title": "Titel"
|
|
278
288
|
"To manage your website open a browser and go to": "Um die Inhalte Ihrer Webseite zu bearbeiten klicken Sie bitte auf folgenden Link"
|
|
@@ -294,6 +304,7 @@ de:
|
|
|
294
304
|
"Who else is online": "Wer ist noch online"
|
|
295
305
|
"Yes": "Ja"
|
|
296
306
|
"You are not authorized": "Sie sind dazu nicht authorisiert."
|
|
307
|
+
"You are about to edit %{length} pictures at once": "Sie sind dabei %{length} Bilder auf einmal zu bearbeiten."
|
|
297
308
|
element_dirty_close_window_notice: "Sie haben ungesicherte Elemente. Möchten Sie das Elemente Fenster wirklich schließen?"
|
|
298
309
|
"You may upload files with following extensions": "Sie können %{file_types_description} mit folgenden Endungen hochladen: %{file_types}"
|
|
299
310
|
"You may upload any file": "Sie können jede Art von Datei hochladen."
|
|
@@ -309,10 +320,12 @@ de:
|
|
|
309
320
|
align_in_text: "Im Text anordnen"
|
|
310
321
|
all: "alle"
|
|
311
322
|
allow_fullscreen: "Vollbild ansicht"
|
|
323
|
+
all_pictures: "Alle Bilder anzeigen"
|
|
312
324
|
apply: "übernehmen"
|
|
313
325
|
assign_file: "Datei zuweisen"
|
|
314
326
|
assign_file_from_archive: "Datei aus dem Archiv zuweisen"
|
|
315
327
|
assign_image: "Bild hinzufügen."
|
|
328
|
+
attachment_filename_notice: "*) Bitte verwenden Sie keine Sonderzeichen oder Umlaute in dem Dateinamen."
|
|
316
329
|
auto_play: "Film automatisch abspielen"
|
|
317
330
|
big_thumbnails: "große Miniaturbilder"
|
|
318
331
|
browse: "durchsuchen"
|
|
@@ -326,6 +339,7 @@ de:
|
|
|
326
339
|
confirm_to_delete_file: "Wollen Sie diese Datei wirklich vom Server löschen?"
|
|
327
340
|
confirm_to_delete_image: "Wollen Sie dieses Bild wirklich löschen?"
|
|
328
341
|
confirm_to_delete_image_from_server: "Wollen Sie dieses Bild wirklich vom Server löschen?"
|
|
342
|
+
confirm_to_delete_images_from_server: "Wollen Sie diese Bilder wirklich vom Server löschen?"
|
|
329
343
|
confirm_to_delete_language: "Wollen Sie diese Sprache wirklich löschen?<br/>ACHTUNG! Alle zugehörigen Seiten werden ebenfalls gelöscht!"
|
|
330
344
|
confirm_to_delete_page: "Wollen Sie diese Seite wirklich löschen? Alle Inhalte gehen dabei unwiderruflich verloren!"
|
|
331
345
|
confirm_to_delete_user: "Wollen Sie diesen Benutzer wirklich löschen?"
|
|
@@ -336,6 +350,7 @@ de:
|
|
|
336
350
|
copy: "kopieren"
|
|
337
351
|
copy_element: "Element kopieren"
|
|
338
352
|
copy_page: "Seite kopieren"
|
|
353
|
+
"Could not delete Pictures": "Bilder konnten nicht gelöscht werden"
|
|
339
354
|
copy_language_tree_heading: "Einen Sprachbaum kopieren"
|
|
340
355
|
country_code_placeholder: 'z.B. at (optional)'
|
|
341
356
|
country_code_foot_note: "Der Ländercode ist nur notwendig, wenn Sie mehrere Länder mit unterschiedlichen Sprachen versehen wollen."
|
|
@@ -362,6 +377,7 @@ de:
|
|
|
362
377
|
edit_page: "Seite bearbeiten"
|
|
363
378
|
edit_page_properties: "Seiteneigenschaften bearbeiten"
|
|
364
379
|
edit_user: "Benutzer bearbeiten"
|
|
380
|
+
edit_selected_pictures: "Selektierte Bilder:"
|
|
365
381
|
element_dirty_page_leave_warning: "Sie haben ungesicherte Elemente auf der Seite. Möchten Sie wirklich fortfahren?"
|
|
366
382
|
element_editor_not_found: "Bei diesem Element ist ein Fehler aufgetreten"
|
|
367
383
|
element_of_type: "Element"
|
|
@@ -399,6 +415,7 @@ de:
|
|
|
399
415
|
language_code_placeholder: 'z.B. de'
|
|
400
416
|
language_does_not_exist: "Dieser Sprachbaum existiert noch nicht"
|
|
401
417
|
language_pages_copied: "Der Sprachbaum wurde kopiert"
|
|
418
|
+
last_upload_only: "Zuletzt hochgeladene"
|
|
402
419
|
left: "links"
|
|
403
420
|
link_image: "Bild verlinken"
|
|
404
421
|
link_overlay_tab_label:
|
|
@@ -441,6 +458,7 @@ de:
|
|
|
441
458
|
no_more_elements_to_add: "Keine weiteren Elemente verfügbar."
|
|
442
459
|
no_search_results: "Keine Suchergebnisse."
|
|
443
460
|
"not a valid image": "Keine valide Bilddatei."
|
|
461
|
+
"or": 'oder'
|
|
444
462
|
"Page created": "Seite '%{name}' wurde erstellt."
|
|
445
463
|
page_for_links:
|
|
446
464
|
choose_page: "%{name} wählen"
|
|
@@ -471,11 +489,16 @@ de:
|
|
|
471
489
|
password: "Passwort"
|
|
472
490
|
paste: "einfügen"
|
|
473
491
|
picture_gallery_editor: 'Bilder'
|
|
492
|
+
picture_library:
|
|
493
|
+
filter:
|
|
494
|
+
last_upload: "Zuletzt hochgeladene Bilder"
|
|
495
|
+
recent: "Bilder der letzten 24 Stunden"
|
|
474
496
|
place_link: "Text verlinken"
|
|
475
497
|
player_version: "Flashplayer Version"
|
|
476
498
|
"please enter subject and mail address": "Bitte geben Sie den Betreff und eine Empfängeradresse an."
|
|
477
499
|
please_confirm: "Bitte bestätigen"
|
|
478
500
|
please_wait: "Bitte warten"
|
|
501
|
+
recently_uploaded_only: 'Kürzlich hochgeladene'
|
|
479
502
|
"regular method": "herkömmlichen Methode"
|
|
480
503
|
remove: "entfernen"
|
|
481
504
|
rename_file: "Datei umbenennen"
|
|
@@ -486,6 +509,7 @@ de:
|
|
|
486
509
|
"save order": "Sortierung speichern"
|
|
487
510
|
saved_link: "Link wurde gespeichert."
|
|
488
511
|
search: "suchen"
|
|
512
|
+
'search query': 'Suchbegriff'
|
|
489
513
|
search_engines: "Suchmaschinen"
|
|
490
514
|
select_element: "Element wählen"
|
|
491
515
|
show_element_content: "Element ausklappen"
|
|
@@ -653,7 +677,66 @@ de:
|
|
|
653
677
|
two_words_connector: " und "
|
|
654
678
|
last_word_connector: " und "
|
|
655
679
|
|
|
680
|
+
errors: &errors
|
|
681
|
+
template:
|
|
682
|
+
|
|
683
|
+
header: "Formular-Prüfung fehlgeschlagen"
|
|
684
|
+
body: "Bitte überprüfen Sie Ihre Angaben an Hand der aufgelisteten Fehler"
|
|
685
|
+
|
|
686
|
+
messages:
|
|
687
|
+
inclusion: "ist kein gültiger Wert"
|
|
688
|
+
exclusion: "ist nicht verfügbar"
|
|
689
|
+
invalid: "ist nicht gültig"
|
|
690
|
+
record_invalid: 'Validierung von %{errors} ist fehlgeschlagen'
|
|
691
|
+
confirmation: "stimmt nicht mit der Bestätigung überein"
|
|
692
|
+
accepted: "muss akzeptiert werden"
|
|
693
|
+
empty: "muss ausgefüllt werden"
|
|
694
|
+
blank: "muss ausgefüllt werden"
|
|
695
|
+
too_long: "ist zu lang (nicht mehr als %{count} Zeichen)"
|
|
696
|
+
too_short: "ist zu kurz (nicht weniger als %{count} Zeichen)"
|
|
697
|
+
wrong_length: "hat die falsche Länge (muss genau %{count} Zeichen haben)"
|
|
698
|
+
taken: "ist bereits vergeben"
|
|
699
|
+
not_a_number: "ist keine Zahl"
|
|
700
|
+
greater_than: "muss größer als %{count} sein"
|
|
701
|
+
greater_than_or_equal_to: "muss größer oder gleich %{count} sein"
|
|
702
|
+
equal_to: "muss genau %{count} sein"
|
|
703
|
+
less_than: "muss kleiner als %{count} sein"
|
|
704
|
+
less_than_or_equal_to: "muss kleiner oder gleich %{count} sein"
|
|
705
|
+
odd: "muss ungerade sein"
|
|
706
|
+
even: "muss gerade sein"
|
|
707
|
+
|
|
708
|
+
models:
|
|
709
|
+
alchemy/content:
|
|
710
|
+
attributes:
|
|
711
|
+
essence:
|
|
712
|
+
validation_failed: 'Validierung fehlgeschlagen.'
|
|
713
|
+
alchemy/element:
|
|
714
|
+
attributes:
|
|
715
|
+
name:
|
|
716
|
+
blank: "^Bitte wählen Sie ein Element."
|
|
717
|
+
alchemy/language:
|
|
718
|
+
attributes:
|
|
719
|
+
language_code:
|
|
720
|
+
invalid: 'ist nicht korrekt. Bitte exakt zwei Kleinbuchstaben verwenden.'
|
|
721
|
+
taken: 'ist für dieses Länderkürzel bereits vergeben.'
|
|
722
|
+
alchemy/page:
|
|
723
|
+
attributes:
|
|
724
|
+
name:
|
|
725
|
+
blank: "^Bitte geben Sie einen Namen ein."
|
|
726
|
+
page_layout:
|
|
727
|
+
blank: "^Bitte wählen Sie einen Seitentyp."
|
|
728
|
+
urlname:
|
|
729
|
+
too_short: "^Der URL-Name der Seite ist zu kurz (min. 3 Zeichen)"
|
|
730
|
+
taken: "^Der URL-Name ist bereits vergeben."
|
|
731
|
+
exclusion: "^Der URL-Name der Seite kann nicht benutzt werden."
|
|
732
|
+
|
|
656
733
|
activemodel:
|
|
734
|
+
|
|
735
|
+
models:
|
|
736
|
+
alchemy/message:
|
|
737
|
+
one: "Nachricht"
|
|
738
|
+
other: "Nachrichten"
|
|
739
|
+
|
|
657
740
|
attributes:
|
|
658
741
|
alchemy/message:
|
|
659
742
|
salutation: Anrede
|
|
@@ -666,6 +749,9 @@ de:
|
|
|
666
749
|
email: E-Mail
|
|
667
750
|
message: Nachricht
|
|
668
751
|
|
|
752
|
+
errors:
|
|
753
|
+
<<: *errors
|
|
754
|
+
|
|
669
755
|
# Translations for active record database models and error messages.
|
|
670
756
|
activerecord:
|
|
671
757
|
|
|
@@ -759,6 +845,7 @@ de:
|
|
|
759
845
|
image_height: "Bildhöhe"
|
|
760
846
|
image_width: "Bildbreite"
|
|
761
847
|
name: "Name"
|
|
848
|
+
tag_list: Schlagwörter
|
|
762
849
|
|
|
763
850
|
alchemy/user:
|
|
764
851
|
email: "Email"
|
|
@@ -774,57 +861,7 @@ de:
|
|
|
774
861
|
role: "Benutzerrolle"
|
|
775
862
|
|
|
776
863
|
errors:
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
header: "Prüfung fehlgeschlagen"
|
|
780
|
-
body: ""
|
|
781
|
-
|
|
782
|
-
messages:
|
|
783
|
-
inclusion: "ist kein gültiger Wert"
|
|
784
|
-
exclusion: "ist nicht verfügbar"
|
|
785
|
-
invalid: "ist nicht gültig"
|
|
786
|
-
record_invalid: 'Validierung von %{errors} ist fehlgeschlagen'
|
|
787
|
-
confirmation: "stimmt nicht mit der Bestätigung überein"
|
|
788
|
-
accepted: "muss akzeptiert werden"
|
|
789
|
-
empty: "muss ausgefüllt werden"
|
|
790
|
-
blank: "muss ausgefüllt werden"
|
|
791
|
-
too_long: "ist zu lang (nicht mehr als %{count} Zeichen)"
|
|
792
|
-
too_short: "ist zu kurz (nicht weniger als %{count} Zeichen)"
|
|
793
|
-
wrong_length: "hat die falsche Länge (muss genau %{count} Zeichen haben)"
|
|
794
|
-
taken: "ist bereits vergeben"
|
|
795
|
-
not_a_number: "ist keine Zahl"
|
|
796
|
-
greater_than: "muss größer als %{count} sein"
|
|
797
|
-
greater_than_or_equal_to: "muss größer oder gleich %{count} sein"
|
|
798
|
-
equal_to: "muss genau %{count} sein"
|
|
799
|
-
less_than: "muss kleiner als %{count} sein"
|
|
800
|
-
less_than_or_equal_to: "muss kleiner oder gleich %{count} sein"
|
|
801
|
-
odd: "muss ungerade sein"
|
|
802
|
-
even: "muss gerade sein"
|
|
803
|
-
|
|
804
|
-
models:
|
|
805
|
-
alchemy/content:
|
|
806
|
-
attributes:
|
|
807
|
-
essence:
|
|
808
|
-
validation_failed: 'Validierung fehlgeschlagen.'
|
|
809
|
-
alchemy/element:
|
|
810
|
-
attributes:
|
|
811
|
-
name:
|
|
812
|
-
blank: "^Bitte wählen Sie ein Element."
|
|
813
|
-
alchemy/language:
|
|
814
|
-
attributes:
|
|
815
|
-
language_code:
|
|
816
|
-
invalid: 'ist nicht korrekt. Bitte exakt zwei Kleinbuchstaben verwenden.'
|
|
817
|
-
taken: 'ist für dieses Länderkürzel bereits vergeben.'
|
|
818
|
-
alchemy/page:
|
|
819
|
-
attributes:
|
|
820
|
-
name:
|
|
821
|
-
blank: "^Bitte geben Sie einen Namen ein."
|
|
822
|
-
page_layout:
|
|
823
|
-
blank: "^Bitte wählen Sie einen Seitentyp."
|
|
824
|
-
urlname:
|
|
825
|
-
too_short: "^Der URL-Name der Seite ist zu kurz (min. 3 Zeichen)"
|
|
826
|
-
taken: "^Der URL-Name ist bereits vergeben."
|
|
827
|
-
exclusion: "^Der URL-Name der Seite kann nicht benutzt werden."
|
|
864
|
+
<<: *errors
|
|
828
865
|
|
|
829
866
|
# Translations for the authentication system used in alchemy.
|
|
830
867
|
authlogic:
|