alchemy_cms 2.0.pre2 → 2.0.pre3
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +5 -1
- data/Gemfile +3 -0
- data/Rakefile +16 -14
- data/{alchemy.gemspec → alchemy_cms.gemspec} +1 -1
- data/app/models/message.rb +1 -1
- data/app/views/elements/_searchresult_view.html.erb +1 -1
- data/config/initializers/fast_gettext.rb +1 -1
- data/config/routes.rb +3 -0
- data/lib/alchemy/version.rb +1 -1
- data/lib/{alchemy.rb → alchemy_cms.rb} +0 -0
- data/lib/rails/generators/alchemy/scaffold/scaffold_generator.rb +2 -2
- data/lib/rails/templates/alchemy.rb +1 -1
- data/spec/alchemy_spec.rb +7 -0
- data/spec/config_spec.rb +7 -0
- data/spec/dummy/Rakefile +7 -0
- data/spec/dummy/app/controllers/application_controller.rb +3 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/views/layouts/application.html.erb +14 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/alchemy/config.yml +199 -0
- data/spec/dummy/config/alchemy/elements.yml +91 -0
- data/spec/dummy/config/alchemy/page_layouts.yml +29 -0
- data/spec/dummy/config/application.rb +45 -0
- data/spec/dummy/config/boot.rb +10 -0
- data/spec/dummy/config/database.yml +22 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +26 -0
- data/spec/dummy/config/environments/production.rb +49 -0
- data/spec/dummy/config/environments/test.rb +35 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/inflections.rb +10 -0
- data/spec/dummy/config/initializers/mime_types.rb +5 -0
- data/spec/dummy/config/initializers/secret_token.rb +7 -0
- data/spec/dummy/config/initializers/session_store.rb +8 -0
- data/spec/dummy/config/locales/en.yml +5 -0
- data/spec/dummy/config/routes.rb +58 -0
- data/spec/dummy/db/schema.rb +267 -0
- data/spec/dummy/log/production.log +0 -0
- data/spec/dummy/log/server.log +0 -0
- data/spec/dummy/public/404.html +26 -0
- data/spec/dummy/public/422.html +26 -0
- data/spec/dummy/public/500.html +26 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/public/images/alchemy/ajax_loader.gif +0 -0
- data/spec/dummy/public/images/alchemy/alchemy-logo.png +0 -0
- data/spec/dummy/public/images/alchemy/flags.png +0 -0
- data/spec/dummy/public/images/alchemy/gui/navi-tab.png +0 -0
- data/spec/dummy/public/images/alchemy/gui/shading.png +0 -0
- data/spec/dummy/public/images/alchemy/gui/shading_90.png +0 -0
- data/spec/dummy/public/images/alchemy/gui/toggle.png +0 -0
- data/spec/dummy/public/images/alchemy/icons.png +0 -0
- data/spec/dummy/public/images/alchemy/jquery-sb/select_arrow.gif +0 -0
- data/spec/dummy/public/images/alchemy/jquery-sb/select_arrow_bg.gif +0 -0
- data/spec/dummy/public/images/alchemy/jquery-sb/select_arrow_bg_hover.gif +0 -0
- data/spec/dummy/public/images/alchemy/jquery-ui/ui-icons_666666_256x240.png +0 -0
- data/spec/dummy/public/images/alchemy/placeholder.png +0 -0
- data/spec/dummy/public/images/alchemy/swfupload/browse_button.png +0 -0
- data/spec/dummy/public/javascripts/alchemy/alchemy.element_editor_selector.js +88 -0
- data/spec/dummy/public/javascripts/alchemy/alchemy.growler.js +44 -0
- data/spec/dummy/public/javascripts/alchemy/alchemy.image_cropper.js +56 -0
- data/spec/dummy/public/javascripts/alchemy/alchemy.js +892 -0
- data/spec/dummy/public/javascripts/alchemy/alchemy.link_overlay.js +221 -0
- data/spec/dummy/public/javascripts/alchemy/alchemy.page_sorter.js +42 -0
- data/spec/dummy/public/javascripts/alchemy/alchemy.preview.js +145 -0
- data/spec/dummy/public/javascripts/alchemy/jquery-ui.js +428 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.Jcrop.min.js +246 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.dialogextend.min.js +8 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.in-place-edit.js +171 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.js +18 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.rails.js +315 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.sb.min.js +14 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.scrollTo-1.4.2-min.js +11 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.ui.nestedSortable.js +291 -0
- data/spec/dummy/public/javascripts/alchemy/jquery.ui.tabspaging.js +281 -0
- data/spec/dummy/public/javascripts/alchemy/swfupload/fileprogress.js +203 -0
- data/spec/dummy/public/javascripts/alchemy/swfupload/handlers.js +171 -0
- data/spec/dummy/public/javascripts/alchemy/swfupload/queue.js +98 -0
- data/spec/dummy/public/javascripts/alchemy/swfupload/swfupload.js +980 -0
- data/spec/dummy/public/javascripts/alchemy/swfupload/swfupload.swf +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/jquery.tinymce.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/langs/de.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/langs/en.js +223 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/license.txt +504 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/alchemy_link/editor_plugin.js +43 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/alchemy_link/langs/de.js +4 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/alchemy_link/langs/en.js +4 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/fullscreen/editor_plugin.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/fullscreen/fullscreen.htm +109 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/inlinepopups/editor_plugin.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/inlinepopups/skins/alchemy/window.css +402 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/inlinepopups/template.htm +387 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/lists/editor_plugin.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/paste/editor_plugin.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/paste/js/pastetext.js +36 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/paste/js/pasteword.js +51 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/paste/langs/de_dlg.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/paste/langs/en_dlg.js +5 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/paste/pastetext.htm +27 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/paste/pasteword.htm +21 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/cell.htm +180 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/css/cell.css +17 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/css/row.css +25 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/css/table.css +13 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/editor_plugin.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/js/cell.js +319 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/js/merge_cells.js +27 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/js/row.js +237 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/js/table.js +450 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/langs/de_dlg.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/langs/en_dlg.js +75 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/merge_cells.htm +32 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/row.htm +158 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/plugins/table/table.htm +188 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/about.htm +52 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/anchor.htm +26 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/charmap.htm +51 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/color_picker.htm +74 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/editor_template.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/image.htm +80 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/colorpicker.jpg +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/flash.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/icons.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/iframe.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/pagebreak.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/quicktime.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/realmedia.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/shockwave.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/trans.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/video.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/img/windowsmedia.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/js/about.js +73 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/js/anchor.js +42 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/js/charmap.js +355 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/js/color_picker.js +329 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/js/image.js +247 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/js/link.js +153 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/js/source_editor.js +56 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/langs/de.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/langs/de_dlg.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/langs/en.js +68 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/langs/en_dlg.js +54 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/link.htm +57 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/shortcuts.htm +47 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/content.css +47 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/dialog.css +117 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/img/buttons.png +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/img/items.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/img/menu_check.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/img/progress.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/img/tabs.gif +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/default/ui.css +214 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/highcontrast/content.css +23 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/highcontrast/dialog.css +105 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/highcontrast/ui.css +102 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/content.css +46 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/dialog.css +117 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png +0 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/ui.css +217 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/ui_black.css +8 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css +5 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/advanced/source_editor.htm +25 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/themes/simple/langs/de.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/tiny_mce.js +1 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/tiny_mce_popup.js +5 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/utils/editable_selects.js +70 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/utils/form_utils.js +210 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/utils/mctabs.js +162 -0
- data/spec/dummy/public/javascripts/alchemy/tiny_mce/utils/validate.js +252 -0
- data/spec/dummy/public/javascripts/application.js +2 -0
- data/spec/dummy/public/javascripts/controls.js +965 -0
- data/spec/dummy/public/javascripts/dragdrop.js +974 -0
- data/spec/dummy/public/javascripts/effects.js +1123 -0
- data/spec/dummy/public/javascripts/prototype.js +6001 -0
- data/spec/dummy/public/javascripts/rails.js +191 -0
- data/spec/dummy/public/stylesheets/.gitkeep +0 -0
- data/spec/dummy/public/stylesheets/alchemy/Jcrop.gif +0 -0
- data/spec/dummy/public/stylesheets/alchemy/alchemy.css +3629 -0
- data/spec/dummy/public/stylesheets/alchemy/alchemy_tinymce_content.css +94 -0
- data/spec/dummy/public/stylesheets/alchemy/alchemy_tinymce_dialog.css +415 -0
- data/spec/dummy/public/stylesheets/alchemy/default/img/tabs.gif +0 -0
- data/spec/dummy/public/stylesheets/alchemy/elements.css +900 -0
- data/spec/dummy/public/stylesheets/alchemy/flags.css +1 -0
- data/spec/dummy/public/stylesheets/alchemy/ie6.css +18 -0
- data/spec/dummy/public/stylesheets/alchemy/jquery-ui-1.8.7.alchemy.css +2023 -0
- data/spec/dummy/public/stylesheets/alchemy/jquery.Jcrop.css +35 -0
- data/spec/dummy/public/stylesheets/alchemy/jquery.sb.css +244 -0
- data/spec/dummy/public/stylesheets/alchemy/standard_set.css +374 -0
- data/spec/dummy/script/rails +6 -0
- data/spec/integration/navigation_spec.rb +9 -0
- data/spec/integration/security_spec.rb +25 -0
- data/spec/spec_helper.rb +40 -0
- metadata +371 -8
data/.gitignore
CHANGED
data/Gemfile
CHANGED
data/Rakefile
CHANGED
@@ -1,30 +1,32 @@
|
|
1
1
|
# encoding: UTF-8
|
2
|
+
require 'rubygems'
|
3
|
+
begin
|
4
|
+
require 'bundler'
|
5
|
+
rescue LoadError
|
6
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
7
|
+
end
|
8
|
+
|
2
9
|
require 'rake'
|
3
|
-
require '
|
4
|
-
|
10
|
+
require 'rdoc/task'
|
11
|
+
|
12
|
+
require 'rspec/core'
|
13
|
+
require 'rspec/core/rake_task'
|
5
14
|
|
6
15
|
import File.join(File.dirname(__FILE__), 'lib/tasks/gettext.rake')
|
7
16
|
|
8
|
-
|
9
|
-
task :default => :test
|
17
|
+
RSpec::Core::RakeTask.new(:spec)
|
10
18
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
t.pattern = 'test/**/*_test.rb'
|
15
|
-
t.verbose = true
|
16
|
-
end
|
19
|
+
task :default => :spec
|
20
|
+
|
21
|
+
Bundler::GemHelper.install_tasks
|
17
22
|
|
18
23
|
desc 'Generate documentation for the alchemy plugin.'
|
19
24
|
Rake::RDocTask.new(:rdoc) do |rdoc|
|
20
25
|
rdoc.rdoc_dir = 'rdoc'
|
21
|
-
rdoc.title = 'Alchemy'
|
26
|
+
rdoc.title = 'Alchemy CMS'
|
22
27
|
rdoc.options << '--line-numbers' << '--inline-source'
|
23
28
|
rdoc.rdoc_files.include('README.md')
|
24
29
|
rdoc.rdoc_files.include('config/alchemy/*.yml')
|
25
30
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
26
31
|
rdoc.rdoc_files.include('app/**/*.rb')
|
27
32
|
end
|
28
|
-
|
29
|
-
require 'bundler'
|
30
|
-
Bundler::GemHelper.install_tasks
|
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
|
|
15
15
|
s.license = 'GPL-3'
|
16
16
|
|
17
17
|
s.files = `git ls-files`.split("\n")
|
18
|
-
|
18
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
19
19
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
20
20
|
s.require_paths = ["lib"]
|
21
21
|
|
data/app/models/message.rb
CHANGED
@@ -37,7 +37,7 @@ class Message
|
|
37
37
|
attr_accessor :contact_form_id, :ip
|
38
38
|
|
39
39
|
Alchemy::Config.get(:mailer)[:fields].each do |field|
|
40
|
-
attr_accessor field.
|
40
|
+
attr_accessor field.to_sym
|
41
41
|
end
|
42
42
|
|
43
43
|
validate_fields = Alchemy::Config.get(:mailer)[:validate_fields]
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<div class="searchresult" id="<%= element_dom_id(element) %>" <%= element_preview_code(element) -%>>
|
2
2
|
|
3
|
-
<%= form_tag show_page_with_language_path(:urlname => "suche", :lang =>
|
3
|
+
<%= form_tag show_page_with_language_path(:urlname => "suche", :lang => @page.language_code), :method => :get do %>
|
4
4
|
<%= text_field_tag "query", params[:query], :class => 'field' %>
|
5
5
|
<%= submit_tag _("search"), :name => nil %>
|
6
6
|
<%- end -%>
|
@@ -1,2 +1,2 @@
|
|
1
1
|
require 'fast_gettext'
|
2
|
-
FastGettext.add_text_domain 'alchemy', :path => File.join(File.dirname(__FILE__), '..', '..', 'locale')
|
2
|
+
FastGettext.add_text_domain 'alchemy', :path => File.join(File.dirname(__FILE__), '..', '..', 'locale')
|
data/config/routes.rb
CHANGED
data/lib/alchemy/version.rb
CHANGED
File without changes
|
@@ -4,7 +4,7 @@ module Alchemy
|
|
4
4
|
module Generators
|
5
5
|
class ScaffoldGenerator < ::Rails::Generators::Base
|
6
6
|
desc "This generator generates the Alchemy scaffold. Pass --with-standard-set to copy Alchemys standard set into your app."
|
7
|
-
class_option
|
7
|
+
class_option 'with-standard-set', :type => :boolean, :desc => "Copy standard set files."
|
8
8
|
source_root File.expand_path('templates', File.dirname(__FILE__))
|
9
9
|
|
10
10
|
def create_config_dir
|
@@ -17,7 +17,7 @@ module Alchemy
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def copy_yamls
|
20
|
-
if options['
|
20
|
+
if options['with-standard-set']
|
21
21
|
layouts_path = File.expand_path('../../../../../app/views/layouts', File.dirname(__FILE__))
|
22
22
|
copy_file "#{@config_path}/elements.yml", "#{Rails.root}/config/alchemy/elements.yml"
|
23
23
|
copy_file "#{@config_path}/page_layouts.yml", "#{Rails.root}/config/alchemy/page_layouts.yml"
|
data/spec/config_spec.rb
ADDED
data/spec/dummy/Rakefile
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
# Add your own tasks in files placed in lib/tasks ending in .rake,
|
2
|
+
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
|
3
|
+
|
4
|
+
require File.expand_path('../config/application', __FILE__)
|
5
|
+
require 'rake'
|
6
|
+
|
7
|
+
Dummy::Application.load_tasks
|
@@ -0,0 +1,199 @@
|
|
1
|
+
# = Configuration
|
2
|
+
#
|
3
|
+
# == This is the global Alchemy configuration file
|
4
|
+
# Please override your apps settings in your config/alchemy/config.yml file.
|
5
|
+
# You can use a handy rake task to generate it.
|
6
|
+
#
|
7
|
+
# rake alchemy:app_structure:create:config
|
8
|
+
|
9
|
+
# The amount of time of inactivity in minutes after which the user is kicked out of his current session.
|
10
|
+
# Only active in production environment!!!
|
11
|
+
:auto_logout_time: 30
|
12
|
+
|
13
|
+
# === Redirect options
|
14
|
+
# redirect_index: You can set to redirect (an 301 permanent, for all you SEO geeks ^_^) to first child page (typically the homepage) the index/intro page if it's not visible.
|
15
|
+
# So you don't get an 404 error if the language root page is not visible.
|
16
|
+
# redirect_to_public_child: Alchemy redirects to the first public child page found, if a page is not visible.
|
17
|
+
:redirect_index: true
|
18
|
+
:redirect_to_public_child: true
|
19
|
+
|
20
|
+
# Enabling the Ferret fulltext search engine.
|
21
|
+
# Tip! For best performance and stability install a crontab that reindexes ferrets search index periodly.
|
22
|
+
# Example: cd ~/html/alchemy/current && RAILS_ENV=production rake ferret:rebuild_index
|
23
|
+
:ferret: false
|
24
|
+
|
25
|
+
# === Pagecaching
|
26
|
+
# Enable/Disable pagecaching globally.
|
27
|
+
# Hint: You can enable/disable page caching for single Alchemy::PageLayouts in the page_layout.yml file.
|
28
|
+
:cache_pages: true
|
29
|
+
|
30
|
+
# === Sitemap
|
31
|
+
# Alchemy renders a nice HTML (<ul><li> style) and XML (Google conform!) Sitemap for you.
|
32
|
+
# Just place a sitemap element for a page layout in your page_layouts.yml file. Alchemy does the rest.
|
33
|
+
# ==== Options:
|
34
|
+
# show_root: Show language root page in sitemap?
|
35
|
+
# show_flag: enables the Checkbox in Page#update overlay. So your customer can set the visibilit of pages in the sitemap.
|
36
|
+
:sitemap:
|
37
|
+
:show_root: true
|
38
|
+
:show_flag: false
|
39
|
+
|
40
|
+
# === Picture rendering settings
|
41
|
+
# Alchemy uses Fleximage and RMagick to render images. Use {:image_size => "XXXxYYY", :crop => BOOLEAN [true]} to resize images.
|
42
|
+
# See https://github.com/Squeegy/fleximage for further infos.
|
43
|
+
# ==== Options:
|
44
|
+
# output_image_jpg_quality: If rendered as JPG this is the quality setting for it.
|
45
|
+
# preprocess_image_resize: Large images are downsized after upload to save diskspace.
|
46
|
+
# image_store_format: Masterimage storage format. Images are rendered from this master image, so a lossless format (png) is strongly recommended.
|
47
|
+
# image_output_format: Globally image output format setting.
|
48
|
+
# TIP: You can always override the output format in the options of your Essence. I.e. {:format => :gif}
|
49
|
+
:output_image_jpg_quality: 85
|
50
|
+
:preprocess_image_resize: 1000x1000
|
51
|
+
:image_store_format: png
|
52
|
+
:image_output_format: jpg
|
53
|
+
|
54
|
+
# Set available translations for your customers.
|
55
|
+
# Currently available translations are German and English.
|
56
|
+
:translations:
|
57
|
+
- :language_code: de
|
58
|
+
:language: Deutsch
|
59
|
+
- :language_code: en
|
60
|
+
:language: English
|
61
|
+
|
62
|
+
default_translation: en
|
63
|
+
|
64
|
+
# Default language for your homepgae.
|
65
|
+
default_language:
|
66
|
+
code: en
|
67
|
+
name: English
|
68
|
+
page_layout: intro
|
69
|
+
frontpage_name: Intro
|
70
|
+
|
71
|
+
# === Mailer Settings:
|
72
|
+
#
|
73
|
+
# To send Mails via contact forms you can create your form fields here and set which fields are to be validated.
|
74
|
+
#
|
75
|
+
# ==== Options:
|
76
|
+
#
|
77
|
+
# fields: An Array from Hashes with fieldname as keys and type as values. Types are ActiveRecord column types (i.e. string, text, boolean, etc.).
|
78
|
+
# validate_fields: A Hash with fieldname as key and a Hash (with :message as key and a message_id as value) as value
|
79
|
+
#
|
80
|
+
# ==== Translating validation messages:
|
81
|
+
#
|
82
|
+
# The message_id is passed through I18n.t so you can translate it in your language yml file.
|
83
|
+
#
|
84
|
+
# Example:
|
85
|
+
#
|
86
|
+
# de:
|
87
|
+
# alchemy:
|
88
|
+
# contactform:
|
89
|
+
# validations:
|
90
|
+
# enter_name: 'Bitte geben Sie einen Namen an'
|
91
|
+
#
|
92
|
+
:mailer:
|
93
|
+
:page_layout_name: contact
|
94
|
+
:forward_to_page: false
|
95
|
+
:mail_success_page: thanks
|
96
|
+
:fields: [salutation, firstname, lastname, address, zip, city, phone, email, message]
|
97
|
+
:validate_fields:
|
98
|
+
:lastname:
|
99
|
+
:message: enter_name
|
100
|
+
:email:
|
101
|
+
:message: enter_mail
|
102
|
+
|
103
|
+
# === User roles
|
104
|
+
# You can add own user roles. To set permissions for this roles please add an authorization_rules.rb file in your config folder.
|
105
|
+
# Further documentation for the auth system used please visit:
|
106
|
+
# https://github.com/stffn/declarative_authorization/blob/master/README.rdoc
|
107
|
+
#
|
108
|
+
# ==== Translating Userroles
|
109
|
+
# Userroles can be translated inside your the language yml file under:
|
110
|
+
# alchemy:
|
111
|
+
# user_roles:
|
112
|
+
# rolename: Name of the role
|
113
|
+
:user_roles: [registered, author, editor, admin]
|
114
|
+
|
115
|
+
# === Uploader Settings
|
116
|
+
# Allow filetypes to upload.
|
117
|
+
# Pass * to allow all kind of files.
|
118
|
+
:uploader:
|
119
|
+
:allowed_filetypes:
|
120
|
+
:pictures: [jpg, jpeg, gif, png, psd, pdf]
|
121
|
+
:attachments: [*]
|
122
|
+
|
123
|
+
# === Link Target Options
|
124
|
+
# Values for the link target selectbox inside the page link overlay.
|
125
|
+
# The value gets attached as a data-link-target attribute to the link.
|
126
|
+
#
|
127
|
+
# == Example:
|
128
|
+
# Open all links set to overlay inside an jQuery UI Dialog Window.
|
129
|
+
#
|
130
|
+
# jQuery(a[data-link-target="overlay"]).dialog();
|
131
|
+
:link_target_options: [blank]
|
132
|
+
|
133
|
+
# == Alchemy core plugins configuration
|
134
|
+
|
135
|
+
alchemy_plugins:
|
136
|
+
|
137
|
+
- name: dashboard
|
138
|
+
navigation:
|
139
|
+
name: 'home'
|
140
|
+
controller: 'admin'
|
141
|
+
action: index
|
142
|
+
icon: home
|
143
|
+
sub_navigation:
|
144
|
+
- name: 'home'
|
145
|
+
controller: 'admin'
|
146
|
+
action: index
|
147
|
+
|
148
|
+
- name: pages
|
149
|
+
navigation:
|
150
|
+
name: 'module: pages'
|
151
|
+
controller: 'admin/pages'
|
152
|
+
action: index
|
153
|
+
icon: pages
|
154
|
+
sub_navigation:
|
155
|
+
- name: 'module: pages'
|
156
|
+
controller: 'admin/pages'
|
157
|
+
action: index
|
158
|
+
- name: 'module: layoutpages'
|
159
|
+
controller: 'admin/layoutpages'
|
160
|
+
action: index
|
161
|
+
nested:
|
162
|
+
- controller: 'admin/pages'
|
163
|
+
action: edit
|
164
|
+
|
165
|
+
- name: languages
|
166
|
+
navigation:
|
167
|
+
name: 'module: languages'
|
168
|
+
controller: 'admin/languages'
|
169
|
+
action: index
|
170
|
+
icon: languages
|
171
|
+
sub_navigation:
|
172
|
+
- name: 'module: languages'
|
173
|
+
controller: 'admin/languages'
|
174
|
+
action: index
|
175
|
+
|
176
|
+
- name: users
|
177
|
+
navigation:
|
178
|
+
name: 'module: users'
|
179
|
+
controller: 'admin/users'
|
180
|
+
action: index
|
181
|
+
icon: users
|
182
|
+
sub_navigation:
|
183
|
+
- name: 'module: users'
|
184
|
+
controller: 'admin/users'
|
185
|
+
action: index
|
186
|
+
|
187
|
+
- name: archive
|
188
|
+
navigation:
|
189
|
+
controller: 'admin/pictures'
|
190
|
+
action: index
|
191
|
+
name: 'module: library'
|
192
|
+
icon: library
|
193
|
+
sub_navigation:
|
194
|
+
- name: 'module: images'
|
195
|
+
controller: 'admin/pictures'
|
196
|
+
action: index
|
197
|
+
- name: 'module: attachments'
|
198
|
+
controller: 'admin/attachments'
|
199
|
+
action: index
|
@@ -0,0 +1,91 @@
|
|
1
|
+
# == In this configuration you setup Alchemy´s element layouts.
|
2
|
+
#
|
3
|
+
# Use rails generate alchemy:scaffold to generate this file for your app.
|
4
|
+
#
|
5
|
+
# Elements containing all necessary basic tools for displaying and editing content inside Alchemy.
|
6
|
+
# They consists of composed contents (different essence-types) as shown in the illustration of an elements-sheme below.
|
7
|
+
#
|
8
|
+
# == Schema of an element
|
9
|
+
#
|
10
|
+
# =================================
|
11
|
+
# # Content 1 (EssenceText) #
|
12
|
+
# # #
|
13
|
+
# # Content 2 (EssencePicture) #
|
14
|
+
# # #
|
15
|
+
# # Content 3 (EssenceRichtext) #
|
16
|
+
# =================================
|
17
|
+
#
|
18
|
+
# == Example of a basic element layout
|
19
|
+
#
|
20
|
+
# - name: a_unique_name (Used for the partial name in +app/views/elements+ and translated as Element.display_name)
|
21
|
+
# unique: Bool //pass true if this element only can be displayed once on page
|
22
|
+
# contents:
|
23
|
+
# - name: head
|
24
|
+
# type: EssenceText
|
25
|
+
# - name: text
|
26
|
+
# type: EssenceRichtext
|
27
|
+
#
|
28
|
+
# As already mentioned above, there are different content-types wich can be defined for each content in an element.
|
29
|
+
# Defining these types is used to render predefined views in the element.
|
30
|
+
#
|
31
|
+
# == Content-Types:
|
32
|
+
#
|
33
|
+
# * EssenceText (Used to store a String (max. 255 Chars.) i.e. a headline, or productname. The editor is renderd as a single-lined input field. The view output will be sanitized and escaped. So it's XSS save.)
|
34
|
+
# * EssenceRichtext (Used to store editable richtext. Editor is rendered as a textarea with TinyMCE Editor.)
|
35
|
+
# * EssencePicture (Used to store picture ids from pictures assigned through the library. The editor is rendered as a picture-editor collection with a lot of options (i.e. image cropper). The view renders the assigned picture, resizes it, crops it and caches the result.)
|
36
|
+
# * EssenceFlash (Used to store attachment ids from attachments assigned through the library. The view renders an embeded object.)
|
37
|
+
# * EssenceDate (Used to store a DateTime object. The view output is passed through Rails I18n Library, so it will be fully localized.)
|
38
|
+
# * EssenceHtml (Used to store a String (max. 255 Chars.). The view output renders the raw, not sanitized or unescaped String. So be carefull!)
|
39
|
+
#
|
40
|
+
# After finishing the setup of your element layouts, you need to generate the files for the elements before using them in Alchemy.
|
41
|
+
# For creating these files, use the following command in your terminal:
|
42
|
+
#
|
43
|
+
# rails generate elements
|
44
|
+
#
|
45
|
+
# All new elements will be created as two different partials in Rails.root/app/views/elements.
|
46
|
+
# For each element there is an editor-view wich will be rendered when editing them in Alchemy and another view for the website´s frontend.
|
47
|
+
#
|
48
|
+
# app/views/elements/_elements_name_editor.html.erb
|
49
|
+
# app/views/elements/_elements_name_view.html.erb
|
50
|
+
#
|
51
|
+
# For most contents in an element you can specify additional options, so they get rendered in a specific way.
|
52
|
+
# These options can be defined as symbols, but its too much to list them up here.
|
53
|
+
# You can find these options described in the application_helper.rb, most of them at the render_essence method.
|
54
|
+
#
|
55
|
+
# == Setting a content as preview-text for the element
|
56
|
+
#
|
57
|
+
# You can set a content-essence as preview-text for its element like this
|
58
|
+
# take_me_for_preview: true
|
59
|
+
#
|
60
|
+
#
|
61
|
+
# == Adding contents dynamically in the frontend
|
62
|
+
#
|
63
|
+
# You are able to add content-essences dynamically to the element from the Alchemy frontend.
|
64
|
+
# You just have to make contents available for adding them.
|
65
|
+
# This example enables this feature
|
66
|
+
#
|
67
|
+
# - name: headline
|
68
|
+
# unique: false
|
69
|
+
# contents:
|
70
|
+
# - name: headline
|
71
|
+
# type: EssenceText
|
72
|
+
# - name: big_text
|
73
|
+
# type: EssenceRichtext
|
74
|
+
# available_contents:
|
75
|
+
# - name: big_text
|
76
|
+
# type: EssenceRichtext
|
77
|
+
#
|
78
|
+
# Now an Alchemy user can add the content 'big_text' from the element as much as desired.
|
79
|
+
#
|
80
|
+
# === Translate element names
|
81
|
+
#
|
82
|
+
# Element names are passed through the I18n library. So you can translate them in your config/locales language yml file.
|
83
|
+
#
|
84
|
+
# Example:
|
85
|
+
#
|
86
|
+
# de:
|
87
|
+
# alchemy:
|
88
|
+
# element_names:
|
89
|
+
# contact: Kontakt
|
90
|
+
# search: Suche
|
91
|
+
|