skylinecms 3.0.8 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/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
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
require 'mocks/test_content_object.rb'
|
|
3
|
+
|
|
4
|
+
class TestContentObjectTest < ActiveSupport::TestCase
|
|
5
|
+
context "test content object" do
|
|
6
|
+
setup do
|
|
7
|
+
upload = ActionController::TestUploadedFile.new((Skyline.root + "db/fixtures/files/test.gif").to_s, "image/gif")
|
|
8
|
+
@image = Skyline::MediaFile.new(:name => "test_img.gif", :parent_id => nil, :data => upload)
|
|
9
|
+
@image.save
|
|
10
|
+
end
|
|
11
|
+
should "be able to save without an image" do
|
|
12
|
+
test_content_object = Skyline::TestContentObject.new
|
|
13
|
+
test_content_object.header = "Test"
|
|
14
|
+
|
|
15
|
+
test_content_object.save
|
|
16
|
+
assert !test_content_object.new_record?
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
should "create an object_ref when an image is linked" do
|
|
20
|
+
test_content_object = Skyline::TestContentObject.new
|
|
21
|
+
|
|
22
|
+
test_content_object.image = @image
|
|
23
|
+
test_content_object.save
|
|
24
|
+
|
|
25
|
+
ref = Skyline::ObjectRef.find_by_id(test_content_object.image_id)
|
|
26
|
+
|
|
27
|
+
assert_valid ref
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
should "remove object_ref on destroy" do
|
|
31
|
+
test_content_object = Skyline::TestContentObject.new
|
|
32
|
+
|
|
33
|
+
test_content_object.image = @image
|
|
34
|
+
test_content_object.save
|
|
35
|
+
|
|
36
|
+
old_image_id = test_content_object.image_id
|
|
37
|
+
|
|
38
|
+
test_content_object.destroy
|
|
39
|
+
|
|
40
|
+
ref = Skyline::ObjectRef.find_by_id(old_image_id)
|
|
41
|
+
assert ref.nil?
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
should "destroy the ObjectRef with image.destroy" do
|
|
45
|
+
test_content_object = Skyline::TestContentObject.new
|
|
46
|
+
|
|
47
|
+
test_content_object.image = @image
|
|
48
|
+
test_content_object.save
|
|
49
|
+
|
|
50
|
+
old_image_id = test_content_object.image_id
|
|
51
|
+
|
|
52
|
+
test_content_object.image.destroy
|
|
53
|
+
|
|
54
|
+
ref = Skyline::ObjectRef.find_by_id(old_image_id)
|
|
55
|
+
assert ref.nil?
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
should "be able to call image.dimension" do
|
|
60
|
+
test_content_object = Skyline::TestContentObject.new
|
|
61
|
+
|
|
62
|
+
test_content_object.image = @image
|
|
63
|
+
assert test_content_object.save
|
|
64
|
+
|
|
65
|
+
assert test_content_object.image.dimension.inspect
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
require 'mocks/test_section.rb'
|
|
3
|
+
|
|
4
|
+
class TestSectionTest < ActiveSupport::TestCase
|
|
5
|
+
context "test section" do
|
|
6
|
+
setup do
|
|
7
|
+
@small_image_html = "<img src='henk.jpg' skyline-ref-id='' skyline-referable-id='10' skyline-referable-type='Skyline::MediaFile' width='200' height='200'/>"
|
|
8
|
+
@small_image_no_refs = "<img src=\"broken.jpg\" height=\"200\" width=\"200\" />"
|
|
9
|
+
|
|
10
|
+
@small_link_html = "<a href=\"henk.html\" skyline-ref-id=\"\" skyline-referable-id=\"10\" skyline-referable-type=\"Skyline::MediaFile\" class=\"myLink\">my link</a>"
|
|
11
|
+
@small_link_no_refs = "<a href=\"broken\" class=\"myLink\" >my link</a>"
|
|
12
|
+
|
|
13
|
+
@big_html = "<div>
|
|
14
|
+
<a href='henk' skyline-ref-id='' skyline-referable-id='10' skyline-referable-type='Skyline::MediaFile' class='myLink'>
|
|
15
|
+
<img src='henk.jpg' skyline-ref-id='' skyline-referable-id='10' skyline-referable-type='Skyline::MediaFile' width='200' height='200'/>
|
|
16
|
+
bla <span>henk</span>
|
|
17
|
+
</a>
|
|
18
|
+
<img src='peter.jpg' skyline-ref-id='' skyline-referable-id='12' skyline-referable-type='Skyline::MediaFile' width='200' height='200'/>
|
|
19
|
+
</div>"
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
should "convert both body html fields to html with ref tags on save" do
|
|
23
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @big_html)
|
|
24
|
+
@test_section.save
|
|
25
|
+
|
|
26
|
+
outp = @test_section[:body_a]
|
|
27
|
+
assert_contains(outp, /\[REF:/)
|
|
28
|
+
|
|
29
|
+
outp = @test_section[:body_b]
|
|
30
|
+
assert_contains(outp, /\[REF:/)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
should "create 4 InlineRef Objects on save with correct refering_id" do
|
|
34
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @big_html)
|
|
35
|
+
@test_section.save
|
|
36
|
+
|
|
37
|
+
@image_refs = @test_section.image_refs.all
|
|
38
|
+
@link_refs = @test_section.link_refs.all
|
|
39
|
+
|
|
40
|
+
number_of_refs = @image_refs.size + @link_refs.size
|
|
41
|
+
assert_equal 4, number_of_refs
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
should "convert REF tags back to html on calling body_a and body_b" do
|
|
45
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @small_link_html)
|
|
46
|
+
@test_section.save
|
|
47
|
+
|
|
48
|
+
assert_equal(@small_image_no_refs, @test_section.body_a)
|
|
49
|
+
assert_equal(@small_link_no_refs, @test_section.body_b)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
should "convert REF tags back to html with skyline attributes on calling body_a('edit') and body_b('edit')" do
|
|
53
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @small_link_html)
|
|
54
|
+
@test_section.save
|
|
55
|
+
|
|
56
|
+
assert_match(/skyline-ref-id/, @test_section.body_a(true))
|
|
57
|
+
assert_match(/skyline-referable-id/, @test_section.body_a(true))
|
|
58
|
+
assert_match(/skyline-referable-type/, @test_section.body_a(true))
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
should "remove inline_ref when body_a is changed" do
|
|
62
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @big_html)
|
|
63
|
+
@test_section.save
|
|
64
|
+
|
|
65
|
+
@test_section.update_attributes(:body_a => @small_link_html)
|
|
66
|
+
|
|
67
|
+
@image_refs = @test_section.image_refs.all
|
|
68
|
+
@link_refs = @test_section.link_refs.all
|
|
69
|
+
|
|
70
|
+
number_of_refs = @image_refs.size + @link_refs.size
|
|
71
|
+
|
|
72
|
+
assert_equal 4, number_of_refs
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
should "convert html from [REF:id] tag after MediaFile has been deleted (referable_id = nil)" do
|
|
76
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @big_html)
|
|
77
|
+
@test_section.save
|
|
78
|
+
|
|
79
|
+
@ref_object = @test_section.image_refs.find(:first, :conditions => {:refering_column_name => "body_a"})
|
|
80
|
+
@ref_object.referable_id = nil
|
|
81
|
+
@ref_object.save
|
|
82
|
+
assert_equal(@small_image_no_refs, @test_section.body_a)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
should "remove ref objects when section is removed" do
|
|
86
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @big_html)
|
|
87
|
+
@test_section.save
|
|
88
|
+
|
|
89
|
+
@image_refs = @test_section.image_refs.all
|
|
90
|
+
@link_refs = @test_section.link_refs.all
|
|
91
|
+
|
|
92
|
+
number_of_refs = @image_refs.size + @link_refs.size
|
|
93
|
+
|
|
94
|
+
assert_equal 4, number_of_refs
|
|
95
|
+
|
|
96
|
+
@test_section.destroy
|
|
97
|
+
|
|
98
|
+
@image_refs = @test_section.image_refs.all
|
|
99
|
+
@link_refs = @test_section.link_refs.all
|
|
100
|
+
|
|
101
|
+
number_of_refs = @image_refs.size + @link_refs.size
|
|
102
|
+
|
|
103
|
+
assert_equal 0, number_of_refs
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
should "remove all ref objects for body_a when body_a is changed to '' " do
|
|
107
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @small_image_html)
|
|
108
|
+
@test_section.save
|
|
109
|
+
|
|
110
|
+
@image_refs = @test_section.image_refs.all
|
|
111
|
+
@link_refs = @test_section.link_refs.all
|
|
112
|
+
|
|
113
|
+
number_of_refs = @image_refs.size + @link_refs.size
|
|
114
|
+
assert_equal 2, number_of_refs
|
|
115
|
+
|
|
116
|
+
@test_section.update_attributes(:body_a => "")
|
|
117
|
+
|
|
118
|
+
@image_refs = @test_section.image_refs.all
|
|
119
|
+
@link_refs = @test_section.link_refs.all
|
|
120
|
+
|
|
121
|
+
number_of_refs = @image_refs.size + @link_refs.size
|
|
122
|
+
assert_equal 1, number_of_refs
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
should "return last modification of body_a without the need to save" do
|
|
126
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @small_image_html)
|
|
127
|
+
@test_section.save
|
|
128
|
+
|
|
129
|
+
@test_section.body_a = @big_html
|
|
130
|
+
assert_equal(@big_html, @test_section.body_a)
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
should "create 4 InlineRef Objects on save with correct refering_id and clone" do
|
|
134
|
+
@test_section = Skyline::TestSection.new(:body_a => @small_image_html, :body_b => @big_html)
|
|
135
|
+
@test_section.save
|
|
136
|
+
|
|
137
|
+
@cloned_section = @test_section.clone
|
|
138
|
+
@cloned_section.save
|
|
139
|
+
|
|
140
|
+
@image_refs = @test_section.image_refs.all
|
|
141
|
+
@link_refs = @test_section.link_refs.all
|
|
142
|
+
|
|
143
|
+
number_of_refs = @image_refs.size + @link_refs.size
|
|
144
|
+
assert_equal 4, number_of_refs
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
context "A test section" do
|
|
149
|
+
setup do
|
|
150
|
+
@html = "bla bla bla <a href='' skyline-referable-id='1' skyline-referable-type='Skyline::MediaFile' >continuïteit</a> bla bla"
|
|
151
|
+
@section = Skyline::TestSection.new(:body_a => @html)
|
|
152
|
+
assert @section.save
|
|
153
|
+
assert_equal 1, @section.link_refs.size
|
|
154
|
+
assert @section[:body_a].match(/\[REF/)
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
context "being saved with no changes to the body_a content" do
|
|
158
|
+
|
|
159
|
+
should "not remove the refs for body_a" do
|
|
160
|
+
@section.body_b = "abcdef"
|
|
161
|
+
assert @section.save
|
|
162
|
+
assert_equal 1, @section.link_refs.size
|
|
163
|
+
assert @section[:body_a].match(/\[REF/)
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
should "should keep the same refs" do
|
|
167
|
+
refs_before = @section.link_refs
|
|
168
|
+
assert @section.save
|
|
169
|
+
refs_after = @section.link_refs(true)
|
|
170
|
+
|
|
171
|
+
assert_equal refs_before,refs_after
|
|
172
|
+
end
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
context "being saved with invalid data" do
|
|
176
|
+
|
|
177
|
+
setup do
|
|
178
|
+
@section.fail_validation = true
|
|
179
|
+
assert !@section.save
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
should "not remove the refs for body_a" do
|
|
183
|
+
assert_equal 1, @section.link_refs.size
|
|
184
|
+
assert @section[:body_a].match(/\[REF/)
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
context "being saved without the sklyine attributes" do
|
|
190
|
+
setup do
|
|
191
|
+
@html = "bla bla bla <a href='' skyline-referable-id='1' skyline-referable-type='Skyline::MediaFile' >continuïteit</a> bla bla"
|
|
192
|
+
@section = Skyline::TestSection.new(:body_a => @html)
|
|
193
|
+
assert @section.save
|
|
194
|
+
assert_equal 1, @section.link_refs.size
|
|
195
|
+
assert @section[:body_a].match(/\[REF/)
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
should "should not have any link_refs anymore" do
|
|
200
|
+
@section.reload
|
|
201
|
+
assert !@section.body_a.match(/REF/)
|
|
202
|
+
@section.body_a = @section.body_a
|
|
203
|
+
assert @section.save
|
|
204
|
+
assert_equal 0, @section.link_refs.size
|
|
205
|
+
assert !@section[:body_a].match(/\[REF/)
|
|
206
|
+
end
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
context "being cloned" do
|
|
210
|
+
setup do
|
|
211
|
+
@html = "bla bla bla <a href='' skyline-referable-id='1' skyline-referable-type='Skyline::MediaFile' >continuïteit</a> bla bla"
|
|
212
|
+
@section = Skyline::TestSection.new(:body_a => @html)
|
|
213
|
+
assert @section.save
|
|
214
|
+
@section_refs = Skyline::InlineRef.hash_refs_for_object(@section,:body_a)
|
|
215
|
+
assert_equal 1, @section.link_refs.size
|
|
216
|
+
assert_equal 1, @section_refs.keys.size
|
|
217
|
+
assert @section[:body_a].match(/\[REF/)
|
|
218
|
+
@section = Skyline::TestSection.find(@section.id)
|
|
219
|
+
|
|
220
|
+
@clone = @section.clone
|
|
221
|
+
assert @clone.save
|
|
222
|
+
@clone_refs = Skyline::InlineRef.hash_refs_for_object(@clone,:body_a)
|
|
223
|
+
assert_equal 1, @clone_refs.keys.size
|
|
224
|
+
end
|
|
225
|
+
|
|
226
|
+
should "keep it's own refs" do
|
|
227
|
+
assert_equal @section_refs.keys, Skyline::InlineRef.hash_refs_for_object(@section,:body_a).keys
|
|
228
|
+
@section_refs.keys.each do |k|
|
|
229
|
+
assert @section[:body_a].match(/\[REF:#{k}\]/)
|
|
230
|
+
end
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
should "not share refs with clone" do
|
|
234
|
+
clone_keys = @clone_refs.keys
|
|
235
|
+
@section_refs.keys.each do |k|
|
|
236
|
+
assert !clone_keys.include?(k)
|
|
237
|
+
end
|
|
238
|
+
clone_keys.each do |k|
|
|
239
|
+
assert @clone[:body_a].match(/\[REF:#{k}\]/)
|
|
240
|
+
end
|
|
241
|
+
end
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
end
|
|
246
|
+
end
|
|
247
|
+
end
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
|
|
3
|
+
class UserPreferenceTest < ActiveSupport::TestCase
|
|
4
|
+
context "User preferences" do
|
|
5
|
+
setup do
|
|
6
|
+
@user_preferences1 = Factory(:user_preference, :key => "a.", :encoded_value => 1.to_yaml)
|
|
7
|
+
@user_preferences2 = Factory(:user_preference, :key => "b.a.", :encoded_value => 2.to_yaml)
|
|
8
|
+
@user_preferences3 = Factory(:user_preference, :key => "b.b.", :encoded_value => 3.to_yaml)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
should "accept individual key=>value pairs" do
|
|
12
|
+
initial_count = Skyline::UserPreference.count
|
|
13
|
+
assert Skyline::UserPreference.set("t", 5)
|
|
14
|
+
assert_equal(initial_count + 1, Skyline::UserPreference.count)
|
|
15
|
+
assert Skyline::UserPreference.has_key?("t")
|
|
16
|
+
assert_equal(5, Skyline::UserPreference.get("t"))
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
should "accept nested key=>value pairs and store individual values" do
|
|
20
|
+
initial_count = Skyline::UserPreference.count
|
|
21
|
+
assert Skyline::UserPreference.set("t",{"a" => 1, "b" => 2})
|
|
22
|
+
assert_equal(initial_count + 2, Skyline::UserPreference.count)
|
|
23
|
+
assert Skyline::UserPreference.has_key?("t.a")
|
|
24
|
+
assert_equal(1, Skyline::UserPreference.get("t.a"))
|
|
25
|
+
assert_equal(2, Skyline::UserPreference.get("t.b"))
|
|
26
|
+
assert Skyline::UserPreference.has_key?("t.b")
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
should "not accept nested key if key is value" do
|
|
30
|
+
assert Skyline::UserPreference.set("t",5)
|
|
31
|
+
assert_raise(ArgumentError){Skyline::UserPreference.set("t.a", 5)}
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
should "should accept nested key if key is hash" do
|
|
35
|
+
assert Skyline::UserPreference.set("t",{"a" => 5})
|
|
36
|
+
assert Skyline::UserPreference.set("t.b", 6)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
should "overwrite individual key=>value pair" do
|
|
40
|
+
initial_count = Skyline::UserPreference.count
|
|
41
|
+
assert Skyline::UserPreference.set("a", 5)
|
|
42
|
+
assert_equal(initial_count, Skyline::UserPreference.count)
|
|
43
|
+
assert_equal(5, Skyline::UserPreference.get("a"))
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
should "be able to return individual value" do
|
|
47
|
+
assert_equal(1, Skyline::UserPreference.get("a"))
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
should "be able to return individual nested value" do
|
|
51
|
+
assert_equal(2, Skyline::UserPreference.get("b.a"))
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
should "be able to return a hash of values" do
|
|
55
|
+
assert_equal({"a" => 2, "b" => 3}, Skyline::UserPreference.get("b"))
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
should "accept nil as value" do
|
|
59
|
+
initial_count = Skyline::UserPreference.count
|
|
60
|
+
assert Skyline::UserPreference.set("t", nil)
|
|
61
|
+
assert_equal(initial_count + 1, Skyline::UserPreference.count)
|
|
62
|
+
assert_nil Skyline::UserPreference.get("t")
|
|
63
|
+
assert Skyline::UserPreference.has_key?("t")
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
should "delete all nested preferences if value of parent is nil" do
|
|
67
|
+
initial_count = Skyline::UserPreference.count
|
|
68
|
+
assert Skyline::UserPreference.set("b", nil)
|
|
69
|
+
assert_equal(initial_count - 1, Skyline::UserPreference.count)
|
|
70
|
+
assert_nil Skyline::UserPreference.get("b")
|
|
71
|
+
assert !Skyline::UserPreference.has_key?("b.a")
|
|
72
|
+
assert !Skyline::UserPreference.has_key?("b.b")
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
should "accept boolean as value and return boolean" do
|
|
76
|
+
assert Skyline::UserPreference.set("t", false)
|
|
77
|
+
assert_equal(false, Skyline::UserPreference.get("t"))
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
should "accept array as value and return array" do
|
|
81
|
+
assert Skyline::UserPreference.set("t", [1,2,3])
|
|
82
|
+
assert_equal([1,2,3], Skyline::UserPreference.get("t"))
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
should "accept complex arrays and return correct values" do
|
|
86
|
+
test_time = Time.now
|
|
87
|
+
test_date = Date.today
|
|
88
|
+
assert Skyline::UserPreference.set("t", [1,{"a"=> {"a" => 1, "b" => 2, "c" => {"a" => 1, "b" => 2}}},"string", ["a","b","c"], test_date, test_time])
|
|
89
|
+
assert_equal([1, {"a"=> {"a" => 1, "b" => 2, "c" => {"a" => 1, "b" => 2}}},"string", ["a","b","c"], test_date, test_time], Skyline::UserPreference.get("t"))
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
should "return nil if a key does not exist" do
|
|
93
|
+
assert_nil Skyline::UserPreference.get("t.a")
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
should "return true if has_key? is queried on existing key" do
|
|
97
|
+
assert Skyline::UserPreference.has_key?("a")
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
should "return true if has_key? is queried on key with children" do
|
|
101
|
+
assert Skyline::UserPreference.has_key?("b")
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
should "return true if has_key? is queried on a nested key" do
|
|
105
|
+
assert Skyline::UserPreference.has_key?("b.a")
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
should "return false if has_key? is queried on non existing key" do
|
|
109
|
+
assert !Skyline::UserPreference.has_key?("t")
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
should "delete a key" do
|
|
113
|
+
Skyline::UserPreference.remove("a")
|
|
114
|
+
assert !Skyline::UserPreference.has_key?("a")
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
should "delete a key and its children" do
|
|
118
|
+
Skyline::UserPreference.remove("b")
|
|
119
|
+
assert !Skyline::UserPreference.has_key?("b.a")
|
|
120
|
+
assert !Skyline::UserPreference.has_key?("b")
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
|
|
3
|
+
class UserTest < ActiveSupport::TestCase
|
|
4
|
+
|
|
5
|
+
context "a user" do
|
|
6
|
+
setup do
|
|
7
|
+
load File.dirname(__FILE__) + '/../../db/fixtures/roles_and_rights.rb'
|
|
8
|
+
|
|
9
|
+
@user = Factory(:user, :name => "Test User", :email => "test@test.com")
|
|
10
|
+
assert !@user.new_record?
|
|
11
|
+
@user.force_password!("qwedsa")
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
should "be allowed a right with his role" do
|
|
15
|
+
role = Skyline::Role.find_by_name("super")
|
|
16
|
+
|
|
17
|
+
@user.grants.create(:role => role)
|
|
18
|
+
|
|
19
|
+
assert @user.allow?(:media_dir_create)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
should "be able to have multiple roles" do
|
|
23
|
+
role_1 = Skyline::Role.find_by_name("editor")
|
|
24
|
+
role_2 = Skyline::Role.find_by_name("admin")
|
|
25
|
+
|
|
26
|
+
@user.grants.create(:role => role_1)
|
|
27
|
+
@user.grants.create(:role => role_2)
|
|
28
|
+
|
|
29
|
+
assert_equal 2, @user.grants.size
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
should "be allowed a right if it's in one of his multiple roles" do
|
|
33
|
+
role_1 = Skyline::Role.find_by_name("super")
|
|
34
|
+
role_2 = Skyline::Role.find_by_name("super")
|
|
35
|
+
|
|
36
|
+
@user.grants.create(:role => role_1)
|
|
37
|
+
@user.grants.create(:role => role_2)
|
|
38
|
+
|
|
39
|
+
assert @user.allow?(:media_dir_create)
|
|
40
|
+
assert @user.allow?(:user_create) # only as an admin
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
context "that has been destroyed" do
|
|
44
|
+
setup do
|
|
45
|
+
@user = Factory(:user, :name => "destroyer", :email => "destroy@test.com")
|
|
46
|
+
assert !@user.new_record?
|
|
47
|
+
@user.force_password!("qwedsa")
|
|
48
|
+
role = Skyline::Role.find_by_name("admin")
|
|
49
|
+
@user.grants.create(:role => role)
|
|
50
|
+
|
|
51
|
+
assert_equal 1, @user.grants.size
|
|
52
|
+
assert !@user.destroyed?
|
|
53
|
+
|
|
54
|
+
assert_equal @user, Skyline::User.authenticate("destroy@test.com","qwedsa")
|
|
55
|
+
assert @user.destroy
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
should "set the destroyed flag on #destroy" do
|
|
59
|
+
assert @user.is_destroyed?
|
|
60
|
+
end
|
|
61
|
+
should "not be removed from the database" do
|
|
62
|
+
assert Skyline::User.find_by_id_and_is_destroyed(@user.id,true)
|
|
63
|
+
end
|
|
64
|
+
should "not be able to authenticate" do
|
|
65
|
+
assert !Skyline::User.authenticate("destroy@test.com","qwedsa")
|
|
66
|
+
end
|
|
67
|
+
should "not have any grants" do
|
|
68
|
+
user = Skyline::User.find_by_id(@user.id)
|
|
69
|
+
assert_equal 0, user.grants.size
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
module UserAccessHelper
|
|
2
|
+
module UserAssertion
|
|
3
|
+
def allow(http_method,path,params={})
|
|
4
|
+
send(http_method,path,params)
|
|
5
|
+
assert((response.success? || response.redirect?), "Response was #{response.inspect}")
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
def deny(http_method,path,params={})
|
|
9
|
+
send(http_method,path,params)
|
|
10
|
+
assert_response :unauthorized
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def login(user,pw)
|
|
16
|
+
open_session do |s|
|
|
17
|
+
s.extend(UserAssertion)
|
|
18
|
+
s.post "/skyline/authentication", :email => user.email, :password => pw
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def build_complete_environment
|
|
23
|
+
@media_dir = Factory(:media_dir, :type => "Skyline::MediaDir")
|
|
24
|
+
assert !@media_dir.new_record?
|
|
25
|
+
|
|
26
|
+
@media_sub_dir = Factory(:media_dir, :type => "Skyline::MediaDir", :directory => @media_dir)
|
|
27
|
+
assert !@media_sub_dir.new_record?
|
|
28
|
+
|
|
29
|
+
@media_file = Factory(:media_file, :parent_id => @media_dir.id, :type => "Skyline::MediaFile")
|
|
30
|
+
assert !@media_file.new_record?
|
|
31
|
+
|
|
32
|
+
@user = Factory(:user, :name => "Test User", :email => "test@test.com")
|
|
33
|
+
assert !@user.new_record?
|
|
34
|
+
@user.force_password!("qwedsa")
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In tristique sapien in tellus dapibus tincidunt. Ut eu tortor vitae quam eleifend lacinia. Nulla facilisi. Vivamus purus. Integer ultrices commodo pede. Sed rutrum, sapien vel tempor porta, turpis justo malesuada nisl, quis vestibulum leo augue laoreet [TAG3] lacus. Pellentesque mollis, ante ut sodales ullamcorper, erat tellus facilisis ipsum, et ornare urna nunc quis est. Etiam nibh elit, consectetuer nec, pretium eu, rutrum sed, arcu. Nunc sit amet metus nec orci consequat semper. Nullam iaculis felis vitae metus. Pellentesque molestie. Sed quis nisi ut eros placerat posuere. Aenean pellentesque nunc non arcu. Vivamus mauris. Nulla lorem. Curabitur tellus nisl, porta eget, vehicula eu, consequat id, tortor. Sed vitae est. Donec id diam eu tellus faucibus commodo. Aliquam vel turpis vel urna blandit malesuada. Nulla dui. "[TAG1]"
|
|
2
|
+
|
|
3
|
+
Cras sit amet ante sit amet elit tincidunt fermentum. Vivamus hendrerit, nulla non elementum rutrum, nulla libero auctor nunc, vulputate malesuada nisi sapien non velit. Nam eu felis. Vivamus ac mi et ipsum egestas congue. Pellentesque eu odio vitae diam molestie venenatis. Sed eleifend nulla ut ipsum. Nam tincidunt ultrices neque. Duis erat. Sed ipsum arcu, laoreet eget, rutrum quis, accumsan at, arcu. Pellentesque eu ipsum a felis pulvinar laoreet.[TAG4] Sed viverra est vitae turpis. Maecenas tortor metus, aliquet et, ullamcorper auctor, mattis quis, leo. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. [TAG3] Mauris ut eros sed ipsum facilisis nonummy. Fusce pretium, magna vestibulum semper nonummy, purus eros scelerisque mi, id luctus est nulla eget ante. Suspendisse quis nibh. Nullam pharetra tristique augue. Integer porta luctus ligula. Sed tincidunt.
|
|
4
|
+
|
|
5
|
+
Fusce varius commodo lacus. Nullam tincidunt [TAG2] massa lobortis sapien. Sed turpis erat, hendrerit nec, fringilla eu, congue semper, tortor. Ut eget tellus sed mauris pellentesque imperdiet. Sed elementum dictum ipsum. Ut pharetra. Sed eleifend cras amet.
|
|
6
|
+
[TAG1][TAG1][TAG1][TAG1][TAG1][TAG1][TAG1][TAG1][TAG1][TAG1][TAG1][TAG1]
|
|
7
|
+
|
|
8
|
+
[NONEXISTANT][NONEXISTANT][NONEXISTANT][NONEXISTANT][NONEXISTANT][NONEXISTANT]
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + "/../vendor/treetop/lib/treetop"
|
|
2
|
+
|
|
3
|
+
require '../lib/parser/personify_node_classes'
|
|
4
|
+
Treetop.load "../lib/parser/personify"
|
|
5
|
+
|
|
6
|
+
# STR = "a [TAG] is never [TAG] with [TAG2] and [troepie] bla"
|
|
7
|
+
# STR = "[A1|B1|\"str\"] [A1|B1|str] [AB(T1)]"
|
|
8
|
+
STR = "[AND(\"1\", 2,3)] <a href=\"http://mlr1.nl/r/[TOKEN]/539\"> financiële"
|
|
9
|
+
@parser = PersonifyLanguageParser.new
|
|
10
|
+
|
|
11
|
+
if result = @parser.parse(STR)
|
|
12
|
+
puts "done"
|
|
13
|
+
puts result
|
|
14
|
+
puts result.inspect
|
|
15
|
+
puts result.eval(
|
|
16
|
+
:t1 => "tt",
|
|
17
|
+
:tag => "henk",
|
|
18
|
+
:ab => Proc.new{|p| p.inspect },
|
|
19
|
+
:and => Proc.new{|*c| c.join(" & ") }
|
|
20
|
+
).inspect
|
|
21
|
+
else
|
|
22
|
+
puts "FAIL"
|
|
23
|
+
puts @parser.inspect
|
|
24
|
+
puts @parser.terminal_failures.join("\n")
|
|
25
|
+
end
|