trusty-cms 2.0.2 → 2.0.3.pre.beta
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.
- checksums.yaml +13 -5
- data/.gitignore +0 -2
- data/CONTRIBUTORS.md +1 -3
- data/Gemfile +1 -6
- data/Gemfile.lock +80 -100
- data/INSTALL.md +6 -7
- data/README.md +1 -3
- data/Rakefile +4 -24
- data/app/assets/javascripts/admin/jquery-ui.js +2339 -3787
- data/app/assets/javascripts/admin/page-edit.js +3 -3
- data/app/assets/javascripts/admin/tabcontrol.js.erb +16 -16
- data/app/assets/javascripts/admin/treetable.js +2 -4
- data/app/assets/stylesheets/admin/_base.scss +4 -4
- data/app/assets/stylesheets/admin/modules/_links.scss +1 -1
- data/app/assets/stylesheets/admin/partials/_content.scss +2 -9
- data/app/assets/stylesheets/admin/partials/_forms.scss +29 -97
- data/app/assets/stylesheets/admin/partials/_header.scss +3 -2
- data/app/assets/stylesheets/admin/partials/_index.scss +6 -9
- data/app/assets/stylesheets/admin/partials/_layout.scss +2 -1
- data/app/assets/stylesheets/admin/partials/_popup.scss +11 -0
- data/app/assets/stylesheets/admin/partials/_tabcontrol.scss +4 -4
- data/app/assets/stylesheets/admin/partials/_typography.scss +0 -4
- data/app/controllers/admin/pages_controller.rb +1 -9
- data/app/controllers/admin/references_controller.rb +1 -8
- data/app/controllers/admin/users_controller.rb +1 -1
- data/app/controllers/admin/welcome_controller.rb +3 -3
- data/app/controllers/application_controller.rb.rails2 +113 -0
- data/app/controllers/site_controller.rb +1 -1
- data/app/helpers/admin/node_helper.rb +4 -4
- data/app/helpers/application_helper.rb.rails2 +242 -0
- data/app/models/trusty_cms/config.rb +1 -2
- data/app/views/admin/configuration/edit.html.haml +2 -2
- data/app/views/admin/configuration/show.html.haml +1 -1
- data/app/views/admin/layouts/_form.html.haml +1 -1
- data/app/views/admin/layouts/remove.html.haml +1 -1
- data/app/views/admin/pages/_fields.html.haml +1 -1
- data/app/views/admin/pages/_node.html.haml +2 -2
- data/app/views/admin/pages/edit.html.haml +1 -1
- data/app/views/admin/pages/remove.html.haml +2 -2
- data/app/views/admin/preferences/edit.html.haml +36 -36
- data/app/views/admin/users/_form.html.haml +1 -1
- data/app/views/admin/users/_password_fields.html.haml +1 -1
- data/app/views/admin/users/remove.html.haml +1 -1
- data/app/views/admin/welcome/login.html.haml +1 -1
- data/app/views/layouts/application.html.haml +16 -18
- data/config/application.rb +1 -2
- data/config/boot.rb +1 -0
- data/config/database.mysql.yml +3 -3
- data/{spec/dummy/config/database.yml → config/database.yml.rails2} +4 -4
- data/config/environment.rb.rails2 +89 -0
- data/config/environments/development.rb +0 -1
- data/config/environments/development.rb.rails2 +17 -0
- data/config/environments/production.rb.rails2 +24 -0
- data/config/environments/test.rb +4 -2
- data/config/initializers/trusty_cms_config.rb +0 -1
- data/config/routes.rb +0 -1
- data/config/routes.rb.rails2 +41 -0
- data/db/migrate/001_create_radiant_tables.rb +0 -1
- data/db/migrate/003_rename_behavior_column.rb +9 -0
- data/db/migrate/019_add_salt_to_users.rb +11 -0
- data/db/migrate/20100805155020_convert_page_metas.rb +13 -0
- data/db/migrate/20110902203823_add_allowed_children_cache_to_pages.rb +4 -0
- data/db/migrate/20120209231801_change_pages_allowed_children_cache_to_text.rb +1 -0
- data/lib/generators/instance/templates/databases/mysql.yml +3 -3
- data/lib/generators/instance/templates/instance_gemfile +2 -2
- data/lib/generators/trusty_cms/templates/database.yml.erb +4 -4
- data/lib/generators/trusty_cms/templates/routes.rb.erb +1 -0
- data/lib/login_system.rb +1 -1
- data/lib/tasks/database.rake +3 -1
- data/lib/tasks/framework.rake +1 -1
- data/lib/trusty_cms/admin_ui.rb +0 -2
- data/lib/trusty_cms/extension_migrator.rb +2 -1
- data/lib/trusty_cms/initializer.rb +1 -1
- data/lib/trusty_cms/setup.rb +1 -1
- data/lib/trusty_cms.rb +1 -1
- data/public/stylesheets/admin/main.css +1 -0
- data/{spec/dummy/config/routes.rb → public/stylesheets/admin/overrides.css} +0 -0
- data/spec/ci/database.mysql.yml +1 -1
- data/spec/features/pages_spec.rb +2 -2
- data/spec/helpers/regions_helper_spec.rb +16 -0
- data/spec/rails_helper.rb +4 -3
- data/spec/spec_helper.rb +77 -13
- data/spec/support/custom_actions.rb +0 -1
- data/test/test_helper.rb.rails2 +64 -0
- data/tmp/cache/747/A70/TrustyCms%3A%3AConfig +0 -0
- data/tmp/cache/85C/FA0/TrustyCms.cache_mtime +0 -0
- data/tmp/cache_files_test/a.txt +1 -0
- data/tmp/cache_files_test/all.txt +3 -0
- data/tmp/cache_files_test/b.txt +1 -0
- data/tmp/config/radiant_config.yml +27 -0
- data/tmp/sass-cache/1a137f46a4706893cc07b2aa949a92cf851d936f/_boxes.sassc +0 -0
- data/tmp/sass-cache/1a137f46a4706893cc07b2aa949a92cf851d936f/_gradients.sassc +0 -0
- data/tmp/sass-cache/1a137f46a4706893cc07b2aa949a92cf851d936f/_links.sassc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_appearance.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_background-clip.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_background-origin.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_background-size.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_border-radius.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_box-shadow.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_box-sizing.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_box.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_columns.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_filter.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_font-face.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_hyphenation.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_images.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_inline-block.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_opacity.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_regions.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_shared.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_text-shadow.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_transform.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_transition.scssc +0 -0
- data/tmp/sass-cache/28de5f95620abb7d2385166aed681f8b13104764/_user-interface.scssc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_actions.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_avatars.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_content.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_dateinput.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_deprecated.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_dropdown.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_footer.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_forms.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_header.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_index.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_layout.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_messages.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_popup.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_tabcontrol.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_toolbar.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_typography.sassc +0 -0
- data/tmp/sass-cache/2f4278d4f2cc4f21f31aa67430e462fbca6b47a0/_validations.sassc +0 -0
- data/tmp/sass-cache/33c9f77b54ab77293741bf5159eedff124a39fc1/_color.scssc +0 -0
- data/tmp/sass-cache/33c9f77b54ab77293741bf5159eedff124a39fc1/_general.scssc +0 -0
- data/tmp/sass-cache/33c9f77b54ab77293741bf5159eedff124a39fc1/_sprites.scssc +0 -0
- data/tmp/sass-cache/33c9f77b54ab77293741bf5159eedff124a39fc1/_tables.scssc +0 -0
- data/tmp/sass-cache/5683573556a6b271b3ffade55f4ff32a60e7c0f0/_base.scssc +0 -0
- data/tmp/sass-cache/5683573556a6b271b3ffade55f4ff32a60e7c0f0/_sprite-img.scssc +0 -0
- data/tmp/sass-cache/6159fdf943b5ffc54b901a34cdfcfc7e6f736834/_alternating-rows-and-columns.scssc +0 -0
- data/tmp/sass-cache/6159fdf943b5ffc54b901a34cdfcfc7e6f736834/_borders.scssc +0 -0
- data/tmp/sass-cache/6159fdf943b5ffc54b901a34cdfcfc7e6f736834/_scaffolding.scssc +0 -0
- data/tmp/sass-cache/81fb0626d3f9dbbcc1f43df416db1c97b6ad512a/_links.scssc +0 -0
- data/tmp/sass-cache/81fb0626d3f9dbbcc1f43df416db1c97b6ad512a/_lists.scssc +0 -0
- data/tmp/sass-cache/81fb0626d3f9dbbcc1f43df416db1c97b6ad512a/_text.scssc +0 -0
- data/tmp/sass-cache/81fb0626d3f9dbbcc1f43df416db1c97b6ad512a/_vertical_rhythm.scssc +0 -0
- data/tmp/sass-cache/87c1de4edf14dc5f527f65e2080e0faa325354aa/_hover-link.scssc +0 -0
- data/tmp/sass-cache/87c1de4edf14dc5f527f65e2080e0faa325354aa/_link-colors.scssc +0 -0
- data/tmp/sass-cache/87c1de4edf14dc5f527f65e2080e0faa325354aa/_unstyled-link.scssc +0 -0
- data/tmp/sass-cache/8b412a89f899813981285eadb5f08e52b94dfb65/_css3.scssc +0 -0
- data/tmp/sass-cache/8b412a89f899813981285eadb5f08e52b94dfb65/_support.scssc +0 -0
- data/tmp/sass-cache/8b412a89f899813981285eadb5f08e52b94dfb65/_typography.scssc +0 -0
- data/tmp/sass-cache/8b412a89f899813981285eadb5f08e52b94dfb65/_utilities.scssc +0 -0
- data/tmp/sass-cache/92844cd19a320f87ef960171cea4f33d1a07339c/_contrast.scssc +0 -0
- data/tmp/sass-cache/a97de1041408f914478b9e7943c5c6c2d221d4c0/_ellipsis.scssc +0 -0
- data/tmp/sass-cache/a97de1041408f914478b9e7943c5c6c2d221d4c0/_force-wrap.scssc +0 -0
- data/tmp/sass-cache/a97de1041408f914478b9e7943c5c6c2d221d4c0/_nowrap.scssc +0 -0
- data/tmp/sass-cache/a97de1041408f914478b9e7943c5c6c2d221d4c0/_replacement.scssc +0 -0
- data/tmp/sass-cache/b3d80baefd48593d8c08815ba2d83e209f5dad6f/_grid-background.scssc +0 -0
- data/tmp/sass-cache/b92bfc773efa04d930ffa0b3331244a1f378caa7/_compass.scssc +0 -0
- data/tmp/sass-cache/c055a2360b102aff9247707235d9dce9214f6c4f/_clearfix.scssc +0 -0
- data/tmp/sass-cache/c055a2360b102aff9247707235d9dce9214f6c4f/_float.scssc +0 -0
- data/tmp/sass-cache/c055a2360b102aff9247707235d9dce9214f6c4f/_hacks.scssc +0 -0
- data/tmp/sass-cache/c055a2360b102aff9247707235d9dce9214f6c4f/_min.scssc +0 -0
- data/tmp/sass-cache/c055a2360b102aff9247707235d9dce9214f6c4f/_reset.scssc +0 -0
- data/tmp/sass-cache/c055a2360b102aff9247707235d9dce9214f6c4f/_tag-cloud.scssc +0 -0
- data/tmp/sass-cache/c3fa060b99d9ed1d9740af472ecc747182e2ea93/_base.sassc +0 -0
- data/tmp/sass-cache/c3fa060b99d9ed1d9740af472ecc747182e2ea93/main.sassc +0 -0
- data/tmp/sass-cache/c3fa060b99d9ed1d9740af472ecc747182e2ea93/overrides.sassc +0 -0
- data/tmp/sass-cache/d2bf234de18cb20fe8238c9224b9863ed5d268c6/_bullets.scssc +0 -0
- data/tmp/sass-cache/d2bf234de18cb20fe8238c9224b9863ed5d268c6/_horizontal-list.scssc +0 -0
- data/tmp/sass-cache/d2bf234de18cb20fe8238c9224b9863ed5d268c6/_inline-block-list.scssc +0 -0
- data/tmp/sass-cache/d2bf234de18cb20fe8238c9224b9863ed5d268c6/_inline-list.scssc +0 -0
- data/tmp/sass-cache/dc9647e96d50c02214aff50e88308a74bf56d1d7/_utilities.scssc +0 -0
- data/trusty_cms.gemspec +2 -4
- metadata +180 -171
- data/spec/dummy/README.rdoc +0 -28
- data/spec/dummy/Rakefile +0 -5
- data/spec/dummy/bin/bundle +0 -3
- data/spec/dummy/bin/rails +0 -4
- data/spec/dummy/bin/rake +0 -4
- data/spec/dummy/bin/setup +0 -29
- data/spec/dummy/config/application.rb +0 -152
- data/spec/dummy/config/boot.rb +0 -6
- data/spec/dummy/config/environment.rb +0 -5
- data/spec/dummy/config/environments/development.rb +0 -49
- data/spec/dummy/config/environments/production.rb +0 -79
- data/spec/dummy/config/environments/test.rb +0 -42
- data/spec/dummy/config/initializers/assets.rb +0 -11
- data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
- data/spec/dummy/config/initializers/cookies_serializer.rb +0 -3
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +0 -4
- data/spec/dummy/config/initializers/inflections.rb +0 -16
- data/spec/dummy/config/initializers/mime_types.rb +0 -4
- data/spec/dummy/config/initializers/session_store.rb +0 -3
- data/spec/dummy/config/initializers/trusty_cms_config.rb +0 -20
- data/spec/dummy/config/initializers/wrap_parameters.rb +0 -14
- data/spec/dummy/config/locales/en.yml +0 -23
- data/spec/dummy/config/secrets.yml +0 -22
- data/spec/dummy/config.ru +0 -4
- data/spec/dummy/db/schema.rb +0 -122
- data/spec/dummy/log/test.log +0 -25081
- data/spec/dummy/public/404.html +0 -67
- data/spec/dummy/public/422.html +0 -67
- data/spec/dummy/public/500.html +0 -66
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/tmp/cache/747/A70/TrustyCms%3A%3AConfig +0 -0
- data/spec/dummy/tmp/cache/85C/FA0/TrustyCms.cache_mtime +0 -0
- data/spec/dummy/tmp/radiant_config_cache.txt +0 -0
data/config/boot.rb
CHANGED
data/config/database.mysql.yml
CHANGED
|
@@ -4,19 +4,19 @@
|
|
|
4
4
|
#
|
|
5
5
|
|
|
6
6
|
development:
|
|
7
|
-
adapter:
|
|
7
|
+
adapter: mysql
|
|
8
8
|
database: trusty_cms_dev
|
|
9
9
|
username: root
|
|
10
10
|
password:
|
|
11
11
|
|
|
12
12
|
test: &TEST
|
|
13
|
-
adapter:
|
|
13
|
+
adapter: mysql
|
|
14
14
|
database: trusty_cms_test
|
|
15
15
|
username: root
|
|
16
16
|
password:
|
|
17
17
|
|
|
18
18
|
production:
|
|
19
|
-
adapter:
|
|
19
|
+
adapter: mysql
|
|
20
20
|
database: trusty_cms_live
|
|
21
21
|
username: root
|
|
22
22
|
password:
|
|
@@ -4,25 +4,25 @@
|
|
|
4
4
|
#
|
|
5
5
|
|
|
6
6
|
development:
|
|
7
|
-
adapter:
|
|
7
|
+
adapter: mysql
|
|
8
8
|
database: trusty_cms_dev
|
|
9
9
|
username: root
|
|
10
10
|
password:
|
|
11
11
|
host: localhost
|
|
12
12
|
|
|
13
13
|
test: &TEST
|
|
14
|
-
adapter:
|
|
14
|
+
adapter: mysql
|
|
15
15
|
database: trusty_cms_test
|
|
16
16
|
username: root
|
|
17
17
|
password:
|
|
18
18
|
host: localhost
|
|
19
19
|
|
|
20
20
|
production:
|
|
21
|
-
adapter:
|
|
21
|
+
adapter: mysql
|
|
22
22
|
database: trusty_cms_live
|
|
23
23
|
username: root
|
|
24
24
|
password:
|
|
25
25
|
socket: /tmp/mysql.sock
|
|
26
26
|
|
|
27
27
|
cucumber:
|
|
28
|
-
<<: *TEST
|
|
28
|
+
<<: *TEST
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# Be sure to restart your server when you modify this file
|
|
2
|
+
|
|
3
|
+
# Uncomment below to force Rails into production mode when
|
|
4
|
+
# you don't control web/app server and can't set it the proper way
|
|
5
|
+
# ENV['RAILS_ENV'] ||= 'production'
|
|
6
|
+
|
|
7
|
+
# Specifies gem version of Rails to use when vendor/rails is not present
|
|
8
|
+
require File.join(File.dirname(__FILE__), 'boot')
|
|
9
|
+
|
|
10
|
+
require 'radius'
|
|
11
|
+
|
|
12
|
+
YAML::ENGINE.yamler = 'syck' if RUBY_VERSION =~ /1.9/
|
|
13
|
+
|
|
14
|
+
TrustyCms::Initializer.run do |config|
|
|
15
|
+
# Skip frameworks you're not going to use (only works if using vendor/rails).
|
|
16
|
+
# To use Rails without a database, you must remove the Active Record framework
|
|
17
|
+
# config.frameworks -= [ :action_mailer ]
|
|
18
|
+
|
|
19
|
+
# Only load the extensions named here, in the order given. By default all
|
|
20
|
+
# extensions in vendor/extensions are loaded, in alphabetical order. :all
|
|
21
|
+
# can be used as a placeholder for all extensions not explicitly named.
|
|
22
|
+
# config.extensions = [ :all ]
|
|
23
|
+
|
|
24
|
+
# By default, only English translations are loaded. Remove any of these from
|
|
25
|
+
# the list below if you'd like to provide any of the additional options
|
|
26
|
+
# config.ignore_extensions []
|
|
27
|
+
|
|
28
|
+
# Your secret key for verifying cookie session data integrity.
|
|
29
|
+
# If you change this key, all old sessions will become invalid!
|
|
30
|
+
# Make sure the secret is at least 30 characters and all random,
|
|
31
|
+
# no regular words or you'll be exposed to dictionary attacks.
|
|
32
|
+
config.action_controller.session = {
|
|
33
|
+
:key => '_trusty_cms_session',
|
|
34
|
+
:secret => 'asdfqwerfxcoivswqenadfasdfqewpfioutyqwel'
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
# Comment out this line if you want to turn off all caching, or
|
|
38
|
+
# add options to modify the behavior. In the majority of deployment
|
|
39
|
+
# scenarios it is desirable to leave TrustyCms's cache enabled and in
|
|
40
|
+
# the default configuration.
|
|
41
|
+
#
|
|
42
|
+
# Additional options:
|
|
43
|
+
# :use_x_sendfile => true
|
|
44
|
+
# Turns on X-Sendfile support for Apache with mod_xsendfile or lighttpd.
|
|
45
|
+
# :use_x_accel_redirect => '/some/virtual/path'
|
|
46
|
+
# Turns on X-Accel-Redirect support for nginx. You have to provide
|
|
47
|
+
# a path that corresponds to a virtual location in your webserver
|
|
48
|
+
# configuration.
|
|
49
|
+
# :entitystore => "trusty_cms:tmp/cache/entity"
|
|
50
|
+
# Sets the entity store type (preceding the colon) and storage
|
|
51
|
+
# location (following the colon, relative to Rails.root).
|
|
52
|
+
# We recommend you use trusty_cms: since this will enable manual expiration.
|
|
53
|
+
# :metastore => "trusty_cms:tmp/cache/meta"
|
|
54
|
+
# Sets the meta store type and storage location. We recommend you use
|
|
55
|
+
# trusty_cms: since this will enable manual expiration and acceleration headers.
|
|
56
|
+
config.middleware.use ::TrustyCms::Cache
|
|
57
|
+
|
|
58
|
+
# Use the database for sessions instead of the cookie-based default,
|
|
59
|
+
# which shouldn't be used to store highly confidential information
|
|
60
|
+
# (create the session table with 'rake db:sessions:create')
|
|
61
|
+
config.action_controller.session_store = :cookie_store
|
|
62
|
+
|
|
63
|
+
# Activate observers that should always be running
|
|
64
|
+
config.active_record.observers = :user_action_observer
|
|
65
|
+
|
|
66
|
+
# The internationalization framework can be changed to have another default locale (standard is :en) or more load paths.
|
|
67
|
+
# All files from config/locales/*.rb,yml are added automatically.
|
|
68
|
+
# config.i18n.load_path << Dir[File.join(Rails.root, 'my', 'locales', '*.{rb,yml}')]
|
|
69
|
+
# config.i18n.default_locale = :'en'
|
|
70
|
+
|
|
71
|
+
# Make Active Record use UTC-base instead of local time
|
|
72
|
+
config.time_zone = 'UTC'
|
|
73
|
+
|
|
74
|
+
# Set the default field error proc
|
|
75
|
+
config.action_view.field_error_proc = Proc.new do |html, instance|
|
|
76
|
+
if html !~ /label/
|
|
77
|
+
%{<span class="error-with-field">#{html} <span class="error">#{[instance.error_message].flatten.first}</span></span>}
|
|
78
|
+
else
|
|
79
|
+
html
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
config.after_initialize do
|
|
84
|
+
# Add new inflection rules using the following format:
|
|
85
|
+
ActiveSupport::Inflector.inflections do |inflect|
|
|
86
|
+
inflect.uncountable 'config'
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
@@ -5,7 +5,6 @@ TrustyCms::Application.configure do
|
|
|
5
5
|
# every request. This slows down response time but is perfect for development
|
|
6
6
|
# since you don't have to restart the webserver when you make code changes.
|
|
7
7
|
config.cache_classes = false
|
|
8
|
-
config.eager_load = false
|
|
9
8
|
|
|
10
9
|
# Log error messages when you accidentally call methods on nil.
|
|
11
10
|
config.whiny_nils = true
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Settings specified here will take precedence over those in config/environment.rb
|
|
2
|
+
|
|
3
|
+
# In the development environment your application's code is reloaded on
|
|
4
|
+
# every request. This slows down response time but is perfect for development
|
|
5
|
+
# since you don't have to restart the webserver when you make code changes.
|
|
6
|
+
config.cache_classes = false
|
|
7
|
+
|
|
8
|
+
# Log error messages when you accidentally call methods on nil.
|
|
9
|
+
config.whiny_nils = true
|
|
10
|
+
|
|
11
|
+
# Show full error reports and caching is turned off
|
|
12
|
+
config.action_controller.consider_all_requests_local = true
|
|
13
|
+
config.action_view.debug_rjs = true
|
|
14
|
+
config.action_controller.perform_caching = false
|
|
15
|
+
|
|
16
|
+
# Don't care if the mailer can't send
|
|
17
|
+
config.action_mailer.raise_delivery_errors = false
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Settings specified here will take precedence over those in config/environment.rb
|
|
2
|
+
|
|
3
|
+
# The production environment is meant for finished, "live" apps.
|
|
4
|
+
# Code is not reloaded between requests
|
|
5
|
+
config.cache_classes = true
|
|
6
|
+
|
|
7
|
+
# Use a different logger for distributed setups
|
|
8
|
+
# config.logger = SyslogLogger.new
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
# Full error reports are disabled and caching is on
|
|
12
|
+
config.action_controller.consider_all_requests_local = false
|
|
13
|
+
config.action_controller.perform_caching = true
|
|
14
|
+
|
|
15
|
+
# Enable serving of images, stylesheets, and javascripts from an asset server
|
|
16
|
+
# config.action_controller.asset_host = "http://assets.example.com"
|
|
17
|
+
|
|
18
|
+
# Disable delivery errors if you bad email addresses should just be ignored
|
|
19
|
+
# config.action_mailer.raise_delivery_errors = false
|
|
20
|
+
|
|
21
|
+
# Cache your content for a longer time, the default is 5.minutes
|
|
22
|
+
# config.after_initialize do
|
|
23
|
+
# SiteController.cache_timeout = 12.hours
|
|
24
|
+
# end
|
data/config/environments/test.rb
CHANGED
|
@@ -6,7 +6,6 @@ TrustyCms::Application.configure do
|
|
|
6
6
|
# your test database is "scratch space" for the test suite and is wiped
|
|
7
7
|
# and recreated between test runs. Don't rely on the data there!
|
|
8
8
|
config.cache_classes = true
|
|
9
|
-
config.eager_load = false
|
|
10
9
|
|
|
11
10
|
# ensure test extensions are loaded
|
|
12
11
|
# test_extension_dir = File.join(File.expand_path(TRUSTY_CMS_ROOT), 'test', 'fixtures', 'extensions')
|
|
@@ -24,6 +23,9 @@ TrustyCms::Application.configure do
|
|
|
24
23
|
config.consider_all_requests_local = true
|
|
25
24
|
config.action_controller.perform_caching = false
|
|
26
25
|
|
|
26
|
+
# Quiet rack cache logging in test mode
|
|
27
|
+
Rails.application.middleware.delete Rack::Cache
|
|
28
|
+
Rails.application.middleware.insert 0, Rack::Cache, { verbose: false }
|
|
27
29
|
|
|
28
30
|
# Raise an ActiveModel::MassAssignmentSecurity::Error any time
|
|
29
31
|
# something is mass-assigned that shouldn't be for ease in debugging.
|
|
@@ -38,7 +40,7 @@ TrustyCms::Application.configure do
|
|
|
38
40
|
config.action_mailer.delivery_method = :test
|
|
39
41
|
|
|
40
42
|
# Configure static asset server for tests with Cache-Control for performance
|
|
41
|
-
config.
|
|
43
|
+
config.serve_static_assets = true
|
|
42
44
|
config.static_cache_control = "public, max-age=3600"
|
|
43
45
|
|
|
44
46
|
# Raise exceptions instead of rendering exception templates
|
|
@@ -13,5 +13,4 @@ TrustyCms.config do |config|
|
|
|
13
13
|
config.define 'site.title', :default => "Your site title", :allow_blank => false
|
|
14
14
|
config.define 'site.host', :default => "www.example.com", :allow_blank => false
|
|
15
15
|
config.define 'user.allow_password_reset?', :default => true
|
|
16
|
-
config.define 'session_timeout', :default => 2.weeks
|
|
17
16
|
end
|
data/config/routes.rb
CHANGED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
ActionController::Routing::Routes.draw do |map|
|
|
2
|
+
|
|
3
|
+
# Admin RESTful Routes
|
|
4
|
+
map.namespace :admin, :member => { :remove => :get } do |admin|
|
|
5
|
+
admin.resources :pages do |pages|
|
|
6
|
+
pages.resources :children, :controller => "pages"
|
|
7
|
+
end
|
|
8
|
+
admin.resources :layouts
|
|
9
|
+
admin.resources :users
|
|
10
|
+
end
|
|
11
|
+
map.preview 'admin/preview', :controller => 'admin/pages', :action => 'preview', :conditions => {:method => [:post, :put]}
|
|
12
|
+
|
|
13
|
+
map.namespace :admin do |admin|
|
|
14
|
+
admin.resource :preferences
|
|
15
|
+
admin.resource :configuration, :controller => 'configuration'
|
|
16
|
+
# admin.resources :settings
|
|
17
|
+
admin.resources :extensions, :only => :index
|
|
18
|
+
admin.resources :page_parts
|
|
19
|
+
admin.resources :page_fields
|
|
20
|
+
admin.reference '/reference/:type.:format', :controller => 'references', :action => 'show', :conditions => {:method => :get}
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# Admin Routes
|
|
24
|
+
map.with_options(:controller => 'admin/welcome') do |welcome|
|
|
25
|
+
welcome.admin 'admin', :action => 'index'
|
|
26
|
+
welcome.welcome 'admin/welcome', :action => 'index'
|
|
27
|
+
welcome.login 'admin/login', :action => 'login'
|
|
28
|
+
welcome.logout 'admin/logout', :action => 'logout'
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# Site URLs
|
|
32
|
+
map.with_options(:controller => 'site') do |site|
|
|
33
|
+
site.root :action => 'show_page', :url => '/'
|
|
34
|
+
site.not_found 'error/404', :action => 'not_found'
|
|
35
|
+
site.error 'error/500', :action => 'error'
|
|
36
|
+
|
|
37
|
+
# Everything else
|
|
38
|
+
site.connect '*url', :action => 'show_page'
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
end
|
|
@@ -59,7 +59,6 @@ class CreateRadiantTables < ActiveRecord::Migration
|
|
|
59
59
|
t.column "updated_at", :datetime
|
|
60
60
|
t.column "created_by", :integer
|
|
61
61
|
t.column "updated_by", :integer
|
|
62
|
-
t.column "salt", :string
|
|
63
62
|
end
|
|
64
63
|
add_index "users", ["login"], :name => "login", :unique => true
|
|
65
64
|
|
|
@@ -1,11 +1,24 @@
|
|
|
1
1
|
class ConvertPageMetas < ActiveRecord::Migration
|
|
2
2
|
def self.up
|
|
3
|
+
# following add and remove column enables running this migration
|
|
4
|
+
# when upgrading radiant with allowed_children_cache added to Page model
|
|
5
|
+
add_column :pages, :allowed_children_cache, :text
|
|
6
|
+
Page.all.each do |page|
|
|
7
|
+
page.fields.create(:name => 'Keywords', :content => page.keywords)
|
|
8
|
+
page.fields.create(:name => 'Description', :content => page.description)
|
|
9
|
+
end
|
|
3
10
|
remove_column :pages, :keywords
|
|
4
11
|
remove_column :pages, :description
|
|
12
|
+
remove_column :pages, :allowed_children_cache
|
|
5
13
|
end
|
|
6
14
|
|
|
7
15
|
def self.down
|
|
8
16
|
add_column :pages, :description, :string
|
|
9
17
|
add_column :pages, :keywords, :string
|
|
18
|
+
Page.all.each do |page|
|
|
19
|
+
page.description = page.field('description').content
|
|
20
|
+
page.keywords = page.field('keywords').content
|
|
21
|
+
page.save
|
|
22
|
+
end
|
|
10
23
|
end
|
|
11
24
|
end
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
class AddAllowedChildrenCacheToPages < ActiveRecord::Migration
|
|
2
2
|
def self.up
|
|
3
3
|
add_column :pages, :allowed_children_cache, :text
|
|
4
|
+
Page.reset_column_information
|
|
5
|
+
Page.find_each do |page|
|
|
6
|
+
page.save # update the allowed_children_cache
|
|
7
|
+
end
|
|
4
8
|
end
|
|
5
9
|
|
|
6
10
|
def self.down
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
# And be sure to use new-style password hashing:
|
|
12
12
|
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
|
|
13
13
|
development:
|
|
14
|
-
adapter:
|
|
14
|
+
adapter: mysql
|
|
15
15
|
database: <%= app_name %>_development
|
|
16
16
|
username: root
|
|
17
17
|
password:
|
|
@@ -25,7 +25,7 @@ development:
|
|
|
25
25
|
# re-generated from your development database when you run 'rake'.
|
|
26
26
|
# Do not set this db to the same as development or production.
|
|
27
27
|
test:
|
|
28
|
-
adapter:
|
|
28
|
+
adapter: mysql
|
|
29
29
|
database: <%= app_name %>_test
|
|
30
30
|
username: root
|
|
31
31
|
password:
|
|
@@ -36,7 +36,7 @@ test:
|
|
|
36
36
|
<% end -%>
|
|
37
37
|
|
|
38
38
|
production:
|
|
39
|
-
adapter:
|
|
39
|
+
adapter: mysql
|
|
40
40
|
database: <%= app_name %>_production
|
|
41
41
|
username: root
|
|
42
42
|
password:
|
|
@@ -20,8 +20,8 @@ gem "compass-rails", "~> 1.0.3"
|
|
|
20
20
|
# SQLite is the default database connection but only suitable for local use
|
|
21
21
|
<%= '# ' unless db == 'sqlite3' %>gem "sqlite3", "~> 1.3.5"
|
|
22
22
|
|
|
23
|
-
# To use
|
|
24
|
-
<%= '# ' unless db == '
|
|
23
|
+
# To use MySQL
|
|
24
|
+
<%= '# ' unless db == 'mysql' %>gem "mysql", "~> 2.8.1"
|
|
25
25
|
|
|
26
26
|
# Postgres
|
|
27
27
|
<%= '# ' unless db == 'postgresql' %>gem "pg", "~> 0.11.0"
|
|
@@ -4,25 +4,25 @@
|
|
|
4
4
|
#
|
|
5
5
|
|
|
6
6
|
development:
|
|
7
|
-
adapter:
|
|
7
|
+
adapter: mysql
|
|
8
8
|
database: <%= project_name%>_blank_dev
|
|
9
9
|
username:
|
|
10
10
|
password:
|
|
11
11
|
host: localhost
|
|
12
12
|
|
|
13
13
|
test: &TEST
|
|
14
|
-
adapter:
|
|
14
|
+
adapter: mysql
|
|
15
15
|
database: <%= project_name%>_blank_test
|
|
16
16
|
username:
|
|
17
17
|
password:
|
|
18
18
|
host:
|
|
19
19
|
|
|
20
20
|
production:
|
|
21
|
-
adapter:
|
|
21
|
+
adapter: mysql
|
|
22
22
|
database: <%= project_name%>_blank_live
|
|
23
23
|
username:
|
|
24
24
|
password:
|
|
25
25
|
socket: /tmp/mysql.sock
|
|
26
26
|
|
|
27
27
|
cucumber:
|
|
28
|
-
<<: *TEST
|
|
28
|
+
<<: *TEST
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
load File.join(TRUSTY_CMS_ROOT, "config", "routes.rb")
|
data/lib/login_system.rb
CHANGED
|
@@ -81,7 +81,7 @@ module LoginSystem
|
|
|
81
81
|
end
|
|
82
82
|
|
|
83
83
|
def set_session_cookie(user = current_user)
|
|
84
|
-
cookies[:session_token] = { :value => user.session_token , :expires =>
|
|
84
|
+
cookies[:session_token] = { :value => user.session_token , :expires => TrustyCms::Config['session_timeout'].to_i.from_now.utc }
|
|
85
85
|
end
|
|
86
86
|
|
|
87
87
|
module ClassMethods
|
data/lib/tasks/database.rake
CHANGED
|
@@ -63,7 +63,9 @@ To add more extensions just add them to your Gemfile and run `bundle install`.
|
|
|
63
63
|
end
|
|
64
64
|
|
|
65
65
|
desc "Migrate the database through all available migration scripts (looks for db/migrate/* in trusty-cms, in extensions and in your site) and update db/schema.rb by invoking db:schema:dump. Turn off output with VERBOSE=false."
|
|
66
|
-
task :migrate =>
|
|
66
|
+
task :migrate => :environment do
|
|
67
|
+
Rake::Task['db:migrate:trusty_cms'].invoke
|
|
68
|
+
Rake::Task['db:migrate:extensions'].invoke
|
|
67
69
|
ActiveRecord::Migration.verbose = ENV["VERBOSE"] ? ENV["VERBOSE"] == "true" : true
|
|
68
70
|
ActiveRecord::Migrator.migrate("db/migrate/", ENV["VERSION"] ? ENV["VERSION"].to_i : nil)
|
|
69
71
|
Rake::Task["db:schema:dump"].invoke if ActiveRecord::Base.schema_format == :ruby
|
data/lib/tasks/framework.rake
CHANGED
data/lib/trusty_cms/admin_ui.rb
CHANGED
|
@@ -198,7 +198,6 @@ module TrustyCms
|
|
|
198
198
|
index.bottom.concat %w{new_button}
|
|
199
199
|
end
|
|
200
200
|
user.new = user.edit
|
|
201
|
-
user.remove = user.edit
|
|
202
201
|
end
|
|
203
202
|
end
|
|
204
203
|
|
|
@@ -216,7 +215,6 @@ module TrustyCms
|
|
|
216
215
|
index.bottom.concat %w{new_button}
|
|
217
216
|
end
|
|
218
217
|
layout.new = layout.edit
|
|
219
|
-
layout.remove = layout.edit
|
|
220
218
|
end
|
|
221
219
|
end
|
|
222
220
|
|
|
@@ -84,12 +84,13 @@ module TrustyCms
|
|
|
84
84
|
|
|
85
85
|
def record_version_state_after_migrating(version)
|
|
86
86
|
sm_table = self.class.schema_migrations_table_name
|
|
87
|
+
|
|
87
88
|
@migrated_versions ||= []
|
|
88
89
|
if down?
|
|
89
90
|
@migrated_versions.delete(version.to_i)
|
|
90
91
|
ActiveRecord::Base.connection.update("DELETE FROM #{sm_table} WHERE version = #{quote(version_string(version))}")
|
|
91
92
|
else
|
|
92
|
-
@migrated_versions.
|
|
93
|
+
@migrated_versions.push(version.to_i).sort!
|
|
93
94
|
ActiveRecord::Base.connection.insert("INSERT INTO #{sm_table} (version) VALUES (#{quote(version_string(version))})")
|
|
94
95
|
end
|
|
95
96
|
end
|
data/lib/trusty_cms/setup.rb
CHANGED
|
@@ -36,7 +36,7 @@ module TrustyCms
|
|
|
36
36
|
:password => password,
|
|
37
37
|
:password_confirmation => password
|
|
38
38
|
}
|
|
39
|
-
admin = User.
|
|
39
|
+
admin = User.find_by_login(username)
|
|
40
40
|
admin = User.new unless admin
|
|
41
41
|
admin.update_attributes(attributes)
|
|
42
42
|
admin.admin = true
|
data/lib/trusty_cms.rb
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}html{line-height:1}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}caption,th,td{text-align:left;font-weight:normal;vertical-align:middle}q,blockquote{quotes:none}q:before,q:after,blockquote:before,blockquote:after{content:"";content:none}a img{border:none}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block}body{font-size:15px;font-family:"Lucida Grande","Bitstream Vera Sans",Helvetica,Verdana,Arial,sans-serif;line-height:1.4}a{color:#06c;text-decoration:underline}a:hover{text-decoration:none}a.alt{color:red;text-decoration:underline}a.alt:hover{text-decoration:none}big{font-size:110%}h1{font-size:180%;font-weight:bold;margin:0.75em 0}h3{font-weight:bold;font-size:130%;margin-top:1.25em;margin-bottom:0.5em}h4,h5,h6{font-weight:bold}p{margin:1em 0}td{vertical-align:middle}caption,th,td{text-align:left;font-weight:normal}img{border:none;vertical-align:middle}input[type=image]{border:none;vertical-align:middle}input.big{font-size:120%}#change_password span,span.info,span.error{font-size:80%}.clear{font-size:1px;clear:both}.warning{color:red}table{border-collapse:collapse}body.reversed{background-color:#9e9e9e;color:#fff}body.single_form #content{text-align:center}body.single_form #content #single_form{margin:6em auto 0;text-align:left}#header{font-size:90%;background:#ca0000;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #8d0000), color-stop(50%, #ca0000), color-stop(100%, #ca0000));background-image:-webkit-linear-gradient(top, #8d0000,#ca0000,#ca0000);background-image:-moz-linear-gradient(top, #8d0000,#ca0000,#ca0000);background-image:-o-linear-gradient(top, #8d0000,#ca0000,#ca0000);background-image:linear-gradient(top, #8d0000,#ca0000,#ca0000);position:relative}#header:after{content:"\0020";display:block;clear:both;overflow:hidden;height:2px;width:100%;position:absolute;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0,0,0,0.3)), color-stop(100%, rgba(0,0,0,0)));background-image:-webkit-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0));background-image:-moz-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0));background-image:-o-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0));background-image:linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0))}#site_links{color:#f7d8d8;font-size:80%;float:right;padding:15px 10px 0 5px;height:16px}#site_links a{color:#fff}#site_links a:hover,#site_links strong a{text-decoration:none}#view_site{font-size:90%;background:rgba(0,0,0,0.45);-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px;display:inline;padding:3px 10px 4px;text-decoration:none}ul#navigation{float:left;margin-top:6px}ul#navigation li{float:left;height:30px;margin:4px 0 0 8px;white-space:nowrap}ul#navigation li a{background:rgba(255,255,255,0.3);color:#f7d8d8;display:block;height:30px;line-height:30px;padding:0 20px;position:relative;text-decoration:none;-moz-border-radius-topleft:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-topright:6px;-webkit-border-top-right-radius:6px;border-top-right-radius:6px}ul#navigation li:hover a{background:rgba(255,255,255,0.5);color:#fff}ul#navigation li.current a{background:#fff;color:#333;font-weight:bold}#toolbar{background:#fff;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(50%, #f2f2f2), color-stop(100%, #cccccc));background-image:-webkit-linear-gradient(top, #ffffff,#f2f2f2,#cccccc);background-image:-moz-linear-gradient(top, #ffffff,#f2f2f2,#cccccc);background-image:-o-linear-gradient(top, #ffffff,#f2f2f2,#cccccc);background-image:linear-gradient(top, #ffffff,#f2f2f2,#cccccc);font-size:95%;clear:both;margin:0;width:100%;height:38px;*zoom:1}#toolbar:after{content:"";display:table;clear:both}#toolbar .right{float:right}#toolbar form.search{padding:8px 8px 0}#toolbar form.search input[type=search]{font-size:12px;-webkit-border-radius:100px;-moz-border-radius:100px;-ms-border-radius:100px;-o-border-radius:100px;border-radius:100px;border:1px solid #ccc;border-top-color:#999;border-left-color:#b0b0b0;border-right-color:#bbb;background:#fff url('../../images/admin/search.png?1399550568') 4px center no-repeat;-webkit-box-shadow:0 1px 0 inset rgba(0,0,0,0.2);-moz-box-shadow:0 1px 0 inset rgba(0,0,0,0.2);box-shadow:0 1px 0 inset rgba(0,0,0,0.2);width:180px;padding:2px 8px 2px 20px}ul#secondary_navigation{float:left;margin-right:8px}ul#secondary_navigation li{float:left;display:block;background:url('../../images/admin/navigation_secondary_separator.gif?1399550568') bottom right no-repeat;padding-right:2px}ul#secondary_navigation li a{color:#555;display:block;font-weight:normal;float:left;line-height:38px;margin:0;padding:0 26px;height:38px;text-decoration:none}ul#secondary_navigation li a:hover{background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e4f9ff), color-stop(30%, #d2ebfd), color-stop(50%, #b1d1f1), color-stop(50%, #9bc5ed), color-stop(100%, #caecff));background-image:-webkit-linear-gradient(top, #e4f9ff,#d2ebfd 30%,#b1d1f1 50%,#9bc5ed 50%,#caecff);background-image:-moz-linear-gradient(top, #e4f9ff,#d2ebfd 30%,#b1d1f1 50%,#9bc5ed 50%,#caecff);background-image:-o-linear-gradient(top, #e4f9ff,#d2ebfd 30%,#b1d1f1 50%,#9bc5ed 50%,#caecff);background-image:linear-gradient(top, #e4f9ff,#d2ebfd 30%,#b1d1f1 50%,#9bc5ed 50%,#caecff);color:#444}ul#secondary_navigation li a.current{background:#ddd;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(35%, #e6e6e6), color-stop(50%, #d9d9d9), color-stop(50%, #cccccc), color-stop(100%, #d9d9d9));background-image:-webkit-linear-gradient(top, #ffffff,#e6e6e6 35%,#d9d9d9 50%,#cccccc 50%,#d9d9d9);background-image:-moz-linear-gradient(top, #ffffff,#e6e6e6 35%,#d9d9d9 50%,#cccccc 50%,#d9d9d9);background-image:-o-linear-gradient(top, #ffffff,#e6e6e6 35%,#d9d9d9 50%,#cccccc 50%,#d9d9d9);background-image:linear-gradient(top, #ffffff,#e6e6e6 35%,#d9d9d9 50%,#cccccc 50%,#d9d9d9);color:#333;font-weight:bold}ul#secondary_navigation li a.current:hover{background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e0f9fe), color-stop(30%, #c4e2f8), color-stop(50%, #98c3e7), color-stop(50%, #79aedb), color-stop(100%, #b1ddef));background-image:-webkit-linear-gradient(top, #e0f9fe,#c4e2f8 30%,#98c3e7 50%,#79aedb 50%,#b1ddef);background-image:-moz-linear-gradient(top, #e0f9fe,#c4e2f8 30%,#98c3e7 50%,#79aedb 50%,#b1ddef);background-image:-o-linear-gradient(top, #e0f9fe,#c4e2f8 30%,#98c3e7 50%,#79aedb 50%,#b1ddef);background-image:linear-gradient(top, #e0f9fe,#c4e2f8 30%,#98c3e7 50%,#79aedb 50%,#b1ddef);color:#222}img.avatar{background:#fff;border:none;padding:4px;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.25);-moz-box-shadow:1px 1px 3px rgba(0,0,0,0.25);box-shadow:1px 1px 3px rgba(0,0,0,0.25)}img.avatar.avatar_32x32{padding:2px;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px;-webkit-box-shadow:1px 1px 2px rgba(0,0,0,0.3);-moz-box-shadow:1px 1px 2px rgba(0,0,0,0.3);box-shadow:1px 1px 2px rgba(0,0,0,0.3)}.dropdown_wrapper{border:1px solid #b3b3b3;border-top:1px solid #c3c3c3;-webkit-box-shadow:0px 8px 25px rgba(0,0,0,0.35);-moz-box-shadow:0px 8px 25px rgba(0,0,0,0.35);box-shadow:0px 8px 25px rgba(0,0,0,0.35);-moz-border-radius-topright:5px;-webkit-border-top-right-radius:5px;border-top-right-radius:5px;-moz-border-radius-bottomleft:5px;-webkit-border-bottom-left-radius:5px;border-bottom-left-radius:5px;-moz-border-radius-bottomright:5px;-webkit-border-bottom-right-radius:5px;border-bottom-right-radius:5px}ul.menu{background:#fff;font-size:80%;padding:5px 20px;-moz-border-radius-topright:5px;-webkit-border-top-right-radius:5px;border-top-right-radius:5px;-moz-border-radius-bottomleft:5px;-webkit-border-bottom-left-radius:5px;border-bottom-left-radius:5px;-moz-border-radius-bottomright:5px;-webkit-border-bottom-right-radius:5px;border-bottom-right-radius:5px}ul.menu li{margin:0 -20px}ul.menu li.separator{margin:5px -18px;border-top:1px solid #e5e5e5}ul.menu a{color:#000;display:block;padding:6px 20px 7px;text-decoration:none;border-top:1px solid #fff}ul.menu a:hover{background:#e0f0ff;border-top:1px solid #d5f0ff;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5f5ff), color-stop(100%, #b5d0f5));background-image:-webkit-linear-gradient(top, #e5f5ff,#b5d0f5);background-image:-moz-linear-gradient(top, #e5f5ff,#b5d0f5);background-image:-o-linear-gradient(top, #e5f5ff,#b5d0f5);background-image:linear-gradient(top, #e5f5ff,#b5d0f5)}#notice,#error{padding:1px 1em}#notice{background-color:#b2e5b2;color:#060}#error{background-color:#f3c2c2;color:#700}#content form p label{display:block}#content form p label.checkbox,#content form p label.radio{display:inline;font-weight:normal;font-size:95%;text-shadow:none;margin-right:1em}#content form p label.multi_option{margin-bottom:0.3em}#content form p input.textbox{font-family:Georgia,Palatino,"Times New Roman",Times,serif;font-size:140%;margin-bottom:0}#content form p input.checkbox,#content form p input.radio{margin-top:0.3em}#content form p textarea{font-size:100%;margin-top:0.3em}#content form p .value{display:block;margin-top:0.25em;text-shadow:#666 1px 1px 0}#content form p .hint{font-size:90%;display:block;margin-top:0.25em;text-shadow:0px 0px 20px rgba(255,255,255,0.1)}#content form p a{color:#fff}#content form p a.action{background-color:#7e7e7e;font-size:75%;padding:0.2em 0.5em 0.3em;text-decoration:none;text-shadow:0px 0px 20px rgba(255,255,255,0.1);-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}#content form p a.action:hover{background-color:#555}#content form p.title input.textbox{margin-top:4px;font-family:Georgia,Palatino,"Times New Roman",Times,serif;font-size:200%;width:99.5%}#content form .set{float:left;width:100%;margin-bottom:1em;clear:both}#content form .set p{float:left;margin:0 1em 0 0}#content form .buttons{color:#666;font-size:80%;margin:2.5em 0 1em}#content form .buttons button,#content form .buttons input.button{font-size:150%}#content form .buttons a{color:red;text-decoration:underline}#content form .buttons a:hover{text-decoration:none}.drawer{margin-top:-1em;margin-bottom:1em}.drawer_contents{background:#7e7e7e;-moz-border-radius-bottomright:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;margin:0;margin-right:2px;padding-bottom:2px;overflow:hidden}.drawer_contents:before{content:"\0020";display:block;width:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0,0,0,0.3)), color-stop(100%, rgba(0,0,0,0)));background-image:-webkit-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0));background-image:-moz-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0));background-image:-o-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0));background-image:linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0));height:3px;margin-bottom:-3px}.drawer_contents table.fieldset{margin:0;padding:0;width:100%}.drawer_contents table.fieldset th,.drawer_contents table.fieldset td{border-top:1px #999 solid;padding:6px}.drawer_contents table.fieldset th.label{font-size:85%;padding:0 15px 0 10px !important;whitespace:nowrap;width:1%;vertical-align:middle;text-align:left}.drawer_contents table.fieldset td.field{padding-left:0px;padding-right:10px;text-align:right;width:auto}.drawer_contents table.fieldset td.field input.textbox{font-size:110%;width:99.5%}.drawer_contents table.fieldset td.actions{width:40px;text-align:left;vertical-align:middle}.drawer_contents table.fieldset tr:first-child td,.drawer_contents table.fieldset tr:first-child th{border-top:none}.drawer_handle{padding:4px 0 5px;margin-top:-1px}.drawer_handle a{background:#7e7e7e;border-bottom-left-radius:6px;border-bottom-right-radius:6px;color:#f0f0f0;font-size:80%;padding:4px 21px 5px 10px;position:relative;top:-1px;text-shadow:#666 1px 1px 0;text-decoration:none;-moz-border-radius-bottomleft:6px;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-moz-border-radius-bottomright:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px}.drawer_handle a:hover,.drawer_handle a:active,.drawer_handle a:focus{text-decoration:underline}.drawer_handle a.more{background:#7e7e7e url('../../images/admin/metadata_toggle.png?1399550568') no-repeat 85% 8px}.drawer_handle a.less{background:#7e7e7e url('../../images/admin/metadata_toggle.png?1399550568') no-repeat 85% -21px}.box{color:#333;background:#f5f1e2;font-size:90%;padding:1px 15px 10px;position:relative;margin:3px 0 20px;-webkit-border-radius:8px;-moz-border-radius:8px;-ms-border-radius:8px;-o-border-radius:8px;border-radius:8px;*zoom:1}.box:after{content:"";display:table;clear:both}.box *{position:relative}.box:before{background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(50%, #f5f1e2), color-stop(100%, #f5f1e2));background-image:-webkit-linear-gradient(top, #ffffff,#f5f1e2 50%,#f5f1e2);background-image:-moz-linear-gradient(top, #ffffff,#f5f1e2 50%,#f5f1e2);background-image:-o-linear-gradient(top, #ffffff,#f5f1e2 50%,#f5f1e2);background-image:linear-gradient(top, #ffffff,#f5f1e2 50%,#f5f1e2);-moz-border-radius-topleft:10px;-webkit-border-top-left-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-webkit-border-top-right-radius:10px;border-top-right-radius:10px;content:"\0020";display:block;position:absolute;width:100%;height:100px;overflow:hidden;left:0;top:0}.box h3{color:#333;margin:15px 0 0;border-bottom:1px solid #ccc;padding-bottom:8px}.box h3 .actions{float:right}.box h3 .actions button{font-size:13px;padding-left:1em;padding-right:1em;position:relative;top:-4px}.box h4{border-bottom:1px solid #ccc;padding-bottom:4px;font-size:110%;margin-top:1.5em}.box p.ruled{border-bottom:1px solid #ddd;margin:0;padding:0.5em 0}.box p.ruled:last-child{border:none}.box label{color:#888;width:12em;display:inline-block}.box span.uri{color:#39c}.box:last-child{margin:0}.box#preferences img.avatar{float:right;margin:10px 0px;z-index:100}textarea{border:1px solid #cdc295;font-family:Monaco,"Courier New",Courier,monospace;font-size:95%}textarea.large{height:280px}p.updated_line{background-color:inherit;font-size:80%;text-shadow:0px 0px 20px rgba(255,255,255,0.1);margin-bottom:0}body.reversed #content form p label{color:#f5f5f5;font-weight:normal;text-shadow:1px 1px 0 #888}body.reversed #content form p label .hint{display:inline}body.reversed #content form .hint{color:#d0d0d0;text-shadow:none}body.reversed #content form .buttons{background:#d8d8d8;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #cccccc));background-image:-webkit-linear-gradient(top, #ffffff,#cccccc);background-image:-moz-linear-gradient(top, #ffffff,#cccccc);background-image:-o-linear-gradient(top, #ffffff,#cccccc);background-image:linear-gradient(top, #ffffff,#cccccc);-webkit-border-radius:8px;-moz-border-radius:8px;-ms-border-radius:8px;-o-border-radius:8px;border-radius:8px;-webkit-box-shadow:2px 2px 3px rgba(0,0,0,0.15);-moz-box-shadow:2px 2px 3px rgba(0,0,0,0.15);box-shadow:2px 2px 3px rgba(0,0,0,0.15);padding:12px 10px}body.reversed #content form fieldset{background:#858585;padding:20px 15px;margin-bottom:20px;overflow:hidden;-webkit-box-shadow:1px 1px 0 #ababab;-moz-box-shadow:1px 1px 0 #ababab;box-shadow:1px 1px 0 #ababab;-webkit-border-radius:8px;-moz-border-radius:8px;-ms-border-radius:8px;-o-border-radius:8px;border-radius:8px}body.reversed #content form fieldset h3{font-weight:bold;font-size:120%;margin:-20px -20px 0 -20px;padding:15px 20px 0 20px;text-shadow:0px 0px 20px rgba(255,255,255,0.1)}body.reversed #content form fieldset p{margin-bottom:0}body.reversed #content p.updated_line{color:#eee}body.reversed #content textarea{border:1px solid #fff}body.reversed #content .box{-webkit-box-shadow:2px 2px 3px rgba(0,0,0,0.15);-moz-box-shadow:2px 2px 3px rgba(0,0,0,0.15);box-shadow:2px 2px 3px rgba(0,0,0,0.15)}body.single_form #content #single_form{background:#f5f1e2;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fdfcf9), color-stop(25%, #f5f1e2), color-stop(100%, #f5f1e2));background-image:-webkit-linear-gradient(top, #fdfcf9,#f5f1e2 25%,#f5f1e2);background-image:-moz-linear-gradient(top, #fdfcf9,#f5f1e2 25%,#f5f1e2);background-image:-o-linear-gradient(top, #fdfcf9,#f5f1e2 25%,#f5f1e2);background-image:linear-gradient(top, #fdfcf9,#f5f1e2 25%,#f5f1e2);border:0.35em solid #efead3;padding:0.5em 1.5em;padding-right:22px;position:relative;width:28em;-webkit-border-radius:6px;-moz-border-radius:6px;-ms-border-radius:6px;-o-border-radius:6px;border-radius:6px}body.single_form #content #single_form h1{font-size:140%;margin:0.75em 0 1.25em}body.single_form #content #single_form p{font-size:90%}body.single_form #content #single_form p.intro,body.single_form #content #single_form p.error{font-size:100%;line-height:1.4}body.single_form #content #single_form p.error{color:#c00}body.single_form #content #single_form p label{font-size:105%}body.single_form #content #single_form p label.checkbox{font-size:90%}body.single_form #content #single_form ul{font-size:90%;list-style:disc;padding-left:2em}body.single_form #content #single_form ul li{margin-bottom:0.5em}body.single_form #content #single_form input.textbox{width:98.5%}body.single_form #content #single_form span.remember_me{color:#333;font-size:95%;margin-left:1em}body.single_form #content #single_form span.remember_me label{margin:0}body.single_form #content #single_form span.remember_me a{margin:0;color:#06c;text-decoration:underline}body.single_form #content #single_form span.remember_me a:hover{text-decoration:none}body.single_form #content #single_form span.forgot_password{position:relative;top:-3px;margin:0 1em}body.single_form #content #single_form span.forgot_password a{color:#06c;text-decoration:underline}body.single_form #content #single_form span.forgot_password a:hover{text-decoration:none}body.single_form #content #single_form .buttons{margin:1.75em 0 1em}body.single_form #content p.version{background:url('../../images/admin/single_form_shadow.png?1399550568') top center no-repeat;color:#666;font-size:80%;padding-top:10px;margin-top:0}body.edit_user #avatar,body.edit_personal_preferences #avatar{left:26em;position:absolute;text-align:center;width:102px}body.edit_user #avatar p.caption,body.edit_personal_preferences #avatar p.caption{font-size:70%;color:#e5e5e5;line-height:1.3}table.index{font-size:90%;margin-bottom:2em;width:100%;border-bottom:1px solid #fff}table.index th{text-align:left;background-color:#9e9e9e;color:#fff;font-size:90%;font-weight:normal;padding:2px 9px}table.index th.actions{padding-left:15px;min-width:18em}table.index th.name{width:100%}table.index th.status{min-width:8em}table.index td{text-align:left;padding:4px 9px;border-top:1px solid #f0f0f0}table.index td a.action,table.index td span.action.disabled{padding:6px;margin:0 25px 0 1px}table.index td a.action img,table.index td span.action.disabled img{vertical-align:-18%}table.index td a.action{color:#000;text-decoration:none}table.index td a.action:hover{background:#d8d8d8;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #cccccc));background-image:-webkit-linear-gradient(top, #ffffff,#cccccc);background-image:-moz-linear-gradient(top, #ffffff,#cccccc);background-image:-o-linear-gradient(top, #ffffff,#cccccc);background-image:linear-gradient(top, #ffffff,#cccccc);border:1px solid #a5c9df;margin:0 24px 0 0;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px}table.index td a.action.selected{background:#c5e0f5;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5f5ff), color-stop(100%, #c5e0ff));background-image:-webkit-linear-gradient(top, #e5f5ff,#c5e0ff);background-image:-moz-linear-gradient(top, #e5f5ff,#c5e0ff);background-image:-o-linear-gradient(top, #e5f5ff,#c5e0ff);background-image:linear-gradient(top, #e5f5ff,#c5e0ff);border:1px solid #a5c9df;margin:0 24px 0 0;-moz-border-radius-topleft:5px;-webkit-border-top-left-radius:5px;border-top-left-radius:5px;-moz-border-radius-topright:5px;-webkit-border-top-right-radius:5px;border-top-right-radius:5px;-moz-border-radius-bottomleft:0;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0}table.index td span.action.disabled{color:#ccc}table.index td.empty{color:silver;font-size:85%;font-style:italic;padding:3em;text-align:center}table.index td.name{font-size:115%;font-weight:bold}table.index td.name img{vertical-align:center}table.index td.name a{color:#000;text-decoration:none}table.index td.name a:hover{color:#06c;text-decoration:underline}table.index td.actions{font-size:85%;white-space:nowrap}table.index tr:first-child{border-top:1px solid #fff}table.index tr.hover td,table.index tr:hover td{border-top:1px solid #d5f0ff;border-bottom:1px solid #c5dff5;background:#c5dff5;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5f5ff), color-stop(100%, #c5dff5));background-image:-webkit-linear-gradient(top, #e5f5ff,#c5dff5);background-image:-moz-linear-gradient(top, #e5f5ff,#c5dff5);background-image:-o-linear-gradient(top, #e5f5ff,#c5dff5);background-image:linear-gradient(top, #e5f5ff,#c5dff5)}table.index thead tr,table.index thead tr:first-child{border-top:none}table.index#pages tr.page.level_0 td.name{font-size:120%;font-weight:bold}table.index#pages tr.page.level_1 td.name{font-size:115%;font-weight:bold}table.index#pages tr.page.level_2 td.name{font-size:115%}table.index#pages tr.page.level_3 td.name{font-size:105%}table.index#pages td.name{font-size:105%}table.index#pages td.name a{text-decoration:none}table.index#pages td.name a .title{color:#000;text-decoration:none}table.index#pages td.name a:hover .title{color:#06c;text-decoration:underline}table.index#pages td.name .info{color:#9eb3bf;font-style:italic;font-weight:normal;font-size:90%}table.index#pages tr.page.virtual td.name a .title{color:#9eb3bf}table.index#pages td.name .w1{position:relative}table.index#pages td.name .w1 img.expander{left:-25px;position:absolute;padding:6px 3px}table.index#pages td.status{font-size:80%}.status a{color:#333;text-decoration:none}.status a:hover{text-decoration:underline;color:#06c}.draft_status{color:#fff;background:#cc494c;display:block;padding:0 6px;width:5em;text-align:center;-webkit-border-radius:100px;-moz-border-radius:100px;-ms-border-radius:100px;-o-border-radius:100px;border-radius:100px}.hidden_status{color:#fff;background:#9eb3bf;display:block;padding:0 6px;width:5em;text-align:center;-webkit-border-radius:100px;-moz-border-radius:100px;-ms-border-radius:100px;-o-border-radius:100px;border-radius:100px}table.index#users td.name{padding-top:8px;padding-bottom:8px}table.index#users td.name img.avatar{margin-right:4px;vertical-align:center}table.index#users td.name .login{color:#9eb3bf;font-size:90%;font-style:italic;font-weight:normal}#main{float:left;width:100%}#content{font-size:95%;line-height:1.2em;padding:20px}.outset{margin:-20px;margin-bottom:20px}table.fieldset th{padding:6px}table.fieldset td.field textarea{width:99.5%;margin-right:-5px}body.reversed h1{border-bottom:1px solid #ababab;background:#7e7e7e;font-size:125%;margin:-20px -20px 20px;padding:15px 20px;text-shadow:0px 0px 20px rgba(255,255,255,0.1)}.fullcover{position:absolute;width:100%;height:100%;top:0;right:0;bottom:0;left:0}.clipped{overflow:hidden}.grey_out{background:#666;background:rgba(0,0,0,0.7)}#preview_panel{background:#fff}.preview_tools{color:#000;position:fixed;top:10px;right:20px;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=70);opacity:0.7;background:#d8d8d8;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #cccccc));background-image:-webkit-linear-gradient(top, #ffffff,#cccccc);background-image:-moz-linear-gradient(top, #ffffff,#cccccc);background-image:-o-linear-gradient(top, #ffffff,#cccccc);background-image:linear-gradient(top, #ffffff,#cccccc);-webkit-border-radius:8px;-moz-border-radius:8px;-ms-border-radius:8px;-o-border-radius:8px;border-radius:8px;-webkit-box-shadow:2px 2px 3px rgba(0,0,0,0.15);-moz-box-shadow:2px 2px 3px rgba(0,0,0,0.15);box-shadow:2px 2px 3px rgba(0,0,0,0.15);padding:12px 10px}.preview_tools:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.preview_tools a{color:red;text-decoration:underline}.preview_tools a:hover{text-decoration:none}#actions{position:fixed;left:0;right:0;bottom:0;background:#777;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #555555), color-stop(33.33333%, #666666), color-stop(66.66667%, #777777), color-stop(100%, #777777));background-image:-webkit-linear-gradient(top, #555555,#666666,#777777,#777777);background-image:-moz-linear-gradient(top, #555555,#666666,#777777,#777777);background-image:-o-linear-gradient(top, #555555,#666666,#777777,#777777);background-image:linear-gradient(top, #555555,#666666,#777777,#777777)}#actions ul{padding:14px 8px}#actions li{display:inline;margin-right:5px}#actions .pagination{position:relative;overflow:hidden;float:right;margin-right:24px;padding:0 5px 5px 0}#actions .pagination a,#actions .pagination span.current,#actions .pagination span.disabled{display:block;float:left;padding:6px 12px 6px 12px;margin-right:1px;background:#ddd;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c5c5c5), color-stop(20%, #f0f0f0), color-stop(35%, #ffffff), color-stop(100%, #ffffff));background-image:-webkit-linear-gradient(top, #c5c5c5,#f0f0f0 20%,#ffffff 35%,#ffffff);background-image:-moz-linear-gradient(top, #c5c5c5,#f0f0f0 20%,#ffffff 35%,#ffffff);background-image:-o-linear-gradient(top, #c5c5c5,#f0f0f0 20%,#ffffff 35%,#ffffff);background-image:linear-gradient(top, #c5c5c5,#f0f0f0 20%,#ffffff 35%,#ffffff);color:#999;font-size:80%;text-decoration:none;-moz-border-radius-bottomleft:5px;-webkit-border-bottom-left-radius:5px;border-bottom-left-radius:5px;-moz-border-radius-bottomright:5px;-webkit-border-bottom-right-radius:5px;border-bottom-right-radius:5px;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}#actions .pagination a{text-shadow:1px 1px 1px #eee}#actions .pagination a:hover{background:#d8d8d8;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(50%, #ffffff), color-stop(100%, #dddddd));background-image:-webkit-linear-gradient(top, #ffffff,#ffffff,#dddddd);background-image:-moz-linear-gradient(top, #ffffff,#ffffff,#dddddd);background-image:-o-linear-gradient(top, #ffffff,#ffffff,#dddddd);background-image:linear-gradient(top, #ffffff,#ffffff,#dddddd);color:#0076a3;-webkit-box-shadow:1px 2px 3px #555;-moz-box-shadow:1px 2px 3px #555;box-shadow:1px 2px 3px #555}#actions .pagination a:active{color:#000;-webkit-box-shadow:0 0 0 #555;-moz-box-shadow:0 0 0 #555;box-shadow:0 0 0 #555}#actions .pagination span.disabled{color:#666;background-color:#999;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #888888), color-stop(33.33333%, #999999), color-stop(66.66667%, #999999), color-stop(100%, #999999));background-image:-webkit-linear-gradient(top, #888888,#999999,#999999,#999999);background-image:-moz-linear-gradient(top, #888888,#999999,#999999,#999999);background-image:-o-linear-gradient(top, #888888,#999999,#999999,#999999);background-image:linear-gradient(top, #888888,#999999,#999999,#999999)}#actions .pagination span.current{color:#000;background:#fff;font-weight:bold;background-image:none;-webkit-box-shadow:1px 2px 3px #555;-moz-box-shadow:1px 2px 3px #555;box-shadow:1px 2px 3px #555}#actions .pagination span.gap{display:block;float:left;padding:6px;color:#ccc}#actions .depaginate{float:right;padding:6px 12px}#actions .depaginate a{-webkit-box-shadow:0 0 0 #555;-moz-box-shadow:0 0 0 #555;box-shadow:0 0 0 #555;background:none;font-size:80%;color:#ccc;text-shadow:none;text-decoration:none}#actions .depaginate a:hover{color:#fff}.button_form{display:inline}.action_button{display:inline;background:#d8d8d8;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #cccccc));background-image:-webkit-linear-gradient(top, #ffffff,#cccccc);background-image:-moz-linear-gradient(top, #ffffff,#cccccc);background-image:-o-linear-gradient(top, #ffffff,#cccccc);background-image:linear-gradient(top, #ffffff,#cccccc);color:#333;font-size:80%;padding:8px 12px;text-decoration:none;text-shadow:1px 1px 1px #eee;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px;-webkit-box-shadow:1px 2px 3px #555;-moz-box-shadow:1px 2px 3px #555;box-shadow:1px 2px 3px #555}.action_button:hover{color:#0076a3;text-shadow:1px 1px 1px #fff}.action_button:active{background:#fff;-webkit-box-shadow:0 0 0 #555;-moz-box-shadow:0 0 0 #555;box-shadow:0 0 0 #555;color:#000}.action_button img{vertical-align:-20%}#footer{color:#999;background-color:#f7f7f7;border-top:1px solid #eaeaea;font-size:80%;float:left;padding-top:20px;padding-bottom:20px;width:100%}#footer p{padding-left:20px;padding-right:20px}div.popup{color:#333;background-color:#fff;border:1px solid #777;padding:10px 20px}div.popup strong{font-weight:bold}div.popup em{font-style:italic}div.popup .busy{float:right;margin-top:9px}div.popup .popup_title{background:#c5dff5;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5f5ff), color-stop(100%, #c5dff5));background-image:-webkit-linear-gradient(top, #e5f5ff,#c5dff5);background-image:-moz-linear-gradient(top, #e5f5ff,#c5dff5);background-image:-o-linear-gradient(top, #e5f5ff,#c5dff5);background-image:linear-gradient(top, #e5f5ff,#c5dff5);border-bottom:1px solid #a7cdf0;cursor:move;font-weight:bold;font-size:100%;margin:-10px -20px 20px -20px;padding:6px 10px}div.popup p.intro{font-size:90%}div.popup label{display:block;font-size:85%}div.popup label.inline{display:inline}div.popup label span.hint{font-size:90%;color:#666}div.popup input.button{font-size:120%}div.popup .viewport{background:#fff;border:1px solid #ddd;border-top:1px solid #ccc;border-left:1px solid #ccc;-webkit-box-shadow:1px 1px 0 #fff;-moz-box-shadow:1px 1px 0 #fff;box-shadow:1px 1px 0 #fff;margin:1em 0;overflow:auto}div.popup .viewport table.index{margin:-1px 0 0}div.popup .buttons{border-top:1px solid #e5e5e5;background:#f5f5f5;font-size:85%;margin:1.5em -20px -10px;padding:10px;text-align:right}div.popup .buttons input.button{font-size:120%}div.popup .buttons button{font-size:110%;padding:4px 15px 5px;background:#f5f5f5;border:1px solid #959595;-webkit-border-radius:100px;-moz-border-radius:100px;-ms-border-radius:100px;-o-border-radius:100px;border-radius:100px;-webkit-box-shadow:0 2px 0 inset #fff;-moz-box-shadow:0 2px 0 inset #fff;box-shadow:0 2px 0 inset #fff;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #dddddd), color-stop(15%, #eeeeee), color-stop(100%, #ffffff));background-image:-webkit-linear-gradient(top, #dddddd 0%,#eeeeee 15%,#ffffff 100%);background-image:-moz-linear-gradient(top, #dddddd 0%,#eeeeee 15%,#ffffff 100%);background-image:-o-linear-gradient(top, #dddddd 0%,#eeeeee 15%,#ffffff 100%);background-image:linear-gradient(top, #dddddd 0%,#eeeeee 15%,#ffffff 100%)}div.popup .buttons button.default{border:1px solid #154ca6;-webkit-box-shadow:0 2px 1px inset #c7e0f6;-moz-box-shadow:0 2px 1px inset #c7e0f6;box-shadow:0 2px 1px inset #c7e0f6;color:#fff;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #67b4e1), color-stop(100%, #78b9e1));background-image:-webkit-linear-gradient(top, #67b4e1,#78b9e1);background-image:-moz-linear-gradient(top, #67b4e1,#78b9e1);background-image:-o-linear-gradient(top, #67b4e1,#78b9e1);background-image:linear-gradient(top, #67b4e1,#78b9e1)}div.popup .buttons button:active{border:1px solid #888;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #cccccc), color-stop(15%, #dddddd), color-stop(100%, #eeeeee));background-image:-webkit-linear-gradient(top, #cccccc 0%,#dddddd 15%,#eeeeee 100%);background-image:-moz-linear-gradient(top, #cccccc 0%,#dddddd 15%,#eeeeee 100%);background-image:-o-linear-gradient(top, #cccccc 0%,#dddddd 15%,#eeeeee 100%);background-image:linear-gradient(top, #cccccc 0%,#dddddd 15%,#eeeeee 100%)}div.popup .buttons button.default:active{border:1px solid #002c86;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4794c1), color-stop(100%, #78b9e1));background-image:-webkit-linear-gradient(top, #4794c1,#78b9e1);background-image:-moz-linear-gradient(top, #4794c1,#78b9e1);background-image:-o-linear-gradient(top, #4794c1,#78b9e1);background-image:linear-gradient(top, #4794c1,#78b9e1)}div.popup .buttons button:focus{border-width:2px}div.popup .buttons a.cancel{color:red}div.popup .tag_description,div.popup .snippet_description{border-bottom:1px dotted silver;font-size:95%;padding:6px 0}div.popup .tag_description h4,div.popup .snippet_description h4{color:green;font-size:120%;margin-top:0;margin-bottom:8px}div.popup .tag_description code,div.popup .snippet_description code{background-color:#f5f5f5;color:#666;font-family:Monaco,"Courier New",Courier,monospace;padding-top:1px;padding-bottom:1px}div.popup .tag_description pre,div.popup .snippet_description pre{background-color:#f5f5f5;border:1px solid #ddd;color:#666;font-family:Monaco,"Courier New",Courier,monospace;overflow:hidden;padding:10px}div.popup .reference{font-size:90%;border:1px solid silver;overflow:auto;overflow-y:auto;overflow-x:hidden;line-height:140%;padding:12px;padding-top:1px;height:300px;width:40em}div.popup .reference code{background-color:#f5f5f5;color:#666;font-family:Monaco,"Courier New",Courier,monospace;padding-top:1px;padding-bottom:1px}div.popup .reference pre{background-color:#f5f5f5;border:1px solid #ddd;color:#666;font-family:Monaco,"Courier New",Courier,monospace;overflow:auto;padding:10px}div.popup .reference table{width:100%}div.popup .reference table th{color:green;font-size:120%;padding:5px;padding-left:0;padding-right:0}div.popup .reference table td{border-bottom:1px dotted silver;padding-top:8px;padding-bottom:8px;text-align:left}div.popup .reference table h1{color:#000;margin:0;margin-bottom:0.5em}div.popup .reference table acronym{border-bottom:1px dotted silver}div.popup .reference table blockquote{border-left:4px solid silver;padding-left:1em;padding-right:1em;margin:0;margin-top:1em;margin-bottom:1em}div.popup .close_link{font-size:85%;text-align:center}.tag{color:green;cursor:pointer;font-size:120%;margin-top:0;margin-bottom:8px}.tag_options{margin-left:1em}.tag_options li{margin-bottom:8px}.tag_option_value_list{margin-left:1em}.tag_option_value_list li{display:inline}.tag_option_value_list li:last-child{border:none}.tag_option_value_list li code{padding-left:0.3em;padding-right:0.3em}.tag_option_value_list li code:hover{background:#666;color:#fff}div.popup .reference table th{border-bottom:1px dotted silver;padding-top:8px;padding-bottom:8px;text-align:left}div.popup .reference table h2,div.popup .reference table h3,div.popup .reference table h4{color:#000;margin:0;margin-bottom:0.5em}div.popup.textured{background:#eee}div.popup.textured .head{background:#fff;padding:10px 20px;margin:-20px -20px 20px;border-bottom:1px solid #ccc;-webkit-box-shadow:0 1px 0 #fff;-moz-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff}div.popup.textured .buttons{border-top:1px solid #fff;margin:20px -20px -10px;padding:20px;-webkit-box-shadow:0 -1px 0 #ccc;-moz-box-shadow:0 -1px 0 #ccc;box-shadow:0 -1px 0 #ccc}#tab_control{color:#333;margin-bottom:1em}#tab_control .tabs{float:left;width:100%;margin-right:-4px}#tab_control .tabs .tab{background-color:#cac8c0;color:#7f7f7f;display:inline-block;font-size:90%;text-align:left;margin-right:5px;padding:8px 15px 5px;text-decoration:none;text-transform:titlecase;-moz-border-radius-topleft:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-topright:6px;-webkit-border-top-right-radius:6px;border-top-right-radius:6px}#tab_control .tabs .tab.here{background-color:#fff;color:#000;font-weight:bold}#tab_control .tabs .tab span:hover{color:#000}#tab_control .tabs .tab .close{margin-top:-4px;margin-left:5px;margin-right:-5px}#tab_control .pages{background:#fff;width:100%;clear:both}#tab_control .pages .page{background:#fff;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(15%, #f5f1e2), color-stop(100%, #f5f1e2));background-image:-webkit-linear-gradient(top, #ffffff,#f5f1e2 15%,#f5f1e2);background-image:-moz-linear-gradient(top, #ffffff,#f5f1e2 15%,#f5f1e2);background-image:-o-linear-gradient(top, #ffffff,#f5f1e2 15%,#f5f1e2);background-image:linear-gradient(top, #ffffff,#f5f1e2 15%,#f5f1e2);-webkit-box-shadow:2px 2px 3px rgba(0,0,0,0.15);-moz-box-shadow:2px 2px 3px rgba(0,0,0,0.15);box-shadow:2px 2px 3px rgba(0,0,0,0.15);padding:12px 20px 20px}#tab_control .pages .page p{margin-top:0}#tab_control .pages .page label{display:inline;color:#333;font-weight:normal;font-size:80%;text-shadow:none}#tab_control .pages .reference_links{font-size:85%;margin-left:1em;float:right}#tab_control .pages .reference_links a{color:#06c}.tabs #tab_toolbar{float:right;overflow:hidden;margin-top:0.2em;padding:3px}.reference_links{font-size:85%}.reference_links span{padding:0 0 0 4px}.reference_links span a{color:#44e}#tag_reference_link{margin:0 0.5em}body.reversed #tab_control textarea{border:1px solid #ccc}input.date{background:#fff url('../../images/admin/calendar_down.gif?1399550568') right no-repeat;padding-right:26px;width:11em}.calendar_popup{-webkit-box-shadow:0px 0px 5px #333;-moz-box-shadow:0px 0px 5px #333;box-shadow:0px 0px 5px #333;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px;z-index:1000;border:1px solid #b2b2b2;background-color:#fff;padding:5px;line-height:140% !important}.calendar_popup a{-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px}.calendar_popup table.calendar{font-size:90%;margin:0 !important}.calendar_popup table.calendar tr.day_header th{border-top:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;color:#ccc;padding:2px}.calendar_popup table.calendar th,.calendar_popup table.calendar td{text-align:center}.calendar_popup table.calendar th.back,.calendar_popup table.calendar th.month_year,.calendar_popup table.calendar th.forward{padding-bottom:3px}.calendar_popup table.calendar td{height:1em;padding:3px !important;margin:0}.calendar_popup table.calendar td.today{-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px;background-color:#e5e5e5}.calendar_popup table.calendar td.today a{background-color:#fff}.calendar_popup table.calendar td.selected a{color:#fff;background-color:#d60}.calendar_popup table.calendar a{color:#000;display:block;font-family:"Lucida Grande","Bitstream Vera Sans",Helvetica,Verdana,Arial,sans-serif;text-decoration:none;text-align:center;width:2.25em;padding:0.2em 0}.calendar_popup table.calendar a:hover{color:#fff !important;background-color:#3257f4 !important}body.reversed .calendar_popup{border:1px solid #fff}.toolbar select{float:left}div.textarea_toolbar{float:left;margin-bottom:8px}div.textarea_toolbar span.separator{padding:0;height:6px;width:2px;margin:0 2px;border-left:solid 1px #d5d5d5;border-right:solid 1px #f5f5f5}div.textarea_toolbar button,div.textarea_toolbar button.unselected{margin:0;background:none;border:none;padding:2px 0;text-align:center;width:24px}div.textarea_toolbar button img,div.textarea_toolbar button.unselected img{vertical-align:text-bottom}div.textarea_toolbar button:hover,div.textarea_toolbar button.unselected:hover{border:1px solid #999;padding:1px 0}div.textarea_toolbar button.selected{border:1px solid #ce9100;background-color:#fff;padding:1px 0}#content span.error-with-field input,#content span.error-with-field select{background:#f3c2c2}#content span.error{line-height:1.4;background-color:#c00;color:#fff;padding:3px 6px;margin:0 0 0 6px;background-color:#b30000;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px;-webkit-box-shadow:0px 0px 5px #333;-moz-box-shadow:0px 0px 5px #333;box-shadow:0px 0px 5px #333}#content span.error a.closer{margin-left:10px;color:#fcc;text-decoration:none}table.index td.note{color:silver;font-size:85%;font-style:italic;padding:3em;text-align:center}.row{clear:both;margin-top:20px;width:100%}.row p{float:left;margin:0 2em 1.25em 0;font-size:95%}.row p label{display:inline;text-shadow:#666 1px 1px 0}div.popup h3.title{background:#c5dff5;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5f5ff), color-stop(100%, #c5dff5));background-image:-webkit-linear-gradient(top, #e5f5ff,#c5dff5);background-image:-moz-linear-gradient(top, #e5f5ff,#c5dff5);background-image:-o-linear-gradient(top, #e5f5ff,#c5dff5);background-image:linear-gradient(top, #e5f5ff,#c5dff5);border-bottom:1px solid #a7cdf0;font-size:100%;margin:-10px -20px 20px -20px;padding:6px 10px}#actions a{background:#d8d8d8;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #cccccc));background-image:-webkit-linear-gradient(top, #ffffff,#cccccc);background-image:-moz-linear-gradient(top, #ffffff,#cccccc);background-image:-o-linear-gradient(top, #ffffff,#cccccc);background-image:linear-gradient(top, #ffffff,#cccccc);color:#333;font-size:80%;padding:8px 12px;text-decoration:none;text-shadow:1px 1px 1px #eee;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;-o-border-radius:5px;border-radius:5px;-webkit-box-shadow:1px 2px 3px #555;-moz-box-shadow:1px 2px 3px #555;box-shadow:1px 2px 3px #555}#actions a:hover{color:#0076a3;text-shadow:1px 1px 1px #fff}#actions a:active{background:#fff;-webkit-box-shadow:0 0 0 #555;-moz-box-shadow:0 0 0 #555;box-shadow:0 0 0 #555;color:#000}#actions a img{vertical-align:-20%}
|
|
File without changes
|
data/spec/ci/database.mysql.yml
CHANGED