alchemy_kono_mailup 0.0.1
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 +7 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +3 -0
- data/Rakefile +26 -0
- data/app/assets/images/alchemy_kono_mailup/.keep +0 -0
- data/app/assets/javascripts/alchemy_kono_mailup/application.js +13 -0
- data/app/assets/stylesheets/alchemy_kono_mailup/application.css +15 -0
- data/app/controllers/alchemy/admin/essence_mailup_lists_controller.rb +22 -0
- data/app/controllers/alchemy_kono_mailup/admin/base_controller.rb +5 -0
- data/app/controllers/alchemy_kono_mailup/admin/mailup_configs_controller.rb +13 -0
- data/app/controllers/alchemy_kono_mailup/admin/tokens_controller.rb +16 -0
- data/app/helpers/alchemy_kono_mailup/application_helper.rb +22 -0
- data/app/models/alchemy/essence_mailup_list.rb +4 -0
- data/app/models/alchemy_kono_mailup/base_subscription_form.rb +11 -0
- data/app/models/alchemy_kono_mailup/mailup_config.rb +6 -0
- data/app/views/alchemy/essences/_essence_mailup_list_editor.html.erb +11 -0
- data/app/views/alchemy/essences/_essence_mailup_list_view.html.erb +3 -0
- data/app/views/alchemy_kono_mailup/admin/mailup_configs/main.html.erb +19 -0
- data/app/views/layouts/alchemy_kono_mailup/application.html.erb +14 -0
- data/config/initializers/alchemy.rb +26 -0
- data/config/initializers/kono_mailup.rb +9 -0
- data/config/routes.rb +21 -0
- data/db/migrate/20171127105007_create_alchemy_kono_mailup_alchemy_essence_mailup_lists.rb +13 -0
- data/lib/alchemy_kono_mailup.rb +21 -0
- data/lib/alchemy_kono_mailup/ability.rb +58 -0
- data/lib/alchemy_kono_mailup/engine.rb +22 -0
- data/lib/alchemy_kono_mailup/version.rb +3 -0
- data/lib/generators/alchemy_kono_mailup/install/USAGE +9 -0
- data/lib/generators/alchemy_kono_mailup/install/install_generator.rb +20 -0
- data/lib/generators/alchemy_kono_mailup/install/templates/initializers.rb +4 -0
- data/lib/generators/alchemy_kono_mailup/subscription_form/USAGE +7 -0
- data/lib/generators/alchemy_kono_mailup/subscription_form/subscription_form_generator.rb +75 -0
- data/lib/generators/alchemy_kono_mailup/subscription_form/templates/form_controller.rb.erb +70 -0
- data/lib/generators/alchemy_kono_mailup/subscription_form/templates/form_model.rb.erb +5 -0
- data/lib/generators/alchemy_kono_mailup/subscription_form/templates/form_view.html.erb +29 -0
- data/lib/tasks/alchemy_kono_mailup_tasks.rake +4 -0
- data/spec/dummy/README.rdoc +28 -0
- data/spec/dummy/Rakefile +6 -0
- data/spec/dummy/app/assets/images/.keep +0 -0
- data/spec/dummy/app/assets/javascripts/application.js +13 -0
- data/spec/dummy/app/assets/stylesheets/alchemy/elements/article.scss +30 -0
- data/spec/dummy/app/assets/stylesheets/application.css +16 -0
- data/spec/dummy/app/controllers/application_controller.rb +5 -0
- data/spec/dummy/app/controllers/concerns/.keep +0 -0
- data/spec/dummy/app/controllers/mailup_subscription_forms_controller.rb +73 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/mailers/.keep +0 -0
- data/spec/dummy/app/models/.keep +0 -0
- data/spec/dummy/app/models/concerns/.keep +0 -0
- data/spec/dummy/app/models/mailup_subscription_form.rb +7 -0
- data/spec/dummy/app/views/alchemy/elements/_article_editor.html.erb +5 -0
- data/spec/dummy/app/views/alchemy/elements/_article_view.html.erb +7 -0
- data/spec/dummy/app/views/alchemy/elements/_mailup_subscription_editor.html.erb +3 -0
- data/spec/dummy/app/views/alchemy/elements/_mailup_subscription_view.html.erb +27 -0
- data/spec/dummy/app/views/alchemy/page_layouts/_standard.html.erb +1 -0
- data/spec/dummy/app/views/layouts/application.html.erb +16 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/bin/setup +29 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/alchemy/config.yml +194 -0
- data/spec/dummy/config/alchemy/elements.yml +27 -0
- data/spec/dummy/config/alchemy/page_layouts.yml +8 -0
- data/spec/dummy/config/application.rb +32 -0
- data/spec/dummy/config/boot.rb +5 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +41 -0
- data/spec/dummy/config/environments/production.rb +79 -0
- data/spec/dummy/config/environments/test.rb +42 -0
- data/spec/dummy/config/initializers/assets.rb +11 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
- data/spec/dummy/config/initializers/devise.rb +265 -0
- data/spec/dummy/config/initializers/dragonfly.rb +35 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/inflections.rb +16 -0
- data/spec/dummy/config/initializers/kono_mailup.rb +13 -0
- data/spec/dummy/config/initializers/mime_types.rb +4 -0
- data/spec/dummy/config/initializers/session_store.rb +3 -0
- data/spec/dummy/config/initializers/to_time_preserves_timezone.rb +10 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/alchemy.de.yml +31 -0
- data/spec/dummy/config/locales/alchemy.en.yml +31 -0
- data/spec/dummy/config/locales/alchemy.es.yml +31 -0
- data/spec/dummy/config/locales/en.yml +23 -0
- data/spec/dummy/config/routes.rb +9 -0
- data/spec/dummy/config/secrets_example.yml +24 -0
- data/spec/dummy/db/migrate/20171124145455_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb +36 -0
- data/spec/dummy/db/migrate/20171124145456_add_missing_unique_indices.acts_as_taggable_on_engine.rb +26 -0
- data/spec/dummy/db/migrate/20171124145457_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb +20 -0
- data/spec/dummy/db/migrate/20171124145458_add_missing_taggable_index.acts_as_taggable_on_engine.rb +15 -0
- data/spec/dummy/db/migrate/20171124145459_change_collation_for_tag_names.acts_as_taggable_on_engine.rb +15 -0
- data/spec/dummy/db/migrate/20171124145460_add_missing_indexes_on_taggings.acts_as_taggable_on_engine.rb +23 -0
- data/spec/dummy/db/migrate/20171124145461_alchemy_two_point_six.alchemy.rb +379 -0
- data/spec/dummy/db/migrate/20171124145462_remove_do_not_index_from_alchemy_essence_texts.alchemy.rb +6 -0
- data/spec/dummy/db/migrate/20171124145463_remove_do_not_index_from_alchemy_essence_richtexts.alchemy.rb +6 -0
- data/spec/dummy/db/migrate/20171124145464_add_published_at_to_alchemy_pages.alchemy.rb +6 -0
- data/spec/dummy/db/migrate/20171124145465_add_parent_element_id_to_alchemy_elements.alchemy.rb +7 -0
- data/spec/dummy/db/migrate/20171124145466_add_link_text_to_alchemy_essence_files.alchemy.rb +6 -0
- data/spec/dummy/db/migrate/20171124145467_add_locale_to_alchemy_languages.alchemy.rb +8 -0
- data/spec/dummy/db/migrate/20171124145468_add_timebased_publishing_columns_to_pages.alchemy.rb +33 -0
- data/spec/dummy/db/migrate/20171124145469_add_image_file_format_to_alchemy_pictures.alchemy.rb +10 -0
- data/spec/dummy/db/migrate/20171124145470_change_alchemy_pages_locked_to_locked_at.alchemy.rb +23 -0
- data/spec/dummy/db/migrate/20171124145471_add_index_to_alchemy_pages_rgt.alchemy.rb +10 -0
- data/spec/dummy/db/migrate/20171124145472_add_foreign_key_indices_and_null_constraints.alchemy.rb +21 -0
- data/spec/dummy/db/migrate/20171124145473_add_foreign_keys.alchemy.rb +28 -0
- data/spec/dummy/db/migrate/20171124145474_create_alchemy_users.alchemy_devise.rb +34 -0
- data/spec/dummy/db/migrate/20171124145475_add_alchemy_roles_to_alchemy_users.alchemy_devise.rb +23 -0
- data/spec/dummy/db/migrate/20171124145476_add_indexes_to_alchemy_users.alchemy_devise.rb +12 -0
- data/spec/dummy/db/migrate/20171124145629_create_settings.kono_mailup.rb +18 -0
- data/spec/dummy/db/migrate/20171127115017_create_alchemy_kono_mailup_alchemy_essence_mailup_lists.alchemy_kono_mailup.rb +14 -0
- data/spec/dummy/db/schema.rb +351 -0
- data/spec/dummy/db/seeds.rb +1 -0
- data/spec/dummy/lib/assets/.keep +0 -0
- data/spec/dummy/log/.keep +0 -0
- data/spec/dummy/public/404.html +67 -0
- data/spec/dummy/public/422.html +67 -0
- data/spec/dummy/public/500.html +66 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/vendor/assets/javascripts/alchemy/admin/all.js +11 -0
- data/spec/dummy/vendor/assets/stylesheets/alchemy/admin/all.css +12 -0
- data/spec/models/alchemy_kono_mailup/alchemy/essence_mailup_list_spec.rb +7 -0
- metadata +393 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
|
2
|
+
|
|
3
|
+
# Add new inflection rules using the following format. Inflections
|
|
4
|
+
# are locale specific, and you may define rules for as many different
|
|
5
|
+
# locales as you wish. All of these examples are active by default:
|
|
6
|
+
# ActiveSupport::Inflector.inflections(:en) do |inflect|
|
|
7
|
+
# inflect.plural /^(ox)$/i, '\1en'
|
|
8
|
+
# inflect.singular /^(ox)en/i, '\1'
|
|
9
|
+
# inflect.irregular 'person', 'people'
|
|
10
|
+
# inflect.uncountable %w( fish sheep )
|
|
11
|
+
# end
|
|
12
|
+
|
|
13
|
+
# These inflection rules are supported but not enabled by default:
|
|
14
|
+
# ActiveSupport::Inflector.inflections(:en) do |inflect|
|
|
15
|
+
# inflect.acronym 'RESTful'
|
|
16
|
+
# end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Utilizza questo file per configurare l'engine
|
|
2
|
+
KonoMailup.setup do |config|
|
|
3
|
+
|
|
4
|
+
##
|
|
5
|
+
# MAILUP_CLIENT_ID
|
|
6
|
+
config.mailup_client_id = Rails.application.secrets.kono_mailup[:mailup_client_id]
|
|
7
|
+
|
|
8
|
+
##
|
|
9
|
+
# MAILUP_CLIENT_SECRET
|
|
10
|
+
config.mailup_client_secret = Rails.application.secrets.kono_mailup[:mailup_client_secret]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
|
2
|
+
|
|
3
|
+
# Preserve the timezone of the receiver when calling to `to_time`.
|
|
4
|
+
# Ruby 2.4 will change the behavior of `to_time` to preserve the timezone
|
|
5
|
+
# when converting to an instance of `Time` instead of the previous behavior
|
|
6
|
+
# of converting to the local system timezone.
|
|
7
|
+
#
|
|
8
|
+
# Rails 5.0 introduced this config option so that apps made with earlier
|
|
9
|
+
# versions of Rails are not affected when upgrading.
|
|
10
|
+
ActiveSupport.to_time_preserves_timezone = true
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
|
2
|
+
|
|
3
|
+
# This file contains settings for ActionController::ParamsWrapper which
|
|
4
|
+
# is enabled by default.
|
|
5
|
+
|
|
6
|
+
# Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
|
|
7
|
+
ActiveSupport.on_load(:action_controller) do
|
|
8
|
+
wrap_parameters format: [:json] if respond_to?(:wrap_parameters)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# To enable root element in JSON for ActiveRecord objects.
|
|
12
|
+
# ActiveSupport.on_load(:active_record) do
|
|
13
|
+
# self.include_root_in_json = true
|
|
14
|
+
# end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
de:
|
|
2
|
+
alchemy:
|
|
3
|
+
|
|
4
|
+
# Translations for page layout names
|
|
5
|
+
page_layout_names:
|
|
6
|
+
index: Startseite
|
|
7
|
+
|
|
8
|
+
# Translations for element names
|
|
9
|
+
element_names:
|
|
10
|
+
article: Artikel
|
|
11
|
+
|
|
12
|
+
# Translations for content names
|
|
13
|
+
content_names:
|
|
14
|
+
headline: Überschrift
|
|
15
|
+
text: Text
|
|
16
|
+
picture: Bild
|
|
17
|
+
|
|
18
|
+
# Default texts for new contents created
|
|
19
|
+
default_content_texts:
|
|
20
|
+
article_headline: "Willkommen auf Ihrer Alchemy Seite"
|
|
21
|
+
article_text: '<p>Als erstes sollte man sich mit der Struktur von Alchemy vertraut machen. <a class="external" href="http://guides.alchemy-cms.com/stable/alchemy_approach.html" target="_blank" data-link-target="blank">Mehr dazu in den Guidelines</a>.</p><p>Die wichtigsten beiden Dinge die man über Alchemy wissen muss sind Elemente und Seitentypen.</p><p><span style="text-decoration: underline;"><strong>Elemente:</strong></span></p><p>Mit Alchemy kann man eine Seite in Inhaltsbereiche aufteilen, Elemente. Diese Elemente werden aus verschiedenen Grundtypen (Essenzen) zusammengesetzt. Die Essenzen sind:</p><ul><li>EssenceText - <em>Eine Zeile Text</em></li><li>EssenceRichtext - <em>Ein TinyMCE basierter formatierter Textblock</em></li><li>EssencePicture - <em>Ein Verweis auf ein Bild</em></li><li>EssenceHtml - <em>HTML Code</em></li><li>EssenceSelect - <em>Eine Auswahl an Werten</em></li><li>EssenceBoolean - <em>Eine Checkbox</em></li></ul><p>Elemente werden in einer YAML Datei definiert: <strong>config/alchemy/elements.yml</strong></p><p><a class="external" href="http://guides.alchemy-cms.com/stable/elements.html" target="_blank" data-link-target="blank">Mehr über Elemente und wie sie definiert werden, kann in den Guidelines nachgelesen werden.</a></p><p><span style="text-decoration: underline;"><strong>Seitentypen:</strong></span></p><p>Es können verschiedene Seitentypen definiert werden. Diesen können Elemente zugewiesen und ihr Verhalten definiert werden.</p><p>Seitentypen werden ein einer YAML Datei definiert: <strong>config/alchemy/page_layouts.yml</strong></p><p><a class="external" href="http://guides.alchemy-cms.com/stable/page_layouts.html" target="_blank" data-link-target="blank">Mehr über das Erstellen von Seitentypen kann in den Guidelines nachgelesen werden.</a></p>'
|
|
22
|
+
|
|
23
|
+
# Hint texts for elements
|
|
24
|
+
element_hints:
|
|
25
|
+
article: "Dies ist ein Hinweistext für das Artikel Element. Dieser Text kann in der `config/locales/alchemy.de.yml` Datei angepasst werden."
|
|
26
|
+
|
|
27
|
+
# Hint texts for contents
|
|
28
|
+
content_hints:
|
|
29
|
+
headline: "Dies ist ein einzeiliger unformatierter Text"
|
|
30
|
+
picture: "Bilder werden in der Bibliothek gespeichert. Ein Bild kann mehrfach einem Element zugewiesen werden. Auch ein Bildauswahlwerkzeug ist in Alchemy integriert."
|
|
31
|
+
text: "Dies ist ein formatierbarer Textblock. Die Einstellungen des Editors können angepasst werden. Siehe http://guides.alchemy-cms.com/stable/customize_tinymce.html"
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
en:
|
|
2
|
+
alchemy:
|
|
3
|
+
|
|
4
|
+
# Translations for page layout names
|
|
5
|
+
page_layout_names:
|
|
6
|
+
index: Homepage
|
|
7
|
+
|
|
8
|
+
# Translations for element names
|
|
9
|
+
element_names:
|
|
10
|
+
article: Article
|
|
11
|
+
|
|
12
|
+
# Translations for content names
|
|
13
|
+
content_names:
|
|
14
|
+
headline: Headline
|
|
15
|
+
text: Text
|
|
16
|
+
picture: Picture
|
|
17
|
+
|
|
18
|
+
# Default texts for new contents created
|
|
19
|
+
default_content_texts:
|
|
20
|
+
article_headline: "Welcome to your first Alchemy CMS page"
|
|
21
|
+
article_text: '<p><strong>How to get started.</strong></p><p>First of all you should read about Alchemy and its architecture in the <a class="external" href="http://guides.alchemy-cms.com/stable/alchemy_approach.html" target="_blank" data-link-target="blank">guidelines</a>.</p><p>The most important things to know about Alchemy are elements and page layouts.</p><p><span style="text-decoration: underline;"><strong>Elements:</strong></span></p><p>With Alchemy you can split pages into content parts, elements. These elements can be defined out of several base content types: essences. The basic essences are:</p><ul><li>EssenceText - <em>A single line of text</em></li><li>EssenceRichtext - <em>A TinyMCE powered formatted text block</em></li><li>EssencePicture - <em>A reference to an image</em></li><li>EssenceHtml - <em>HTML embed code</em></li><li>EssenceSelect - <em>A selection of values</em></li><li>EssenceBoolean - <em>A checkbox</em></li></ul><p>Elements get defined in a YAML file <strong>config/alchemy/elements.yml</strong></p><p><a class="external" href="http://guides.alchemy-cms.com/stable/elements.html" target="_blank" data-link-target="blank">Read more about elements and how to define them in the guidelines.</a></p><p><span style="text-decoration: underline;"><strong>Page types:</strong></span></p><p>You can define several types of pages, called page layouts. You can assign elements to page layouts and control how elements and the page of a certain layout behave.</p><p>Page layouts get defined in a YAML file <strong>config/alchemy/page_layouts.yml</strong></p><p><a class="external" href="http://guides.alchemy-cms.com/stable/page_layouts.html" target="_blank" data-link-target="blank">Read more about defining page layouts in the guidelines.</a></p>'
|
|
22
|
+
|
|
23
|
+
# Hint texts for elements
|
|
24
|
+
element_hints:
|
|
25
|
+
article: "This is a hint text for the article element. You can change this text in `config/locales/alchemy.en.yml`. Feel free to change it as you like, it's yours."
|
|
26
|
+
|
|
27
|
+
# Hint texts for contents
|
|
28
|
+
content_hints:
|
|
29
|
+
headline: "This is a single line of unformatable Text"
|
|
30
|
+
picture: "Pictures are stored in the library. You can assign a picture multiple times throughout your site. Alchemy has an image cropper build right in."
|
|
31
|
+
text: "This is a rich text block powered by TinyMCE editor. You can change the configuration of the editor. See http://guides.alchemy-cms.com/stable/customize_tinymce.html"
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
es:
|
|
2
|
+
alchemy:
|
|
3
|
+
|
|
4
|
+
# Translations for page layout names
|
|
5
|
+
page_layout_names:
|
|
6
|
+
index: Inicio
|
|
7
|
+
|
|
8
|
+
# Translations for element names
|
|
9
|
+
element_names:
|
|
10
|
+
article: Artículo
|
|
11
|
+
|
|
12
|
+
# Translations for content names
|
|
13
|
+
content_names:
|
|
14
|
+
headline: Titular
|
|
15
|
+
text: Texto
|
|
16
|
+
picture: Imagen
|
|
17
|
+
|
|
18
|
+
# Default texts for new contents created
|
|
19
|
+
default_content_texts:
|
|
20
|
+
article_headline: "Bienvenido a tu primera página de Alchemy CMS"
|
|
21
|
+
article_text: '<p><strong>Como empezar.</strong></p><p>Lo primero de todo deberías leer sobre Alchemy y su arquitectura en las <a class="external" href="http://guides.alchemy-cms.com/stable/alchemy_approach.html" target="_blank" data-link-target="blank">guías</a>.</p><p>Las cosas más importantes que debes saber sobre Alchemy son elementos (<i>elements</i>) y disposiciones de página (<i>page layouts</i>).</p><p><span style="text-decoration: underline;"><strong>Elementos:</strong></span></p><p>Con Alchemy puedes dividir las páginas en partes de contenido, elementos. Estos elementos se pueden definir mediante varios tipos de contenido básicos: esencias (<i>essences</i>). Las esencias básicas son:</p><ul><li>EssenceText - <em>Un única línea de texto</em></li><li>EssenceRichtext - <em>Un bloque de texto formateado mediante TinyMCE</em></li><li>EssencePicture - <em>Una referencia a una imagen</em></li><li>EssenceHtml - <em>Código HTML empotrado</em></li><li>EssenceSelect - <em>Una selección de valores</em></li><li>EssenceBoolean - <em>Una casilla de verificación</em></li></ul><p>Los elementos se definen en el fichero YAML <strong>config/alchemy/elements.yml</strong></p><p><a class="external" href="http://guides.alchemy-cms.com/stable/elements.html" target="_blank" data-link-target="blank">Lee más sobre elementos y cómo definirlos en las guías.</a></p><p><span style="text-decoration: underline;"><strong>Tipos de página:</strong></span></p><p>Puedes definir varios tipos de páginas, llamados disposiciones de páginas (<i>page layouts</i>). Puedes asignar elementos a las disposiciones de páginas y controlar cómo se comportan los elementos y una página con una disposición concreta.</p><p>Las disposiciones de páginas se definen en el fichero YAML <strong>config/alchemy/page_layouts.yml</strong></p><p><a class="external" href="http://guides.alchemy-cms.com/stable/page_layouts.html" target="_blank" data-link-target="blank">Lee más sobre definir disposiciones de páginas en las guías.</a></p>'
|
|
22
|
+
|
|
23
|
+
# Hint texts for elements
|
|
24
|
+
element_hints:
|
|
25
|
+
article: "Este es el texto de ayuda del elemento artículo. Puedes cambiar este texto en `config/locales/alchemy.en.yml`. Siéntete libre de cambiarlo a tu gusto, es tuyo."
|
|
26
|
+
|
|
27
|
+
# Hint texts for contents
|
|
28
|
+
content_hints:
|
|
29
|
+
headline: "Esta es una sencilla linea de texto sin formato"
|
|
30
|
+
picture: "Las imágenes se almacenan en la librería. Puedes asignar una imagen varias veces en tu sitio. Alchemy tiene una herramienta de recorte de imagen integrada."
|
|
31
|
+
text: "Este es un bloque de texto enriquecido mediante el editor TinyMCE. Puedes cambiar la configuración del editor. Ver http://guides.alchemy-cms.com/stable/customize_tinymce.html"
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Files in the config/locales directory are used for internationalization
|
|
2
|
+
# and are automatically loaded by Rails. If you want to use locales other
|
|
3
|
+
# than English, add the necessary files in this directory.
|
|
4
|
+
#
|
|
5
|
+
# To use the locales, use `I18n.t`:
|
|
6
|
+
#
|
|
7
|
+
# I18n.t 'hello'
|
|
8
|
+
#
|
|
9
|
+
# In views, this is aliased to just `t`:
|
|
10
|
+
#
|
|
11
|
+
# <%= t('hello') %>
|
|
12
|
+
#
|
|
13
|
+
# To use a different locale, set it with `I18n.locale`:
|
|
14
|
+
#
|
|
15
|
+
# I18n.locale = :es
|
|
16
|
+
#
|
|
17
|
+
# This would use the information in config/locales/es.yml.
|
|
18
|
+
#
|
|
19
|
+
# To learn more, please read the Rails Internationalization guide
|
|
20
|
+
# available at http://guides.rubyonrails.org/i18n.html.
|
|
21
|
+
|
|
22
|
+
en:
|
|
23
|
+
hello: "Hello world"
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
|
2
|
+
|
|
3
|
+
# Your secret key is used for verifying the integrity of signed cookies.
|
|
4
|
+
# If you change this key, all old signed cookies will become invalid!
|
|
5
|
+
|
|
6
|
+
# Make sure the secret is at least 30 characters and all random,
|
|
7
|
+
# no regular words or you'll be exposed to dictionary attacks.
|
|
8
|
+
# You can use `rake secret` to generate a secure secret key.
|
|
9
|
+
|
|
10
|
+
# Make sure the secrets in this file are kept private
|
|
11
|
+
# if you're sharing your code publicly.
|
|
12
|
+
|
|
13
|
+
development:
|
|
14
|
+
secret_key_base: f6512bbb928218c0cc531ceb03ad8ec8fa63c26280f5b5dc06a156be309986f60f06a31c8708211df0ba7b27c92369055b15de44391d77f4f429224b1a2519aa
|
|
15
|
+
kono_mailup:
|
|
16
|
+
mailup_client_id: ''
|
|
17
|
+
mailup_client_secret: ''
|
|
18
|
+
test:
|
|
19
|
+
secret_key_base: b67f62a3cedeb84909634db02811ad8c173581137c9d26044c6d8ba1cad28d558d438dffb058cb86c7e206a93b9973b3b13ffdf6514631f0e464ff4c1ce16bae
|
|
20
|
+
|
|
21
|
+
# Do not keep production secrets in the repository,
|
|
22
|
+
# instead read values from the environment.
|
|
23
|
+
production:
|
|
24
|
+
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# This migration comes from acts_as_taggable_on_engine (originally 1)
|
|
2
|
+
if ActiveRecord.gem_version >= Gem::Version.new('5.0')
|
|
3
|
+
class ActsAsTaggableOnMigration < ActiveRecord::Migration[4.2]; end
|
|
4
|
+
else
|
|
5
|
+
class ActsAsTaggableOnMigration < ActiveRecord::Migration; end
|
|
6
|
+
end
|
|
7
|
+
ActsAsTaggableOnMigration.class_eval do
|
|
8
|
+
def self.up
|
|
9
|
+
create_table :tags do |t|
|
|
10
|
+
t.string :name
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
create_table :taggings do |t|
|
|
14
|
+
t.references :tag
|
|
15
|
+
|
|
16
|
+
# You should make sure that the column created is
|
|
17
|
+
# long enough to store the required class names.
|
|
18
|
+
t.references :taggable, polymorphic: true
|
|
19
|
+
t.references :tagger, polymorphic: true
|
|
20
|
+
|
|
21
|
+
# Limit is created to prevent MySQL error on index
|
|
22
|
+
# length for MyISAM table type: http://bit.ly/vgW2Ql
|
|
23
|
+
t.string :context, limit: 128
|
|
24
|
+
|
|
25
|
+
t.datetime :created_at
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
add_index :taggings, :tag_id
|
|
29
|
+
add_index :taggings, [:taggable_id, :taggable_type, :context]
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def self.down
|
|
33
|
+
drop_table :taggings
|
|
34
|
+
drop_table :tags
|
|
35
|
+
end
|
|
36
|
+
end
|
data/spec/dummy/db/migrate/20171124145456_add_missing_unique_indices.acts_as_taggable_on_engine.rb
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# This migration comes from acts_as_taggable_on_engine (originally 2)
|
|
2
|
+
if ActiveRecord.gem_version >= Gem::Version.new('5.0')
|
|
3
|
+
class AddMissingUniqueIndices < ActiveRecord::Migration[4.2]; end
|
|
4
|
+
else
|
|
5
|
+
class AddMissingUniqueIndices < ActiveRecord::Migration; end
|
|
6
|
+
end
|
|
7
|
+
AddMissingUniqueIndices.class_eval do
|
|
8
|
+
def self.up
|
|
9
|
+
add_index :tags, :name, unique: true
|
|
10
|
+
|
|
11
|
+
remove_index :taggings, :tag_id if index_exists?(:taggings, :tag_id)
|
|
12
|
+
remove_index :taggings, [:taggable_id, :taggable_type, :context]
|
|
13
|
+
add_index :taggings,
|
|
14
|
+
[:tag_id, :taggable_id, :taggable_type, :context, :tagger_id, :tagger_type],
|
|
15
|
+
unique: true, name: 'taggings_idx'
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def self.down
|
|
19
|
+
remove_index :tags, :name
|
|
20
|
+
|
|
21
|
+
remove_index :taggings, name: 'taggings_idx'
|
|
22
|
+
|
|
23
|
+
add_index :taggings, :tag_id unless index_exists?(:taggings, :tag_id)
|
|
24
|
+
add_index :taggings, [:taggable_id, :taggable_type, :context]
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This migration comes from acts_as_taggable_on_engine (originally 3)
|
|
2
|
+
if ActiveRecord.gem_version >= Gem::Version.new('5.0')
|
|
3
|
+
class AddTaggingsCounterCacheToTags < ActiveRecord::Migration[4.2]; end
|
|
4
|
+
else
|
|
5
|
+
class AddTaggingsCounterCacheToTags < ActiveRecord::Migration; end
|
|
6
|
+
end
|
|
7
|
+
AddTaggingsCounterCacheToTags.class_eval do
|
|
8
|
+
def self.up
|
|
9
|
+
add_column :tags, :taggings_count, :integer, default: 0
|
|
10
|
+
|
|
11
|
+
ActsAsTaggableOn::Tag.reset_column_information
|
|
12
|
+
ActsAsTaggableOn::Tag.find_each do |tag|
|
|
13
|
+
ActsAsTaggableOn::Tag.reset_counters(tag.id, :taggings)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def self.down
|
|
18
|
+
remove_column :tags, :taggings_count
|
|
19
|
+
end
|
|
20
|
+
end
|
data/spec/dummy/db/migrate/20171124145458_add_missing_taggable_index.acts_as_taggable_on_engine.rb
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# This migration comes from acts_as_taggable_on_engine (originally 4)
|
|
2
|
+
if ActiveRecord.gem_version >= Gem::Version.new('5.0')
|
|
3
|
+
class AddMissingTaggableIndex < ActiveRecord::Migration[4.2]; end
|
|
4
|
+
else
|
|
5
|
+
class AddMissingTaggableIndex < ActiveRecord::Migration; end
|
|
6
|
+
end
|
|
7
|
+
AddMissingTaggableIndex.class_eval do
|
|
8
|
+
def self.up
|
|
9
|
+
add_index :taggings, [:taggable_id, :taggable_type, :context]
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def self.down
|
|
13
|
+
remove_index :taggings, [:taggable_id, :taggable_type, :context]
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# This migration comes from acts_as_taggable_on_engine (originally 5)
|
|
2
|
+
# This migration is added to circumvent issue #623 and have special characters
|
|
3
|
+
# work properly
|
|
4
|
+
if ActiveRecord.gem_version >= Gem::Version.new('5.0')
|
|
5
|
+
class ChangeCollationForTagNames < ActiveRecord::Migration[4.2]; end
|
|
6
|
+
else
|
|
7
|
+
class ChangeCollationForTagNames < ActiveRecord::Migration; end
|
|
8
|
+
end
|
|
9
|
+
ChangeCollationForTagNames.class_eval do
|
|
10
|
+
def up
|
|
11
|
+
if ActsAsTaggableOn::Utils.using_mysql?
|
|
12
|
+
execute("ALTER TABLE tags MODIFY name varchar(255) CHARACTER SET utf8 COLLATE utf8_bin;")
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# This migration comes from acts_as_taggable_on_engine (originally 6)
|
|
2
|
+
if ActiveRecord.gem_version >= Gem::Version.new('5.0')
|
|
3
|
+
class AddMissingIndexesOnTaggings < ActiveRecord::Migration[4.2]; end
|
|
4
|
+
else
|
|
5
|
+
class AddMissingIndexesOnTaggings < ActiveRecord::Migration; end
|
|
6
|
+
end
|
|
7
|
+
AddMissingIndexesOnTaggings.class_eval do
|
|
8
|
+
def change
|
|
9
|
+
add_index :taggings, :tag_id unless index_exists? :taggings, :tag_id
|
|
10
|
+
add_index :taggings, :taggable_id unless index_exists? :taggings, :taggable_id
|
|
11
|
+
add_index :taggings, :taggable_type unless index_exists? :taggings, :taggable_type
|
|
12
|
+
add_index :taggings, :tagger_id unless index_exists? :taggings, :tagger_id
|
|
13
|
+
add_index :taggings, :context unless index_exists? :taggings, :context
|
|
14
|
+
|
|
15
|
+
unless index_exists? :taggings, [:tagger_id, :tagger_type]
|
|
16
|
+
add_index :taggings, [:tagger_id, :tagger_type]
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
unless index_exists? :taggings, [:taggable_id, :taggable_type, :tagger_id, :context], name: 'taggings_idy'
|
|
20
|
+
add_index :taggings, [:taggable_id, :taggable_type, :tagger_id, :context], name: 'taggings_idy'
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,379 @@
|
|
|
1
|
+
# This migration comes from alchemy (originally 20130827094554)
|
|
2
|
+
# This is a compressed migration for creating all Alchemy 2.6 tables at once.
|
|
3
|
+
#
|
|
4
|
+
# === Notice
|
|
5
|
+
#
|
|
6
|
+
# In order to upgrade from an old version of Alchemy, you have to run all migrations from
|
|
7
|
+
# each version you missed up to the version you want to upgrade to, before running this migration.
|
|
8
|
+
#
|
|
9
|
+
class AlchemyTwoPointSix < ActiveRecord::Migration[4.2]
|
|
10
|
+
def up
|
|
11
|
+
unless table_exists?('alchemy_attachments')
|
|
12
|
+
create_table "alchemy_attachments" do |t|
|
|
13
|
+
t.string "name"
|
|
14
|
+
t.string "file_name"
|
|
15
|
+
t.string "file_mime_type"
|
|
16
|
+
t.integer "file_size"
|
|
17
|
+
t.integer "creator_id"
|
|
18
|
+
t.integer "updater_id"
|
|
19
|
+
t.datetime "created_at", null: false
|
|
20
|
+
t.datetime "updated_at", null: false
|
|
21
|
+
t.text "cached_tag_list"
|
|
22
|
+
t.string "file_uid"
|
|
23
|
+
end
|
|
24
|
+
add_index "alchemy_attachments", ["file_uid"], name: "index_alchemy_attachments_on_file_uid"
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
unless table_exists?('alchemy_cells')
|
|
28
|
+
create_table "alchemy_cells" do |t|
|
|
29
|
+
t.integer "page_id"
|
|
30
|
+
t.string "name"
|
|
31
|
+
t.datetime "created_at", null: false
|
|
32
|
+
t.datetime "updated_at", null: false
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
unless table_exists?('alchemy_contents')
|
|
37
|
+
create_table "alchemy_contents" do |t|
|
|
38
|
+
t.string "name"
|
|
39
|
+
t.string "essence_type"
|
|
40
|
+
t.integer "essence_id"
|
|
41
|
+
t.integer "element_id"
|
|
42
|
+
t.integer "position"
|
|
43
|
+
t.datetime "created_at", null: false
|
|
44
|
+
t.datetime "updated_at", null: false
|
|
45
|
+
t.integer "creator_id"
|
|
46
|
+
t.integer "updater_id"
|
|
47
|
+
end
|
|
48
|
+
add_index "alchemy_contents", ["element_id", "position"], name: "index_contents_on_element_id_and_position"
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
unless table_exists?('alchemy_elements')
|
|
52
|
+
create_table "alchemy_elements" do |t|
|
|
53
|
+
t.string "name"
|
|
54
|
+
t.integer "position"
|
|
55
|
+
t.integer "page_id"
|
|
56
|
+
t.boolean "public", default: true
|
|
57
|
+
t.boolean "folded", default: false
|
|
58
|
+
t.boolean "unique", default: false
|
|
59
|
+
t.datetime "created_at", null: false
|
|
60
|
+
t.datetime "updated_at", null: false
|
|
61
|
+
t.integer "creator_id"
|
|
62
|
+
t.integer "updater_id"
|
|
63
|
+
t.integer "cell_id"
|
|
64
|
+
t.text "cached_tag_list"
|
|
65
|
+
end
|
|
66
|
+
add_index "alchemy_elements", ["page_id", "position"], name: "index_elements_on_page_id_and_position"
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
unless table_exists?('alchemy_elements_alchemy_pages')
|
|
70
|
+
create_table "alchemy_elements_alchemy_pages", id: false do |t|
|
|
71
|
+
t.integer "element_id"
|
|
72
|
+
t.integer "page_id"
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
unless table_exists?('alchemy_essence_booleans')
|
|
77
|
+
create_table "alchemy_essence_booleans" do |t|
|
|
78
|
+
t.boolean "value"
|
|
79
|
+
t.datetime "created_at", null: false
|
|
80
|
+
t.datetime "updated_at", null: false
|
|
81
|
+
t.integer "creator_id"
|
|
82
|
+
t.integer "updater_id"
|
|
83
|
+
end
|
|
84
|
+
add_index "alchemy_essence_booleans", ["value"], name: "index_alchemy_essence_booleans_on_value"
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
unless table_exists?('alchemy_essence_dates')
|
|
88
|
+
create_table "alchemy_essence_dates" do |t|
|
|
89
|
+
t.datetime "date"
|
|
90
|
+
t.integer "creator_id"
|
|
91
|
+
t.integer "updater_id"
|
|
92
|
+
t.datetime "created_at", null: false
|
|
93
|
+
t.datetime "updated_at", null: false
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
unless table_exists?('alchemy_essence_files')
|
|
98
|
+
create_table "alchemy_essence_files" do |t|
|
|
99
|
+
t.integer "attachment_id"
|
|
100
|
+
t.string "title"
|
|
101
|
+
t.string "css_class"
|
|
102
|
+
t.integer "creator_id"
|
|
103
|
+
t.integer "updater_id"
|
|
104
|
+
t.datetime "created_at", null: false
|
|
105
|
+
t.datetime "updated_at", null: false
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
unless table_exists?('alchemy_essence_htmls')
|
|
110
|
+
create_table "alchemy_essence_htmls" do |t|
|
|
111
|
+
t.text "source"
|
|
112
|
+
t.integer "creator_id"
|
|
113
|
+
t.integer "updater_id"
|
|
114
|
+
t.datetime "created_at", null: false
|
|
115
|
+
t.datetime "updated_at", null: false
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
unless table_exists?('alchemy_essence_links')
|
|
120
|
+
create_table "alchemy_essence_links" do |t|
|
|
121
|
+
t.string "link"
|
|
122
|
+
t.string "link_title"
|
|
123
|
+
t.string "link_target"
|
|
124
|
+
t.string "link_class_name"
|
|
125
|
+
t.datetime "created_at", null: false
|
|
126
|
+
t.datetime "updated_at", null: false
|
|
127
|
+
t.integer "creator_id"
|
|
128
|
+
t.integer "updater_id"
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
unless table_exists?('alchemy_essence_pictures')
|
|
133
|
+
create_table "alchemy_essence_pictures" do |t|
|
|
134
|
+
t.integer "picture_id"
|
|
135
|
+
t.string "caption"
|
|
136
|
+
t.string "title"
|
|
137
|
+
t.string "alt_tag"
|
|
138
|
+
t.string "link"
|
|
139
|
+
t.string "link_class_name"
|
|
140
|
+
t.string "link_title"
|
|
141
|
+
t.string "css_class"
|
|
142
|
+
t.string "link_target"
|
|
143
|
+
t.integer "creator_id"
|
|
144
|
+
t.integer "updater_id"
|
|
145
|
+
t.datetime "created_at", null: false
|
|
146
|
+
t.datetime "updated_at", null: false
|
|
147
|
+
t.string "crop_from"
|
|
148
|
+
t.string "crop_size"
|
|
149
|
+
t.string "render_size"
|
|
150
|
+
end
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
unless table_exists?('alchemy_essence_richtexts')
|
|
154
|
+
create_table "alchemy_essence_richtexts" do |t|
|
|
155
|
+
t.text "body"
|
|
156
|
+
t.text "stripped_body"
|
|
157
|
+
t.boolean "do_not_index", default: false
|
|
158
|
+
t.boolean "public"
|
|
159
|
+
t.integer "creator_id"
|
|
160
|
+
t.integer "updater_id"
|
|
161
|
+
t.datetime "created_at", null: false
|
|
162
|
+
t.datetime "updated_at", null: false
|
|
163
|
+
end
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
unless table_exists?('alchemy_essence_selects')
|
|
167
|
+
create_table "alchemy_essence_selects" do |t|
|
|
168
|
+
t.string "value"
|
|
169
|
+
t.datetime "created_at", null: false
|
|
170
|
+
t.datetime "updated_at", null: false
|
|
171
|
+
t.integer "creator_id"
|
|
172
|
+
t.integer "updater_id"
|
|
173
|
+
end
|
|
174
|
+
add_index "alchemy_essence_selects", ["value"], name: "index_alchemy_essence_selects_on_value"
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
unless table_exists?('alchemy_essence_texts')
|
|
178
|
+
create_table "alchemy_essence_texts" do |t|
|
|
179
|
+
t.text "body"
|
|
180
|
+
t.string "link"
|
|
181
|
+
t.string "link_title"
|
|
182
|
+
t.string "link_class_name"
|
|
183
|
+
t.boolean "public", default: false
|
|
184
|
+
t.boolean "do_not_index", default: false
|
|
185
|
+
t.string "link_target"
|
|
186
|
+
t.integer "creator_id"
|
|
187
|
+
t.integer "updater_id"
|
|
188
|
+
t.datetime "created_at", null: false
|
|
189
|
+
t.datetime "updated_at", null: false
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
unless table_exists?('alchemy_folded_pages')
|
|
194
|
+
create_table "alchemy_folded_pages" do |t|
|
|
195
|
+
t.integer "page_id"
|
|
196
|
+
t.integer "user_id"
|
|
197
|
+
t.boolean "folded", default: false
|
|
198
|
+
end
|
|
199
|
+
end
|
|
200
|
+
|
|
201
|
+
unless table_exists?('alchemy_languages')
|
|
202
|
+
create_table "alchemy_languages" do |t|
|
|
203
|
+
t.string "name"
|
|
204
|
+
t.string "language_code"
|
|
205
|
+
t.string "frontpage_name"
|
|
206
|
+
t.string "page_layout", default: "intro"
|
|
207
|
+
t.boolean "public", default: false
|
|
208
|
+
t.datetime "created_at", null: false
|
|
209
|
+
t.datetime "updated_at", null: false
|
|
210
|
+
t.integer "creator_id"
|
|
211
|
+
t.integer "updater_id"
|
|
212
|
+
t.boolean "default", default: false
|
|
213
|
+
t.string "country_code", default: "", null: false
|
|
214
|
+
t.integer "site_id"
|
|
215
|
+
end
|
|
216
|
+
add_index "alchemy_languages", ["language_code", "country_code"], name: "index_alchemy_languages_on_language_code_and_country_code"
|
|
217
|
+
add_index "alchemy_languages", ["language_code"], name: "index_alchemy_languages_on_language_code"
|
|
218
|
+
add_index "alchemy_languages", ["site_id"], name: "index_alchemy_languages_on_site_id"
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
unless table_exists?('alchemy_legacy_page_urls')
|
|
222
|
+
create_table "alchemy_legacy_page_urls" do |t|
|
|
223
|
+
t.string "urlname", null: false
|
|
224
|
+
t.integer "page_id", null: false
|
|
225
|
+
t.datetime "created_at", null: false
|
|
226
|
+
t.datetime "updated_at", null: false
|
|
227
|
+
end
|
|
228
|
+
add_index "alchemy_legacy_page_urls", ["urlname"], name: "index_alchemy_legacy_page_urls_on_urlname"
|
|
229
|
+
end
|
|
230
|
+
|
|
231
|
+
unless table_exists?('alchemy_pages')
|
|
232
|
+
create_table "alchemy_pages" do |t|
|
|
233
|
+
t.string "name"
|
|
234
|
+
t.string "urlname"
|
|
235
|
+
t.string "title"
|
|
236
|
+
t.string "language_code"
|
|
237
|
+
t.boolean "language_root"
|
|
238
|
+
t.string "page_layout"
|
|
239
|
+
t.text "meta_keywords"
|
|
240
|
+
t.text "meta_description"
|
|
241
|
+
t.integer "lft"
|
|
242
|
+
t.integer "rgt"
|
|
243
|
+
t.integer "parent_id"
|
|
244
|
+
t.integer "depth"
|
|
245
|
+
t.boolean "visible", default: false
|
|
246
|
+
t.boolean "public", default: false
|
|
247
|
+
t.boolean "locked", default: false
|
|
248
|
+
t.integer "locked_by"
|
|
249
|
+
t.boolean "restricted", default: false
|
|
250
|
+
t.boolean "robot_index", default: true
|
|
251
|
+
t.boolean "robot_follow", default: true
|
|
252
|
+
t.boolean "sitemap", default: true
|
|
253
|
+
t.boolean "layoutpage", default: false
|
|
254
|
+
t.datetime "created_at", null: false
|
|
255
|
+
t.datetime "updated_at", null: false
|
|
256
|
+
t.integer "creator_id"
|
|
257
|
+
t.integer "updater_id"
|
|
258
|
+
t.integer "language_id"
|
|
259
|
+
t.text "cached_tag_list"
|
|
260
|
+
end
|
|
261
|
+
add_index "alchemy_pages", ["language_id"], name: "index_pages_on_language_id"
|
|
262
|
+
add_index "alchemy_pages", ["parent_id", "lft"], name: "index_pages_on_parent_id_and_lft"
|
|
263
|
+
add_index "alchemy_pages", ["urlname"], name: "index_pages_on_urlname"
|
|
264
|
+
end
|
|
265
|
+
|
|
266
|
+
unless table_exists?('alchemy_pictures')
|
|
267
|
+
create_table "alchemy_pictures" do |t|
|
|
268
|
+
t.string "name"
|
|
269
|
+
t.string "image_file_name"
|
|
270
|
+
t.integer "image_file_width"
|
|
271
|
+
t.integer "image_file_height"
|
|
272
|
+
t.datetime "created_at", null: false
|
|
273
|
+
t.datetime "updated_at", null: false
|
|
274
|
+
t.integer "creator_id"
|
|
275
|
+
t.integer "updater_id"
|
|
276
|
+
t.string "upload_hash"
|
|
277
|
+
t.text "cached_tag_list"
|
|
278
|
+
t.string "image_file_uid"
|
|
279
|
+
t.integer "image_file_size"
|
|
280
|
+
end
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
unless table_exists?('alchemy_sites')
|
|
284
|
+
create_table "alchemy_sites" do |t|
|
|
285
|
+
t.string "host"
|
|
286
|
+
t.string "name"
|
|
287
|
+
t.datetime "created_at", null: false
|
|
288
|
+
t.datetime "updated_at", null: false
|
|
289
|
+
t.boolean "public", default: false
|
|
290
|
+
t.text "aliases"
|
|
291
|
+
t.boolean "redirect_to_primary_host"
|
|
292
|
+
end
|
|
293
|
+
add_index "alchemy_sites", ["host", "public"], name: "alchemy_sites_public_hosts_idx"
|
|
294
|
+
add_index "alchemy_sites", ["host"], name: "index_alchemy_sites_on_host"
|
|
295
|
+
end
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
def down
|
|
299
|
+
if table_exists?('alchemy_attachments')
|
|
300
|
+
drop_table "alchemy_attachments"
|
|
301
|
+
end
|
|
302
|
+
|
|
303
|
+
if table_exists?('alchemy_cells')
|
|
304
|
+
drop_table "alchemy_cells"
|
|
305
|
+
end
|
|
306
|
+
|
|
307
|
+
if table_exists?('alchemy_contents')
|
|
308
|
+
drop_table "alchemy_contents"
|
|
309
|
+
end
|
|
310
|
+
|
|
311
|
+
if table_exists?('alchemy_elements')
|
|
312
|
+
drop_table "alchemy_elements"
|
|
313
|
+
end
|
|
314
|
+
|
|
315
|
+
if table_exists?('alchemy_elements_alchemy_pages')
|
|
316
|
+
drop_table "alchemy_elements_alchemy_pages"
|
|
317
|
+
end
|
|
318
|
+
|
|
319
|
+
if table_exists?('alchemy_essence_booleans')
|
|
320
|
+
drop_table "alchemy_essence_booleans"
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
if table_exists?('alchemy_essence_dates')
|
|
324
|
+
drop_table "alchemy_essence_dates"
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
if table_exists?('alchemy_essence_files')
|
|
328
|
+
drop_table "alchemy_essence_files"
|
|
329
|
+
end
|
|
330
|
+
|
|
331
|
+
if table_exists?('alchemy_essence_htmls')
|
|
332
|
+
drop_table "alchemy_essence_htmls"
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
if table_exists?('alchemy_essence_links')
|
|
336
|
+
drop_table "alchemy_essence_links"
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
if table_exists?('alchemy_essence_pictures')
|
|
340
|
+
drop_table "alchemy_essence_pictures"
|
|
341
|
+
end
|
|
342
|
+
|
|
343
|
+
if table_exists?('alchemy_essence_richtexts')
|
|
344
|
+
drop_table "alchemy_essence_richtexts"
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
if table_exists?('alchemy_essence_selects')
|
|
348
|
+
drop_table "alchemy_essence_selects"
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
if table_exists?('alchemy_essence_texts')
|
|
352
|
+
drop_table "alchemy_essence_texts"
|
|
353
|
+
end
|
|
354
|
+
|
|
355
|
+
if table_exists?('alchemy_folded_pages')
|
|
356
|
+
drop_table "alchemy_folded_pages"
|
|
357
|
+
end
|
|
358
|
+
|
|
359
|
+
if table_exists?('alchemy_languages')
|
|
360
|
+
drop_table "alchemy_languages"
|
|
361
|
+
end
|
|
362
|
+
|
|
363
|
+
if table_exists?('alchemy_legacy_page_urls')
|
|
364
|
+
drop_table "alchemy_legacy_page_urls"
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
if table_exists?('alchemy_pages')
|
|
368
|
+
drop_table "alchemy_pages"
|
|
369
|
+
end
|
|
370
|
+
|
|
371
|
+
if table_exists?('alchemy_pictures')
|
|
372
|
+
drop_table "alchemy_pictures"
|
|
373
|
+
end
|
|
374
|
+
|
|
375
|
+
if table_exists?('alchemy_sites')
|
|
376
|
+
drop_table "alchemy_sites"
|
|
377
|
+
end
|
|
378
|
+
end
|
|
379
|
+
end
|