skylinecms 3.0.8 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +131 -10
- data/README.md +1 -2
- data/Rakefile +3 -3
- data/app/controllers/skyline/application_controller.rb +40 -4
- data/app/controllers/skyline/articles_controller.rb +4 -4
- data/app/controllers/skyline/browser/tabs/media_library/media_files_controller.rb +1 -1
- data/app/controllers/skyline/content_controller.rb +4 -3
- data/app/controllers/skyline/{media_files_data_controller.rb → media/data_controller.rb} +61 -59
- data/app/controllers/skyline/media/dirs_controller.rb +83 -0
- data/app/controllers/skyline/media/files_controller.rb +80 -0
- data/app/controllers/skyline/sections_controller.rb +10 -3
- data/app/controllers/skyline/settings_controller.rb +4 -2
- data/app/controllers/skyline/user_preferences_controller.rb +18 -0
- data/app/controllers/skyline/users_controller.rb +1 -1
- data/app/controllers/skyline/variant_current_editor_controller.rb +2 -0
- data/app/helpers/skyline/application_helper.rb +39 -35
- data/app/helpers/skyline/dialog_helper.rb +11 -10
- data/app/helpers/skyline/editors/boolean.rb +2 -2
- data/app/helpers/skyline/editors/page_browser.rb +2 -0
- data/app/helpers/skyline/editors/wysiwyg.rb +1 -1
- data/app/helpers/skyline/js_layout_helper.rb +19 -0
- data/app/helpers/skyline/media/dirs_helper.rb +2 -0
- data/app/helpers/skyline/media/files_helper.rb +6 -0
- data/app/helpers/skyline/media_files_helper.rb +2 -2
- data/app/helpers/skyline/menu_helper.rb +33 -0
- data/app/helpers/skyline/message_generator.rb +5 -1
- data/app/helpers/skyline/notification_generator.rb +6 -0
- data/app/helpers/skyline/plugin_helper.rb +21 -0
- data/app/helpers/skyline/presenters/presenter.rb +4 -13
- data/app/helpers/skyline/presenters/table.rb +0 -27
- data/app/helpers/skyline/ref_object_helper.rb +2 -2
- data/app/helpers/skyline/tree_helper.rb +74 -5
- data/app/models/skyline/article.rb +18 -6
- data/app/models/skyline/article_version.rb +1 -1
- data/app/models/skyline/image_ref.rb +9 -5
- data/app/models/skyline/inline_ref.rb +3 -2
- data/app/models/skyline/link_section_link.rb +2 -2
- data/app/models/skyline/media_file.rb +33 -10
- data/app/models/skyline/page.rb +10 -9
- data/app/models/skyline/section.rb +1 -1
- data/app/models/skyline/sections/content_collection_section.rb +1 -1
- data/app/models/skyline/sections/content_item_section.rb +1 -1
- data/app/models/skyline/sections/heading_section.rb +1 -1
- data/app/models/skyline/sections/iframe_section.rb +2 -2
- data/app/models/skyline/sections/link_section.rb +1 -1
- data/app/models/skyline/sections/media_section.rb +32 -5
- data/app/models/skyline/sections/page_fragment_section.rb +1 -1
- data/app/models/skyline/sections/raw_section.rb +1 -1
- data/app/models/skyline/sections/redirect_section.rb +4 -4
- data/app/models/skyline/sections/rss_section.rb +7 -2
- data/app/models/skyline/sections/splitter_section.rb +1 -1
- data/app/models/skyline/sections/wysiwyg_section.rb +3 -3
- data/app/models/skyline/site.rb +1 -1
- data/app/models/skyline/user.rb +1 -1
- data/app/models/skyline/user_preference.rb +69 -0
- data/app/models/skyline/variant.rb +1 -1
- data/app/templates/skyline/sections/content_item_section/default/index.html.erb +1 -1
- data/app/templates/skyline/sections/media_section/default/index.html.erb +9 -9
- data/app/views/skyline/articles/_list.html.erb +34 -0
- data/app/views/skyline/articles/edit.html.erb +13 -6
- data/app/views/skyline/articles/index.html.erb +12 -43
- data/app/views/skyline/articles/page/_index.html.erb +13 -11
- data/app/views/skyline/authentications/new.html.erb +2 -2
- data/app/views/skyline/browser/links/_index.html.erb +4 -2
- data/app/views/skyline/browser/tabs/media_library/_index.html.erb +12 -13
- data/app/views/skyline/browser/tabs/media_library/media_files/_index.html.erb +122 -51
- data/app/views/skyline/browser/tabs/media_library/media_files/_show.html.erb +7 -7
- data/app/views/skyline/content/list.rhtml +1 -3
- data/app/views/skyline/content/presenters/_table.html.erb +45 -0
- data/app/views/skyline/layouts/content.html.erb +1 -1
- data/app/views/skyline/layouts/media.html.erb +2 -1
- data/app/views/skyline/layouts/pages.html.erb +10 -0
- data/app/views/skyline/link_section_links/_form.html.erb +0 -1
- data/app/views/skyline/locales/show.js.erb +2 -2
- data/app/views/skyline/media/dirs/_edit.html.erb +42 -0
- data/app/views/skyline/media/dirs/_index.html.erb +14 -0
- data/app/views/skyline/media/dirs/_show.html.erb +34 -0
- data/app/views/skyline/media/dirs/index.html.erb +36 -0
- data/app/views/skyline/media/files/_edit.html.erb +101 -0
- data/app/views/skyline/media/files/_index.html.erb +68 -0
- data/app/views/skyline/media/files/_new.html.erb +45 -0
- data/app/views/skyline/publications/_index.html.erb +2 -2
- data/app/views/skyline/sections/_media_section.html.erb +12 -2
- data/app/views/skyline/sections/_wysiwyg_section.html.erb +2 -3
- data/app/views/skyline/settings/index.html +14 -0
- data/app/views/skyline/shared/_head.html.erb +2 -0
- data/app/views/skyline/shared/_header_area.html.erb +7 -5
- data/app/views/skyline/users/index.html.erb +31 -16
- data/config/initializers/dependencies.rb +6 -1
- data/config/initializers/observers.rb +1 -2
- data/config/initializers/rails_defaults.rb +1 -1
- data/config/locales/en-US.yml +110 -68
- data/config/locales/nl-NL.yml +117 -77
- data/config/routes.rb +36 -32
- data/db/fixtures/roles_and_rights.rb +65 -40
- data/db/migrate/20090302102548_add_media_nodes.rb +2 -2
- data/db/migrate/20090309133933_add_description_to_media_nodes.rb +2 -2
- data/db/migrate/20090309134731_add_tags.rb +2 -2
- data/db/migrate/20090309135746_create_media_files_tags.rb +2 -2
- data/db/migrate/20090319091342_create_media_caches.rb +2 -2
- data/db/migrate/20090327083240_create_users.rb +2 -2
- data/db/migrate/20090327084656_create_roles.rb +2 -2
- data/db/migrate/20090327084719_create_rights.rb +2 -2
- data/db/migrate/20090327084739_create_grants.rb +2 -2
- data/db/migrate/20090327090918_create_rights_roles.rb +2 -2
- data/db/migrate/20090408115155_create_ref_objects.rb +2 -2
- data/db/migrate/20090504140044_create_test_sections.rb +2 -2
- data/db/migrate/20090506083107_add_refering_column_name_to_ref_objects.rb +2 -2
- data/db/migrate/20090706124019_add_skyline_media_node_title.rb +1 -1
- data/db/migrate/20090904121447_create_skyline_referable_uris.rb +6 -6
- data/db/migrate/20091221145204_add_skyline_media_section_link.rb +11 -0
- data/db/migrate/20100109145958_add_associated_tags_index.rb +9 -0
- data/db/migrate/20100115111440_create_skyline_user_preferences.rb +14 -0
- data/db/migrate/20100120113953_remove_unused_articles_index.rb +9 -0
- data/db/migrate/20100409073447_change_referable_uri_to_text.rb +9 -0
- data/doc/Bundler.md +33 -28
- data/doc/MIGRATION.md +48 -0
- data/lib/skyline/{content_item.rb → belongs_to_referable.rb} +57 -88
- data/lib/skyline/configuration.rb +14 -15
- data/lib/skyline/content/content.rb +14 -2
- data/lib/skyline/deprecated/version3_0_8.rb +106 -0
- data/lib/skyline/{form_builder_with_errors.rb → form_builder.rb} +5 -5
- data/lib/skyline/{referable.rb → has_many_referables_in.rb} +22 -12
- data/lib/skyline/javascript_generator_methods.rb +1 -1
- data/lib/skyline/plugins_manager.rb +135 -14
- data/lib/skyline/rendering/helpers/renderer_helper.rb +14 -9
- data/lib/skyline/{renderer.rb → rendering/renderer.rb} +3 -4
- data/lib/skyline/{renderable_scope_interface.rb → rendering/scopes/interface.rb} +1 -1
- data/lib/skyline/{wildcard_renderable_scope.rb → rendering/scopes/wildcard.rb} +3 -3
- data/lib/skyline/{section_item.rb → sections/interface.rb} +17 -10
- data/lib/skyline/settings.rb +29 -19
- data/lib/skyline/taggable.rb +3 -3
- data/lib/skyline/version.rb +2 -2
- data/{tasks → lib/tasks}/database.rake +14 -2
- data/{tasks → lib/tasks}/implementation.rake +0 -0
- data/lib/tasks/testing.rake +41 -0
- data/public/skyline/images/backgrounds/panel-dt.gif +0 -0
- data/public/skyline/javascripts/src/application.js +114 -120
- data/public/skyline/javascripts/src/browser.js +22 -4
- data/public/skyline/javascripts/src/library_uploader.js +13 -3
- data/public/skyline/javascripts/src/sections.js +57 -6
- data/public/skyline/javascripts/src/skyline/src/dialog.js +6 -0
- data/public/skyline/javascripts/src/skyline/src/drag.js +6 -0
- data/public/skyline/javascripts/src/skyline/src/events.js +50 -0
- data/public/skyline/javascripts/src/skyline/src/field_replicator.js +12 -11
- data/public/skyline/javascripts/src/skyline/src/layout.js +172 -30
- data/public/skyline/javascripts/src/skyline/src/menu.js +3 -0
- data/public/skyline/javascripts/src/skyline/src/menubutton.js +3 -0
- data/public/skyline/javascripts/src/skyline/src/skyline.js +3 -0
- data/public/skyline/javascripts/src/skyline/src/table.js +398 -0
- data/public/skyline/javascripts/src/skyline/src/tabs.js +2 -2
- data/public/skyline/javascripts/src/skyline/src/tag_selector.js +34 -26
- data/public/skyline/javascripts/src/skyline/src/tree.js +3 -0
- data/public/skyline/javascripts/src/skyline/src/uploader.js +2 -2
- data/public/skyline/javascripts/src/skyline/src/utils.js +3 -0
- data/public/skyline/javascripts/src/skyline/test/_dynamic_right.html +24 -0
- data/public/skyline/javascripts/src/skyline/test/_right_content.html +1 -0
- data/public/skyline/javascripts/src/skyline/test/basic_layout.html +190 -0
- data/public/skyline/javascripts/src/skyline/test/dialog.html +101 -0
- data/public/skyline/javascripts/src/skyline/test/draggablefiles.html +196 -0
- data/public/skyline/javascripts/src/skyline/test/dynamic_layout.html +89 -0
- data/public/skyline/javascripts/src/skyline/test/field_replicator.html +60 -0
- data/public/skyline/javascripts/src/skyline/test/last-closed.gif +0 -0
- data/public/skyline/javascripts/src/skyline/test/last-open.gif +0 -0
- data/public/skyline/javascripts/src/skyline/test/menubutton.html +81 -0
- data/public/skyline/javascripts/src/skyline/test/middle.gif +0 -0
- data/public/skyline/javascripts/src/skyline/test/sortable.html +121 -0
- data/public/skyline/javascripts/src/skyline/test/table.html +521 -0
- data/public/skyline/javascripts/src/skyline/test/tagselector.html +72 -0
- data/public/skyline/javascripts/src/skyline/test/toggle.html +95 -0
- data/public/skyline/javascripts/src/skyline/test/tree.html +310 -0
- data/public/skyline/javascripts/src/skyline/test/tree.png +0 -0
- data/public/skyline/javascripts/src/skyline/test/undohtml.css +27 -0
- data/public/skyline/javascripts/src/skyline/vendor/fancyupload/Swiff.Uploader.js +2 -2
- data/public/skyline/javascripts/src/skyline/vendor/mootools/mootools-core.js +1 -354
- data/public/skyline/javascripts/src/skyline/vendor/mootools/mootools-more.js +64 -52
- data/public/skyline/javascripts/src/skyline.editor/assets/content.css +1 -1
- data/public/skyline/javascripts/src/skyline.editor/src/script_loader.js +156 -75
- data/public/skyline/javascripts/src/skyline.editor/src/skyline.editor.js +14 -4
- data/public/skyline/javascripts/src/skyline.editor/src/theme.js +8 -0
- data/public/skyline/javascripts/src/skyline.editor/test/dialog.html +28 -0
- data/public/skyline/javascripts/src/skyline.editor/test/lorem.html +7 -0
- data/public/skyline/javascripts/src/skyline.editor/test/multiple_editors.html +87 -0
- data/public/skyline/javascripts/src/skyline.editor/test/undohtml.css +27 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/changelog.txt +205 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/css/content.css +54 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/custom_formats.html +111 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/full.html +19 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/menu.html +1 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/simple.html +6 -2
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/skins.html +14 -10
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/translate.html +7 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/word.html +8 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/langs/en.js +18 -2
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js +1 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js +154 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js +52 -44
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js +388 -17
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js +4 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js +58 -6
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js +8 -5
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js +10 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js +18 -8
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js +12 -6
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js +1 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js +136 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js +18 -9
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/media/media.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js +564 -124
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm +2 -8
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm +2 -8
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js +4 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm +4 -9
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js +106 -27
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js +6 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/style/props.htm +4 -11
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/cell.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js +921 -918
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js +41 -24
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js +18 -20
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/js/row.js +48 -23
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/js/table.js +24 -15
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm +3 -8
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/row.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/table/table.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js +10 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/template/template.htm +2 -9
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js +26 -16
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js +1 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js +98 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm +3 -10
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm +3 -10
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm +3 -10
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm +3 -11
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js +11 -15
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm +3 -11
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js +8 -5
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/attributes.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/del.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/element_common.js +8 -8
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js +7 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/about.htm +1 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm +2 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js +252 -188
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/image.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js +7 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js +10 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/js/image.js +2 -2
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js +4 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/link.htm +2 -7
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css +7 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css +4 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/ui.css +5 -6
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/content.css +7 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/dialog.css +3 -2
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui.css +4 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm +2 -8
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js +5 -5
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce_popup.js +1 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce_src.js +5492 -4341
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/utils/editable_selects.js +5 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/utils/form_utils.js +6 -5
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/utils/mctabs.js +5 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/utils/validate.js +5 -4
- data/public/skyline/javascripts/src/skyline.js +3 -1
- data/public/skyline/javascripts/src/user_preferences.js +49 -0
- data/public/skyline/stylesheets/general.css +149 -47
- data/rails/init.rb +3 -3
- data/test/factories.rb +28 -0
- data/test/integration/media_browser_super_access_test.rb +52 -0
- data/test/integration/media_browser_user_access_test.rb +50 -0
- data/test/integration/user_preferences_test.rb +73 -0
- data/test/mocks/test_content_object.rb +32 -0
- data/test/mocks/test_section.rb +22 -0
- data/test/test_helper.rb +60 -0
- data/test/unit/inline_ref_test.rb +195 -0
- data/test/unit/locales_test.rb +82 -0
- data/test/unit/page_test.rb +204 -0
- data/test/unit/test_content_object_test.rb +69 -0
- data/test/unit/test_section_test.rb +247 -0
- data/test/unit/user_preference_test.rb +123 -0
- data/test/unit/user_test.rb +74 -0
- data/test/user_access_helper.rb +36 -0
- data/vendor/digitpaint/personify/test/fixtures/multiple_tags.txt +8 -0
- data/vendor/digitpaint/personify/test/parse_runner.rb +25 -0
- data/vendor/digitpaint/personify/test/parser_test.rb +109 -0
- data/vendor/digitpaint/personify/test/test_helper.rb +16 -0
- data/vendor/digitpaint/personify/vendor/treetop/.gitignore +5 -0
- data/vendor/mootools-on-rails/lib/mootools_on_rails/mootools_helper.rb +13 -4
- data/vendor/mootools-on-rails/test/mootools_helper_test.rb +138 -0
- data/vendor/mootools-on-rails/test/test_helper.rb +5 -0
- data/vendor/weppos/url_validation.rb +76 -0
- metadata +384 -189
- data/app/controllers/skyline/media_dirs_controller.rb +0 -56
- data/app/controllers/skyline/media_files_controller.rb +0 -87
- data/app/helpers/skyline/presenters/article_list.rb +0 -139
- data/app/observers/skyline/media_file_observer.rb +0 -32
- data/app/views/skyline/media_dirs/_edit.html.erb +0 -25
- data/app/views/skyline/media_dirs/_index.html.erb +0 -14
- data/app/views/skyline/media_dirs/index.html.erb +0 -42
- data/app/views/skyline/media_files/_edit.html.erb +0 -75
- data/app/views/skyline/media_files/_header.html.erb +0 -3
- data/app/views/skyline/media_files/_index.html.erb +0 -51
- data/app/views/skyline/media_files/_new.html.erb +0 -50
- data/db/migrate/20090603104115_prefix_tables_for_skyline.rb +0 -30
- data/lib/skyline/indexer.rb +0 -36
- data/lib/skyline/renderable_scope.rb +0 -27
- data/lib/skyline/rendering/helpers/settings_helper.rb +0 -26
- data/lib/skyline/searchable_item.rb +0 -132
- data/lib/skyline/url_validation.rb +0 -66
- data/public/skyline/images/backgrounds/splitter.gif +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/build.bat +0 -2
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/build.xml +0 -364
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/examples/full_jquery.html +0 -94
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/AddOnManager.js +0 -95
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/CommandManager.js +0 -54
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ControlManager.js +0 -489
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/Developer.js +0 -91
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/Editor.js +0 -2295
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/EditorCommands.js +0 -934
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/EditorManager.js +0 -453
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ForceBlocks.js +0 -644
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/Popup.js +0 -412
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/UndoManager.js +0 -183
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/WindowManager.js +0 -169
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/adapter/jquery/adapter.js +0 -240
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/adapter/jquery/jquery.tinymce.js +0 -179
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/adapter/prototype/adapter.js +0 -38
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/commands/BlockQuote.js +0 -135
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/commands/CutCopyPaste.js +0 -24
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/commands/InsertHorizontalRule.js +0 -15
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/commands/RemoveFormat.js +0 -173
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/commands/UndoRedo.js +0 -38
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/DOMUtils.js +0 -1823
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/Element.js +0 -199
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/EventUtils.js +0 -349
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/Range.js +0 -721
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/ScriptLoader.js +0 -351
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/Selection.js +0 -747
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/Serializer.js +0 -979
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/Sizzle.js +0 -975
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/StringWriter.js +0 -200
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/TridentSelection.js +0 -273
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/dom/XMLWriter.js +0 -155
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/firebug/firebug-lite.js +0 -2518
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/tinymce.js +0 -549
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/Button.js +0 -68
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/ColorSplitButton.js +0 -212
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/Container.js +0 -56
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/Control.js +0 -182
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/DropMenu.js +0 -397
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/ListBox.js +0 -320
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/Menu.js +0 -175
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/MenuButton.js +0 -128
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/MenuItem.js +0 -69
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/NativeListBox.js +0 -198
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/Separator.js +0 -34
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/SplitButton.js +0 -99
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/ui/Toolbar.js +0 -86
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/util/Cookie.js +0 -126
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/util/Dispatcher.js +0 -101
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/util/JSON.js +0 -81
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/util/JSONP.js +0 -25
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/util/JSONRequest.js +0 -87
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/util/URI.js +0 -289
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/util/XHR.js +0 -80
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/classes/xml/Parser.js +0 -126
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/jquery.tinymce.js +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/compat2x/editor_plugin.js +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/compat2x/editor_plugin_src.js +0 -616
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/safari/blank.htm +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/safari/editor_plugin.js +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/plugins/safari/editor_plugin_src.js +0 -438
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce_dev.js +0 -128
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce_jquery.js +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce_jquery_src.js +0 -12198
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce_prototype.js +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/jscripts/tiny_mce/tiny_mce_prototype_src.js +0 -13057
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/api.html +0 -18
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/api_jquery.html +0 -18
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/api_prototype.html +0 -19
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/basic.html +0 -548
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/crossdomain.html +0 -87
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/css/unit.css +0 -120
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/index.html +0 -10
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/jquery_plugin.html +0 -112
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/js/api.js +0 -1438
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/js/testrunner.js +0 -791
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/main.html +0 -8
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/media.html +0 -221
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/menu.html +0 -22
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/parts.html +0 -90
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/paste.html +0 -132
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/performance.html +0 -152
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/range.html +0 -522
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/removeformat.html +0 -88
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/selection.html +0 -235
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/config.ini +0 -27
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/footer.html +0 -3
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/header.html +0 -6
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/index.php +0 -1
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/instructions.txt +0 -4
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/logo.png +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/selectors.list +0 -40
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/style.css +0 -181
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/system/index.php +0 -112
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/system/slickspeed.js +0 -147
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/system/template.php +0 -47
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/slickspeed/template.html +0 -2865
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tests/test.xml +0 -6
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tools/ant/ant-contrib.jar +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tools/ant/js_build_tools.jar +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tools/ant/svnClientAdapter.jar +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tools/ant/svnant.jar +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tools/ant/svnjavahl.jar +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tools/ant/svnkit.jar +0 -0
- data/public/skyline/javascripts/src/skyline.editor/vendor/tinymce/tools/ant/yuicompressor.jar +0 -0
@@ -1,94 +1,67 @@
|
|
1
|
-
# Use this Module in in a class that references a Page/MediaFile
|
1
|
+
# Use this Module in in a class that references a Page/MediaFile/URL as an association.
|
2
|
+
# It adds the class method `belongs_to_referable`. With {Skyline::Referable::ClassMethods#belongs_to_referable} you create a
|
3
|
+
# `belongs_to` association to an Page/MediaFile/URL through a RefObject.
|
4
|
+
#
|
5
|
+
# @see Skyline::BelongsToReferable::ClassMethods#belongs_to_referable
|
2
6
|
#
|
7
|
+
# @example Usage
|
3
8
|
#
|
4
|
-
# Usage:
|
5
9
|
# class Model < ActiveRecord::Base
|
6
|
-
# include Skyline::
|
7
|
-
#
|
8
|
-
# referable_content :teaser (column teaser_id must be crreated)
|
9
|
-
# end
|
10
|
+
# include Skyline::BelongsToReferable
|
10
11
|
#
|
11
|
-
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
# class Model < ActiveRecord::Base
|
15
|
-
# before_save :set_refering_type_and_id
|
16
|
-
# after_create :set_refering_id
|
17
|
-
# named_scope :published (scope to return only published items)
|
18
|
-
#
|
19
|
-
# def referable_content(*fields)
|
12
|
+
# belongs_to_referable :teaser # column teaser_id must be available
|
13
|
+
# end
|
20
14
|
#
|
21
|
-
# belongs_to :teaser, :class_name => "Skyline::ObjectRef", :foreign_key => "teaser_id", :dependent => :destroy
|
22
|
-
# accepts_nested_attributes_for :teaser, :reject_if => proc {|attributes| attributes['referable_type'].blank?}, :allow_destroy => true
|
23
|
-
# [validates_presence_of :teaser (only if options[:allow_nil] is not set)]
|
24
|
-
#
|
25
|
-
# def teaser_with_passthrough=(obj) (obj can be an ObjectRef or a Teaser, in which case it will be passed through)
|
26
|
-
# alias_method_chain :teaser=, :passthrough
|
27
|
-
# end
|
28
15
|
#
|
16
|
+
# @example Gives your Model the following interface:
|
29
17
|
#
|
30
|
-
#
|
18
|
+
# class Model < ActiveRecord::Base
|
19
|
+
# after_save :possibly_destroy_previous_referables
|
20
|
+
# after_destroy :possibly_destroy_referables
|
21
|
+
# before_save :set_refering_type_and_id
|
22
|
+
# after_create :set_refering_id
|
31
23
|
#
|
32
|
-
#
|
24
|
+
# belongs_to :teaser, :class_name => "Skyline::ObjectRef", :foreign_key => "teaser_id", :dependent => :destroy
|
25
|
+
# accepts_nested_attributes_for :teaser, :reject_if => proc {|attributes| attributes['referable_type'].blank?}, :allow_destroy => true
|
26
|
+
# validates_presence_of :teaser # only if options[:allow_nil] is not set
|
33
27
|
#
|
34
|
-
#
|
35
|
-
#
|
36
|
-
#
|
37
|
-
#
|
38
|
-
# referable_serialized_content :results_page (obj.results_page_id and obj.results_page_id= must be available)
|
28
|
+
# def teaser_with_passthrough=(obj) # obj can be an ObjectRef or a Teaser, in which case it will be passed through
|
29
|
+
# # ...
|
30
|
+
# end
|
31
|
+
# alias_method_chain :teaser=, :passthrough
|
39
32
|
# end
|
40
33
|
#
|
41
|
-
|
42
|
-
# 1) Gives your Settings the following interface:
|
43
|
-
#
|
44
|
-
# class Settings < ActiveRecord::Base
|
45
|
-
# def referable_serialized_content(*fields)
|
46
|
-
#
|
47
|
-
# def results_page_attributes= (set results_page_id to the referable_id; bypassing an ObjectRef)
|
48
|
-
# end
|
49
|
-
|
50
|
-
module Skyline::ContentItem
|
34
|
+
module Skyline::BelongsToReferable
|
51
35
|
def self.included(base)
|
52
36
|
base.extend(ClassMethods)
|
53
37
|
|
38
|
+
# Callbacks
|
54
39
|
base.send(:before_save, :set_refering_type_and_id)
|
55
40
|
base.send(:after_create, :set_refering_id)
|
41
|
+
base.send(:after_save, :possibly_destroy_previous_referables)
|
42
|
+
base.send(:after_destroy, :possibly_destroy_referables)
|
43
|
+
|
56
44
|
base.send(:cattr_accessor, :referable_contents)
|
57
45
|
base.send(:attr_accessor, :previous_referables)
|
58
46
|
base.send(:alias_method_chain, :clone, :referable_content)
|
59
|
-
base.send(:after_save, :possibly_destroy_previous_referables)
|
60
|
-
base.send(:after_destroy, :possibly_destroy_referables)
|
61
47
|
|
62
|
-
base.send("referable_contents=", [])
|
63
48
|
|
64
|
-
base.
|
65
|
-
|
66
|
-
named_scope :published, lambda {
|
67
|
-
if self.respond_to?(:publishable?) && self.publishable?
|
68
|
-
{:conditions => {:published => true}}
|
69
|
-
elsif self.ancestors.include?(Skyline::Article::Data)
|
70
|
-
{:include => self.table_name.sub("_data", "").to_sym,
|
71
|
-
:conditions => "skyline_articles.published_publication_data_id = #{self.table_name}.id"}
|
72
|
-
else
|
73
|
-
{}
|
74
|
-
end
|
75
|
-
}
|
76
|
-
|
77
|
-
named_scope :with_site, lambda {|site|
|
78
|
-
if site && self.ancestors.include?(Skyline::Article::Data)
|
79
|
-
site.named_scope_with_site_for(self)
|
80
|
-
else
|
81
|
-
{}
|
82
|
-
end
|
83
|
-
}
|
84
|
-
end
|
49
|
+
base.send("referable_contents=", [])
|
85
50
|
end
|
86
51
|
|
87
52
|
module ClassMethods
|
88
53
|
|
89
|
-
#
|
90
|
-
#
|
91
|
-
|
54
|
+
# Defines a relationship to a referable.
|
55
|
+
#
|
56
|
+
# @see Skyline::BelongsToReferable For a usage example.
|
57
|
+
#
|
58
|
+
# @overload belongs_to_referable(*fields, options = {})
|
59
|
+
# @param *fields [String,Symbol] The referable(s) to create associations to.
|
60
|
+
#
|
61
|
+
# @option options :allow_nil [true, false] (true) Allow this association to be empty?
|
62
|
+
#
|
63
|
+
# @return [void]
|
64
|
+
def belongs_to_referable(*fields)
|
92
65
|
options = fields.extract_options!.reverse_merge(:allow_nil => true)
|
93
66
|
fields.each do |f|
|
94
67
|
self.referable_contents << f
|
@@ -136,22 +109,31 @@ module Skyline::ContentItem
|
|
136
109
|
end
|
137
110
|
end
|
138
111
|
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
112
|
+
end
|
113
|
+
|
114
|
+
# @private
|
115
|
+
def clone_with_referable_content
|
116
|
+
returning clone_without_referable_content do |clone|
|
117
|
+
if self.referable_contents.any?
|
118
|
+
self.referable_contents.each do |field|
|
119
|
+
if self.send(field).present?
|
120
|
+
clone.send("#{field}_id=", nil)
|
121
|
+
clone.send("#{field}=", self.send(field).clone)
|
144
122
|
end
|
145
|
-
|
123
|
+
end
|
146
124
|
end
|
147
125
|
end
|
148
126
|
end
|
149
127
|
|
128
|
+
protected
|
129
|
+
|
150
130
|
def set_refering_type_and_id
|
151
131
|
self.referable_contents.each do |field|
|
152
|
-
if object_ref = self.send(field)
|
153
|
-
object_ref.
|
154
|
-
|
132
|
+
if object_ref = self.send(field)
|
133
|
+
unless object_ref.marked_for_destruction?
|
134
|
+
object_ref.refering_type = self.class.name
|
135
|
+
object_ref.refering_id = self.id unless self.new_record?
|
136
|
+
end
|
155
137
|
end
|
156
138
|
end
|
157
139
|
end
|
@@ -164,19 +146,6 @@ module Skyline::ContentItem
|
|
164
146
|
end
|
165
147
|
end
|
166
148
|
|
167
|
-
def clone_with_referable_content
|
168
|
-
returning clone_without_referable_content do |clone|
|
169
|
-
if self.referable_contents.any?
|
170
|
-
self.referable_contents.each do |field|
|
171
|
-
if self.send(field).present?
|
172
|
-
clone.send("#{field}_id=", nil)
|
173
|
-
clone.send("#{field}=", self.send(field).clone)
|
174
|
-
end
|
175
|
-
end
|
176
|
-
end
|
177
|
-
end
|
178
|
-
end
|
179
|
-
|
180
149
|
def possibly_destroy_previous_referables
|
181
150
|
return unless self.previous_referables
|
182
151
|
self.previous_referables.each do |field, previous_referable|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# Contains the default skyline configuration. Currently this is also
|
2
2
|
# the place to look for available configuration options.
|
3
3
|
#
|
4
|
-
# @todo This configuration class will
|
5
|
-
# for
|
4
|
+
# @todo This configuration class will someday change as it's not flexible enough
|
5
|
+
# for our purposes.
|
6
6
|
class Skyline::Configuration < Configure
|
7
7
|
|
8
8
|
defaults do |config|
|
@@ -29,12 +29,12 @@ class Skyline::Configuration < Configure
|
|
29
29
|
|
30
30
|
config.rss_section_cache_timeout = 1.hour
|
31
31
|
|
32
|
-
config.solr_indexing = false
|
33
|
-
|
34
32
|
config.custom_logo = false
|
35
33
|
config.skyline_logo = "/skyline/images/logo.png"
|
36
34
|
config.branding_name = ""
|
37
35
|
|
36
|
+
config.locale = "en-US"
|
37
|
+
|
38
38
|
# ie: [{:path => "/stylesheets/skyline.css", :if => "lte IE 7"}]
|
39
39
|
config.custom_stylesheets = []
|
40
40
|
|
@@ -55,7 +55,11 @@ class Skyline::Configuration < Configure
|
|
55
55
|
end
|
56
56
|
end
|
57
57
|
|
58
|
+
# Default URL admin prefix (default = /skyline/...)
|
59
|
+
config.url_prefix = "/skyline"
|
60
|
+
|
58
61
|
# enable/disable 'modules'
|
62
|
+
config.enable_pages = true
|
59
63
|
config.enable_multiple_variants = true
|
60
64
|
config.enable_locking = true
|
61
65
|
config.enable_enforce_only_one_user_editing = true
|
@@ -72,10 +76,8 @@ class Skyline::Configuration < Configure
|
|
72
76
|
Skyline::Sections::RssSection.cache_path = self["rss_section_cache_path"]
|
73
77
|
Skyline::Sections::RssSection.cache_timeout = self["rss_section_cache_timeout"]
|
74
78
|
|
75
|
-
Skyline::Renderer.register_renderables(:sections,self["sections"])
|
76
|
-
Skyline::Renderer.register_renderables(:articles,self["articles"] + ["Skyline::Page"])
|
77
|
-
|
78
|
-
load_dependencies
|
79
|
+
Skyline::Rendering::Renderer.register_renderables(:sections,self["sections"])
|
80
|
+
Skyline::Rendering::Renderer.register_renderables(:articles,self["articles"] + ["Skyline::Page"])
|
79
81
|
end
|
80
82
|
|
81
83
|
def articles
|
@@ -86,15 +88,12 @@ class Skyline::Configuration < Configure
|
|
86
88
|
self["content_classes"].map(&:constantize)
|
87
89
|
end
|
88
90
|
|
89
|
-
|
90
|
-
|
91
|
-
def load_dependencies
|
92
|
-
if self.solr_indexing
|
93
|
-
require "rsolr"
|
94
|
-
require "rsolr-ext"
|
95
|
-
end
|
91
|
+
def url_prefix
|
92
|
+
self["url_prefix"].gsub(/\A\//, "")
|
96
93
|
end
|
97
94
|
|
95
|
+
protected
|
96
|
+
|
98
97
|
# Check if a path is set, and if we're in production made raise an assertion
|
99
98
|
# if the path does not exist. It just creates the path in development mode.
|
100
99
|
def check_or_create_path(path, key="assets_path")
|
@@ -5,8 +5,20 @@ module Skyline::Content
|
|
5
5
|
obj.extend(KlassMethods)
|
6
6
|
|
7
7
|
if obj.ancestors.include?( ::ActiveRecord::Base)
|
8
|
-
obj.
|
9
|
-
|
8
|
+
obj.class_eval do
|
9
|
+
after_save :process_after_save
|
10
|
+
|
11
|
+
named_scope :published, lambda {
|
12
|
+
if obj.publishable?
|
13
|
+
{:conditions => {:published => true}}
|
14
|
+
else
|
15
|
+
{}
|
16
|
+
end
|
17
|
+
}
|
18
|
+
|
19
|
+
named_scope :with_site, {}
|
20
|
+
end
|
21
|
+
end
|
10
22
|
end
|
11
23
|
|
12
24
|
module KlassMethods #:nodoc:
|
@@ -0,0 +1,106 @@
|
|
1
|
+
module Skyline
|
2
|
+
|
3
|
+
# @deprecated Don't use Skyline::ContentItem anymore, use Skyline::BelongsToReferable (will be removed in 3.1.0)
|
4
|
+
module ContentItem
|
5
|
+
|
6
|
+
def self.included(base)
|
7
|
+
warn "[DEPRECATION] Don't use Skyline::ContentItem anymore, use Skyline::BelongsToReferable (will be removed in 3.1.0) [#{caller[1]}]"
|
8
|
+
|
9
|
+
base.send(:include, Skyline::BelongsToReferable)
|
10
|
+
|
11
|
+
base.class_eval do
|
12
|
+
named_scope(:published, {}) unless method_defined?(:published)
|
13
|
+
|
14
|
+
named_scope(:with_site, {}) unless method_defined?(:with_site)
|
15
|
+
end
|
16
|
+
|
17
|
+
class << base
|
18
|
+
alias_method :referable_content, :belongs_to_referable
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
# @deprecated Don't use Skyline::Referable anymore, use Skyline::HasManyReferablesIn (will be removed in 3.1.0)
|
25
|
+
module Referable
|
26
|
+
def self.included(base)
|
27
|
+
warn "[DEPRECATION] Don't use Skyline::Referable anymore, use Skyline::HasManyReferablesIn (will be removed in 3.1.0) [#{caller[1]}]"
|
28
|
+
|
29
|
+
base.send(:include, Skyline::HasManyReferablesIn)
|
30
|
+
class << base
|
31
|
+
alias_method :referable_field, :has_many_referables_in
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
# @deprecated Don't use Skyline::SectionItem anymore, use Skyline::Sections::Interface (will be removed in 3.1.0)
|
37
|
+
module SectionItem
|
38
|
+
def self.included(base)
|
39
|
+
warn "[DEPRECATION] Don't use Skyline::SectionItem anymore, use Skyline::Sections::Interface (will be removed in 3.1.0) [#{caller[1]}]"
|
40
|
+
|
41
|
+
base.send(:include, Skyline::Sections::Interface)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
# @deprecated Don't use Skyline::FormBuilderWithErrors anymore, use Skyline::FormBuilder (will be removed in 3.1.0)
|
46
|
+
module FormBuilderWithErrors
|
47
|
+
def self.included(base)
|
48
|
+
warn "[DEPRECATION] Don't use Skyline::FormBuilderWithErrors anymore, use Skyline::FormBuilder (will be removed in 3.1.0) [#{caller[1]}]"
|
49
|
+
|
50
|
+
base.send(:include, Skyline::FormBuilder)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
# @deprecated Don't use Skyline::Renderer anymore, use Skyline::Rendering::Renderer (will be removed in 3.1.0)
|
55
|
+
class Skyline::Renderer < Skyline::Rendering::Renderer
|
56
|
+
class << self
|
57
|
+
%w{renderables register_renderables renderable_types helper}.each do |m|
|
58
|
+
define_method(m) do |*args|
|
59
|
+
deprecate!
|
60
|
+
super
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
def deprecate!
|
65
|
+
warn "[DEPRECATION] Don't use Skyline::Renderer anymore, use Skyline::Rendering::Renderer (will be removed in 3.1.0) [#{caller[1]}]"
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def initialize(*args)
|
70
|
+
self.class.deprecate!
|
71
|
+
super
|
72
|
+
end
|
73
|
+
|
74
|
+
end
|
75
|
+
|
76
|
+
# @deprecated Don't use Skyline::UrlValidation anymore, use UrlValidation (will be removed in 3.1.0)
|
77
|
+
module UrlValidation
|
78
|
+
def self.extended(base)
|
79
|
+
warn "[DEPRECATION] Don't use Skyline::UrlValidation anymore, use UrlValidation (will be removed in 3.1.0) [#{caller[1]}]"
|
80
|
+
|
81
|
+
base.send(:extend, ::UrlValidation)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
|
86
|
+
module Rendering
|
87
|
+
module Helpers
|
88
|
+
module SettingsHelper
|
89
|
+
# @deprecated Will be removed 3.1 in favour of {Skyline::Settings::KlassMethods#get}
|
90
|
+
def setting(setting_identifier, field)
|
91
|
+
warn "[DEPRECATION] Don't use #setting anymore, use Settings#get (will be removed in 3.1.0) [#{caller[1]}]"
|
92
|
+
::Settings.get(setting_identifier,field)
|
93
|
+
end
|
94
|
+
|
95
|
+
# @deprecated Will be removed 3.1 in favour of {Skyline::Settings::KlassMethods#get_page}
|
96
|
+
def page_from_setting(setting_identifier, field)
|
97
|
+
warn "[DEPRECATION] Don't use #page_from_setting anymore, use Settings#get_page (will be removed in 3.1.0) [#{caller[1]}]"
|
98
|
+
::Settings.get_page(setting_identifier,field)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
# Include it in the RendererHelper for now, RendererHelper will always exist.
|
105
|
+
Rendering::Helpers::RendererHelper.send(:include, Rendering::Helpers::SettingsHelper)
|
106
|
+
end
|
@@ -3,9 +3,9 @@
|
|
3
3
|
#
|
4
4
|
# Apart from adding new helper methods, this class overwrites the standard *_field
|
5
5
|
# and *_select helpers. If one of the fields has an error, the validation errors for
|
6
|
-
# that method are added just after the field. See {Skyline::
|
6
|
+
# that method are added just after the field. See {Skyline::FormBuilder#wrap_with_error}
|
7
7
|
# for more information on what get's added.
|
8
|
-
class Skyline::
|
8
|
+
class Skyline::FormBuilder < ActionView::Helpers::FormBuilder
|
9
9
|
|
10
10
|
# Custom InstanceTag class from which we can extract the ID
|
11
11
|
# @private
|
@@ -20,7 +20,7 @@ class Skyline::FormBuilderWithErrors < ActionView::Helpers::FormBuilder
|
|
20
20
|
end
|
21
21
|
|
22
22
|
unless ActiveSupport::Dependencies.load_once_path?(__FILE__)
|
23
|
-
ActiveSupport::Dependencies.autoloaded_constants << "Skyline::
|
23
|
+
ActiveSupport::Dependencies.autoloaded_constants << "Skyline::FormBuilder::CustomInstanceTag"
|
24
24
|
end
|
25
25
|
|
26
26
|
# Overwrite all standard helpers with a wrapped version.
|
@@ -50,7 +50,7 @@ class Skyline::FormBuilderWithErrors < ActionView::Helpers::FormBuilder
|
|
50
50
|
|
51
51
|
# Same as label but automatically translates the field name
|
52
52
|
#
|
53
|
-
# @see Skyline::
|
53
|
+
# @see Skyline::FormBuilder#t
|
54
54
|
#
|
55
55
|
# @return [String]
|
56
56
|
def label_with_text(method, options = {})
|
@@ -103,7 +103,7 @@ class Skyline::FormBuilderWithErrors < ActionView::Helpers::FormBuilder
|
|
103
103
|
end
|
104
104
|
|
105
105
|
# Wrap an input element with errors, also appends "invalid" to the helpers
|
106
|
-
# class. See {Skyline::
|
106
|
+
# class. See {Skyline::FormBuilder#fieldset_errors} on how
|
107
107
|
# the errors are added.
|
108
108
|
#
|
109
109
|
# @param method [Symbol,String] The method/attribuet to check for errors
|
@@ -1,12 +1,14 @@
|
|
1
|
-
# Use this module in all models that have references to MediaFiles/
|
2
|
-
# It adds the class method `
|
1
|
+
# Use this module in all models that have references to MediaFiles/Page/URL etc via WYSWIWYG-editors
|
2
|
+
# It adds the class method `has_many_referables_in`. With {Skyline::HasManyReferablesIn::ClassMethods#has_many_referables_in} you can use any
|
3
3
|
# text/string database field to have links/images that will refer correctly to their respective
|
4
4
|
# targets through RefObject
|
5
|
+
#
|
6
|
+
# @see Skyline::BelongsToReferable If you want to use a reference to a MediaFile/Page/URL directly as an association.
|
5
7
|
#
|
6
8
|
# @example Usage:
|
7
9
|
# class Model < ActiveRecord::Base
|
8
|
-
# include Skyline::
|
9
|
-
#
|
10
|
+
# include Skyline::HasManyReferablesIn
|
11
|
+
# has_many_referables_in :body # :body is a database text/string field
|
10
12
|
# end
|
11
13
|
#
|
12
14
|
# @example Defines:
|
@@ -16,15 +18,21 @@
|
|
16
18
|
# @model.body #=> Evertyhing is converted back to it's original state
|
17
19
|
# @model.body(true) #=> The HTML includes extra attributes used for editing in the WYSIWYG-editor
|
18
20
|
#
|
19
|
-
module Skyline::
|
21
|
+
module Skyline::HasManyReferablesIn
|
20
22
|
|
21
23
|
def self.included(base)
|
22
24
|
base.extend(ClassMethods)
|
23
25
|
base.send(:before_save, :parse_referable_fields)
|
26
|
+
|
27
|
+
# Attention! We have to call it twice so it won't muck up when you create your own after_create/after_save
|
28
|
+
# callbacks.
|
29
|
+
base.send(:after_create, :update_referable_objects)
|
24
30
|
base.send(:after_save, :update_referable_objects)
|
31
|
+
|
25
32
|
base.send(:cattr_accessor, :referable_fields)
|
26
|
-
|
27
|
-
base.send(:has_many, :
|
33
|
+
|
34
|
+
base.send(:has_many, :image_refs, :class_name => "Skyline::ImageRef", :conditions => {:refering_type => base.name}, :foreign_key => :refering_id, :source_type => base.name, :dependent => :destroy)
|
35
|
+
base.send(:has_many, :link_refs, :class_name => "Skyline::LinkRef", :conditions => {:refering_type => base.name}, :foreign_key => :refering_id, :source_type => base.name, :dependent => :destroy)
|
28
36
|
|
29
37
|
base.send :alias_method_chain, :clone, :referables
|
30
38
|
end
|
@@ -39,7 +47,7 @@ module Skyline::Referable
|
|
39
47
|
# an options string which is passed to {Skyline::InlineRef#convert}
|
40
48
|
#
|
41
49
|
# @param fields [String,Symbol] The field(s) to enable the referable content for.
|
42
|
-
def
|
50
|
+
def has_many_referables_in(*fields)
|
43
51
|
self.referable_fields ||= []
|
44
52
|
|
45
53
|
fields.each do |f|
|
@@ -47,6 +55,7 @@ module Skyline::Referable
|
|
47
55
|
|
48
56
|
self.class_eval <<-END
|
49
57
|
def #{f}=(body)
|
58
|
+
self.send("#{f}_will_change!")
|
50
59
|
self.referable_field_bodies[:#{f}] = body
|
51
60
|
end
|
52
61
|
def #{f}_before_typecast
|
@@ -64,7 +73,7 @@ module Skyline::Referable
|
|
64
73
|
# Implementation of the clone interface
|
65
74
|
# @private
|
66
75
|
def clone_with_referables
|
67
|
-
|
76
|
+
clone_without_referables.tap do |clone|
|
68
77
|
if !self.referable_fields.nil?
|
69
78
|
self.referable_fields.each do |field|
|
70
79
|
clone.send("#{field}=".to_sym, self.send(field,true,{:nullify => true}))
|
@@ -83,7 +92,7 @@ module Skyline::Referable
|
|
83
92
|
# @todo Shouldn't this be protected?
|
84
93
|
def parse_referable_fields
|
85
94
|
return if self.referable_fields.nil?
|
86
|
-
|
95
|
+
|
87
96
|
updated_refs = []
|
88
97
|
self.referable_fields.each do |col|
|
89
98
|
if new_body = self.referable_field_bodies.delete(col)
|
@@ -98,8 +107,9 @@ module Skyline::Referable
|
|
98
107
|
# @private
|
99
108
|
# @todo Shouldn't this be protected?
|
100
109
|
def update_referable_objects
|
101
|
-
return if self.referable_fields.nil?
|
102
|
-
Skyline::InlineRef.update_all({:refering_id => self.id}, "id IN(#{@updated_ids})")
|
110
|
+
return if self.referable_fields.nil? || @updated_ids.blank?
|
111
|
+
Skyline::InlineRef.update_all({:refering_id => self.id}, "id IN(#{@updated_ids})")
|
112
|
+
@updated_ids = ""
|
103
113
|
end
|
104
114
|
|
105
115
|
end
|