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,1438 +0,0 @@
|
|
1
|
-
$(window).load(function() {
|
2
|
-
/**
|
3
|
-
* Fakes a mouse event.
|
4
|
-
*
|
5
|
-
* @param {Element/String} e DOM element object or element id to send fake event to.
|
6
|
-
* @param {String} na Event name to fake like "click".
|
7
|
-
* @param {Object} o Optional object with data to send with the event like cordinates.
|
8
|
-
*/
|
9
|
-
function fakeMouseEvent(e, na, o) {
|
10
|
-
var ev;
|
11
|
-
|
12
|
-
o = tinymce.extend({
|
13
|
-
screenX : 0,
|
14
|
-
screenY : 0,
|
15
|
-
clientX : 0,
|
16
|
-
clientY : 0
|
17
|
-
}, o);
|
18
|
-
|
19
|
-
e = tinymce.DOM.get(e);
|
20
|
-
|
21
|
-
if (e.fireEvent) {
|
22
|
-
ev = document.createEventObject();
|
23
|
-
tinymce.extend(ev, o);
|
24
|
-
e.fireEvent('on' + na, ev);
|
25
|
-
return;
|
26
|
-
}
|
27
|
-
|
28
|
-
ev = document.createEvent('MouseEvents');
|
29
|
-
|
30
|
-
if (ev.initMouseEvent)
|
31
|
-
ev.initMouseEvent(na, true, true, window, 1, o.screenX, o.screenY, o.clientX, o.clientY, false, false, true, false, 0, null);
|
32
|
-
|
33
|
-
e.dispatchEvent(ev);
|
34
|
-
};
|
35
|
-
|
36
|
-
/**
|
37
|
-
* Fakes a key event.
|
38
|
-
*
|
39
|
-
* @param {Element/String} e DOM element object or element id to send fake event to.
|
40
|
-
* @param {String} na Event name to fake like "keydown".
|
41
|
-
* @param {Object} o Optional object with data to send with the event like keyCode and charCode.
|
42
|
-
*/
|
43
|
-
function fakeKeyEvent(e, na, o) {
|
44
|
-
var ev;
|
45
|
-
|
46
|
-
o = tinymce.extend({
|
47
|
-
keyCode : 13,
|
48
|
-
charCode : 0
|
49
|
-
}, o);
|
50
|
-
|
51
|
-
e = tinymce.DOM.get(e);
|
52
|
-
|
53
|
-
if (e.fireEvent) {
|
54
|
-
ev = document.createEventObject();
|
55
|
-
tinymce.extend(ev, o);
|
56
|
-
e.fireEvent('on' + na, ev);
|
57
|
-
return;
|
58
|
-
}
|
59
|
-
|
60
|
-
if (document.createEvent) {
|
61
|
-
try {
|
62
|
-
// Fails in Safari
|
63
|
-
ev = document.createEvent('KeyEvents');
|
64
|
-
ev.initKeyEvent(na, true, true, window, false, false, false, false, o.keyCode, o.charCode);
|
65
|
-
} catch (ex) {
|
66
|
-
ev = document.createEvent('Events');
|
67
|
-
ev.initEvent(na, true, true);
|
68
|
-
|
69
|
-
ev.keyCode = o.keyCode;
|
70
|
-
ev.charCode = o.charCode;
|
71
|
-
}
|
72
|
-
} else {
|
73
|
-
ev = document.createEvent('UIEvents');
|
74
|
-
|
75
|
-
if (ev.initUIEvent)
|
76
|
-
ev.initUIEvent(na, true, true, window, 1);
|
77
|
-
|
78
|
-
ev.keyCode = o.keyCode;
|
79
|
-
ev.charCode = o.charCode;
|
80
|
-
}
|
81
|
-
|
82
|
-
e.dispatchEvent(ev);
|
83
|
-
};
|
84
|
-
|
85
|
-
(function() {
|
86
|
-
test('tinymce - is', function() {
|
87
|
-
expect(9);
|
88
|
-
|
89
|
-
ok(!tinymce.is(null, 'test'));
|
90
|
-
ok(!tinymce.is('', 'test'));
|
91
|
-
ok(tinymce.is('', 'string'));
|
92
|
-
ok(tinymce.is(3, 'number'));
|
93
|
-
ok(tinymce.is(3.1, 'number'));
|
94
|
-
ok(tinymce.is([], 'array'));
|
95
|
-
ok(tinymce.is({}, 'object'));
|
96
|
-
ok(tinymce.is(window.abc, 'undefined'));
|
97
|
-
ok(!tinymce.is(window.abc));
|
98
|
-
});
|
99
|
-
|
100
|
-
test('tinymce - each', function() {
|
101
|
-
var c;
|
102
|
-
|
103
|
-
expect(6);
|
104
|
-
|
105
|
-
c = 0;
|
106
|
-
tinymce.each([1, 2, 3], function(v) {
|
107
|
-
c += v;
|
108
|
-
});
|
109
|
-
equals(c, 6);
|
110
|
-
|
111
|
-
c = 0;
|
112
|
-
tinymce.each([1, 2, 3], function(v, i) {
|
113
|
-
c += i;
|
114
|
-
});
|
115
|
-
equals(c, 3);
|
116
|
-
|
117
|
-
c = 0;
|
118
|
-
tinymce.each({a : 1, b : 2, c : 3}, function(v, i) {
|
119
|
-
c += v;
|
120
|
-
});
|
121
|
-
equals(c, 6);
|
122
|
-
|
123
|
-
c = '';
|
124
|
-
tinymce.each({a : 1, b : 2, c : 3}, function(v, k) {
|
125
|
-
c += k;
|
126
|
-
});
|
127
|
-
equals(c, 'abc');
|
128
|
-
|
129
|
-
c = 0;
|
130
|
-
tinymce.each(null, function(v) {
|
131
|
-
c += v;
|
132
|
-
});
|
133
|
-
equals(c, 0);
|
134
|
-
|
135
|
-
c = 0;
|
136
|
-
tinymce.each(1, function(v) {
|
137
|
-
c += v;
|
138
|
-
});
|
139
|
-
equals(c, 0);
|
140
|
-
});
|
141
|
-
|
142
|
-
test('tinymce - map', function() {
|
143
|
-
var c;
|
144
|
-
|
145
|
-
expect(1);
|
146
|
-
|
147
|
-
c = tinymce.map([1,2,3], function(v) {
|
148
|
-
return v + 1;
|
149
|
-
});
|
150
|
-
equals(c.join(','), '2,3,4');
|
151
|
-
});
|
152
|
-
|
153
|
-
test('tinymce - grep', function() {
|
154
|
-
var c;
|
155
|
-
|
156
|
-
expect(3);
|
157
|
-
|
158
|
-
c = tinymce.grep([1,2,3,4], function(v) {
|
159
|
-
return v > 2;
|
160
|
-
});
|
161
|
-
equals(c.join(','), '3,4');
|
162
|
-
|
163
|
-
c = [1,2,3,4];
|
164
|
-
c.test = 1
|
165
|
-
c = tinymce.grep(c);
|
166
|
-
ok(!c.test);
|
167
|
-
equals(c.join(','), '1,2,3,4');
|
168
|
-
});
|
169
|
-
|
170
|
-
test('tinymce - explode', function() {
|
171
|
-
expect(2);
|
172
|
-
|
173
|
-
equals(tinymce.explode(' a, b, c ').join(','), 'a,b,c');
|
174
|
-
equals(tinymce.explode(' a; b; c ', ';').join(','), 'a,b,c');
|
175
|
-
});
|
176
|
-
|
177
|
-
test('tinymce - inArray', function() {
|
178
|
-
expect(4);
|
179
|
-
|
180
|
-
equals(tinymce.inArray([1,2,3], 2), 1);
|
181
|
-
equals(tinymce.inArray([1,2,3], 7), -1);
|
182
|
-
equals(tinymce.inArray({a : 1, b : 2, c : 3}, 2), -1);
|
183
|
-
equals(tinymce.inArray(null, 7), -1);
|
184
|
-
});
|
185
|
-
|
186
|
-
test('tinymce - extend', function() {
|
187
|
-
var o;
|
188
|
-
|
189
|
-
expect(5);
|
190
|
-
|
191
|
-
o = tinymce.extend({
|
192
|
-
a : 1,
|
193
|
-
b : 2,
|
194
|
-
c : 3
|
195
|
-
}, {
|
196
|
-
a : 2,
|
197
|
-
d : 4
|
198
|
-
});
|
199
|
-
|
200
|
-
equals(o.a, 2);
|
201
|
-
equals(o.b, 2);
|
202
|
-
equals(o.d, 4);
|
203
|
-
|
204
|
-
o = tinymce.extend({
|
205
|
-
a : 1,
|
206
|
-
b : 2,
|
207
|
-
c : 3
|
208
|
-
}, {
|
209
|
-
a : 2,
|
210
|
-
d : 4
|
211
|
-
}, {
|
212
|
-
e : 5
|
213
|
-
});
|
214
|
-
|
215
|
-
equals(o.d, 4);
|
216
|
-
equals(o.e, 5);
|
217
|
-
});
|
218
|
-
|
219
|
-
test('tinymce - trim', function() {
|
220
|
-
expect(5);
|
221
|
-
|
222
|
-
equals(tinymce.trim('a'), 'a');
|
223
|
-
equals(tinymce.trim(' \r a'), 'a');
|
224
|
-
equals(tinymce.trim('a \n '), 'a');
|
225
|
-
equals(tinymce.trim(' a \t '), 'a');
|
226
|
-
equals(tinymce.trim(null), '');
|
227
|
-
});
|
228
|
-
|
229
|
-
test('tinymce - create', function() {
|
230
|
-
var o;
|
231
|
-
|
232
|
-
expect(13);
|
233
|
-
|
234
|
-
tinymce.create('tinymce.Test1', {
|
235
|
-
Test1 : function(c) {
|
236
|
-
this.c = c;
|
237
|
-
this.c++;
|
238
|
-
},
|
239
|
-
|
240
|
-
method1 : function() {
|
241
|
-
this.c++;
|
242
|
-
},
|
243
|
-
|
244
|
-
method2 : function() {
|
245
|
-
this.c++;
|
246
|
-
}
|
247
|
-
});
|
248
|
-
|
249
|
-
tinymce.create('tinymce.Test2:tinymce.Test1', {
|
250
|
-
Test2 : function(c) {
|
251
|
-
this.parent(c);
|
252
|
-
this.c += 2;
|
253
|
-
},
|
254
|
-
|
255
|
-
method1 : function() {
|
256
|
-
this.c+=2;
|
257
|
-
},
|
258
|
-
|
259
|
-
method2 : function() {
|
260
|
-
this.parent();
|
261
|
-
this.c+=2;
|
262
|
-
}
|
263
|
-
});
|
264
|
-
|
265
|
-
tinymce.create('tinymce.Test3:tinymce.Test2', {
|
266
|
-
Test3 : function(c) {
|
267
|
-
this.parent(c);
|
268
|
-
this.c += 4;
|
269
|
-
},
|
270
|
-
|
271
|
-
method1 : function() {
|
272
|
-
this.c+=2;
|
273
|
-
},
|
274
|
-
|
275
|
-
method2 : function() {
|
276
|
-
this.parent();
|
277
|
-
this.c+=3;
|
278
|
-
}
|
279
|
-
});
|
280
|
-
|
281
|
-
tinymce.create('tinymce.Test4:tinymce.Test3', {
|
282
|
-
method2 : function() {
|
283
|
-
this.parent();
|
284
|
-
this.c+=3;
|
285
|
-
},
|
286
|
-
|
287
|
-
'static' : {
|
288
|
-
method3 : function() {
|
289
|
-
return 3;
|
290
|
-
}
|
291
|
-
}
|
292
|
-
});
|
293
|
-
|
294
|
-
tinymce.create('static tinymce.Test5', {
|
295
|
-
method1 : function() {
|
296
|
-
return 3;
|
297
|
-
}
|
298
|
-
});
|
299
|
-
|
300
|
-
o = new tinymce.Test1(3);
|
301
|
-
equals(o.c, 4);
|
302
|
-
o.method1();
|
303
|
-
equals(o.c, 5);
|
304
|
-
|
305
|
-
o = new tinymce.Test2(3);
|
306
|
-
equals(o.c, 6);
|
307
|
-
o.method1();
|
308
|
-
equals(o.c, 8);
|
309
|
-
o.method2();
|
310
|
-
equals(o.c, 11);
|
311
|
-
|
312
|
-
o = new tinymce.Test3(3);
|
313
|
-
equals(o.c, 10);
|
314
|
-
o.method1();
|
315
|
-
equals(o.c, 12);
|
316
|
-
o.method2();
|
317
|
-
equals(o.c, 18);
|
318
|
-
|
319
|
-
o = new tinymce.Test4(3);
|
320
|
-
equals(o.c, 10);
|
321
|
-
o.method1();
|
322
|
-
equals(o.c, 12);
|
323
|
-
o.method2();
|
324
|
-
equals(o.c, 21);
|
325
|
-
equals(tinymce.Test4.method3(), 3);
|
326
|
-
|
327
|
-
equals(tinymce.Test5.method1(), 3);
|
328
|
-
});
|
329
|
-
|
330
|
-
test('tinymce - walk', function() {
|
331
|
-
var c;
|
332
|
-
|
333
|
-
expect(3);
|
334
|
-
|
335
|
-
c = 0;
|
336
|
-
tinymce.walk({
|
337
|
-
a : {
|
338
|
-
a1 : 1,
|
339
|
-
a2 : 2,
|
340
|
-
a3 : 3
|
341
|
-
},
|
342
|
-
|
343
|
-
b : {
|
344
|
-
b1 : 4,
|
345
|
-
b2 : {
|
346
|
-
b21 : 5,
|
347
|
-
b22 : 6,
|
348
|
-
b23 : 7
|
349
|
-
},
|
350
|
-
b3 : 8
|
351
|
-
}
|
352
|
-
}, function(v) {
|
353
|
-
if (tinymce.is(v, 'number'))
|
354
|
-
c += v;
|
355
|
-
});
|
356
|
-
equals(c, 36);
|
357
|
-
|
358
|
-
c = 0;
|
359
|
-
tinymce.walk({
|
360
|
-
items : [
|
361
|
-
1,
|
362
|
-
{items : [2, {a1 : 3, items : [4, 5], b1 : 6}, 7]},
|
363
|
-
8
|
364
|
-
]
|
365
|
-
}, function(v) {
|
366
|
-
if (tinymce.is(v, 'number'))
|
367
|
-
c += v;
|
368
|
-
}, 'items');
|
369
|
-
equals(c, 27);
|
370
|
-
|
371
|
-
c = 0;
|
372
|
-
tinymce.walk(null);
|
373
|
-
equals(c, 0);
|
374
|
-
});
|
375
|
-
|
376
|
-
test('tinymce - createNS', function() {
|
377
|
-
expect(2);
|
378
|
-
|
379
|
-
tinymce.createNS('a.b.c.d.e');
|
380
|
-
a.b.c.d.e.x = 1;
|
381
|
-
tinymce.createNS('a.b.c.d.e.f');
|
382
|
-
a.b.c.d.e.f = 2;
|
383
|
-
equals(a.b.c.d.e.x, 1);
|
384
|
-
equals(a.b.c.d.e.f, 2);
|
385
|
-
});
|
386
|
-
|
387
|
-
test('tinymce - get', function() {
|
388
|
-
expect(2);
|
389
|
-
|
390
|
-
tinymce.createNS('a.b.c.d.e');
|
391
|
-
a.b.c.d.e.x = 1;
|
392
|
-
equals(tinymce.resolve('a.b.c.d.e.x'), 1);
|
393
|
-
ok(!tinymce.resolve('a.b.c.d.e.y'));
|
394
|
-
});
|
395
|
-
})();
|
396
|
-
|
397
|
-
(function() {
|
398
|
-
var DOM = new tinymce.dom.DOMUtils(document, {keep_values : true});
|
399
|
-
|
400
|
-
test('tinymce.dom.DOMUtils - parseStyle', function() {
|
401
|
-
var dom;
|
402
|
-
|
403
|
-
expect(9);
|
404
|
-
|
405
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
406
|
-
|
407
|
-
dom = new tinymce.dom.DOMUtils(document, {hex_colors : true, keep_values : true, url_converter : function(u, n, e) {
|
408
|
-
return 'X' + u + 'Y';
|
409
|
-
}});
|
410
|
-
|
411
|
-
equals(
|
412
|
-
dom.serializeStyle(dom.parseStyle('border: 1px solid red; color: green')),
|
413
|
-
'border: 1px solid red; color: green;'
|
414
|
-
);
|
415
|
-
|
416
|
-
equals(
|
417
|
-
dom.serializeStyle(dom.parseStyle('border: 1px solid rgb(0, 255, 255); color: green')),
|
418
|
-
'border: 1px solid #00ffff; color: green;'
|
419
|
-
);
|
420
|
-
|
421
|
-
equals(
|
422
|
-
dom.serializeStyle(dom.parseStyle('border-top: 1px solid red; border-left: 1px solid red; border-bottom: 1px solid red; border-right: 1px solid red;')),
|
423
|
-
'border: 1px solid red;'
|
424
|
-
);
|
425
|
-
|
426
|
-
equals(
|
427
|
-
dom.serializeStyle(dom.parseStyle('background: transparent url(test.gif);')),
|
428
|
-
'background: transparent url(Xtest.gifY);'
|
429
|
-
);
|
430
|
-
|
431
|
-
equals(
|
432
|
-
dom.serializeStyle(dom.parseStyle('background: transparent url(http://www.site.com/test.gif?a=1&b=2);')),
|
433
|
-
'background: transparent url(Xhttp://www.site.com/test.gif?a=1&b=2Y);'
|
434
|
-
);
|
435
|
-
|
436
|
-
dom.setHTML('test', '<span id="test2" style="border: 1px solid #00ff00;"></span>');
|
437
|
-
equals(dom.getAttrib('test2', 'style'), 'border: 1px solid #00ff00;');
|
438
|
-
|
439
|
-
dom.setHTML('test', '<span id="test2" style="background-image: url(test.gif);"></span>');
|
440
|
-
equals(dom.getAttrib('test2', 'style'), 'background-image: url(Xtest.gifY);');
|
441
|
-
|
442
|
-
dom.get('test').innerHTML = '<span id="test2" style="border: 1px solid #00ff00"></span>';
|
443
|
-
equals(dom.getAttrib('test2', 'style'), tinymce.isIE ? 'border: #00ff00 1px solid;' : 'border: 1px solid #00ff00;'); // IE has a separate output
|
444
|
-
|
445
|
-
dom.get('test').innerHTML = '<span id="test2" style="background-image: url(http://www.site.com/test.gif);"></span>';
|
446
|
-
equals(dom.getAttrib('test2', 'style'), 'background-image: url(Xhttp://www.site.com/test.gifY);');
|
447
|
-
|
448
|
-
DOM.remove('test');
|
449
|
-
});
|
450
|
-
|
451
|
-
test('tinymce.dom.DOMUtils - addClass', function() {
|
452
|
-
expect(10);
|
453
|
-
|
454
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
455
|
-
|
456
|
-
DOM.get('test').className = '';
|
457
|
-
DOM.addClass('test', 'abc');
|
458
|
-
equals(DOM.get('test').className, 'abc');
|
459
|
-
|
460
|
-
DOM.get('test').className = '';
|
461
|
-
equals(DOM.addClass('test', 'abc'), 'abc');
|
462
|
-
equals(DOM.addClass(null, 'abc'), false);
|
463
|
-
|
464
|
-
DOM.addClass('test', '123');
|
465
|
-
equals(DOM.get('test').className, 'abc 123');
|
466
|
-
|
467
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
468
|
-
DOM.addClass(DOM.select('span', 'test'), 'abc');
|
469
|
-
equals(DOM.get('test2').className, 'abc');
|
470
|
-
equals(DOM.get('test3').className, 'abc');
|
471
|
-
equals(DOM.get('test4').className, 'abc');
|
472
|
-
DOM.get('test').innerHTML = '';
|
473
|
-
|
474
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
475
|
-
DOM.addClass(['test2', 'test3', 'test4'], 'abc');
|
476
|
-
equals(DOM.get('test2').className, 'abc');
|
477
|
-
equals(DOM.get('test3').className, 'abc');
|
478
|
-
equals(DOM.get('test4').className, 'abc');
|
479
|
-
DOM.get('test').innerHTML = '';
|
480
|
-
|
481
|
-
DOM.remove('test');
|
482
|
-
});
|
483
|
-
|
484
|
-
test('tinymce.dom.DOMUtils - removeClass', function() {
|
485
|
-
expect(4);
|
486
|
-
|
487
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
488
|
-
|
489
|
-
DOM.get('test').className = 'abc 123 xyz';
|
490
|
-
DOM.removeClass('test', '123');
|
491
|
-
equals(DOM.get('test').className, 'abc xyz');
|
492
|
-
|
493
|
-
DOM.get('test').innerHTML = '<span id="test2" class="test1"></span><span id="test3" class="test test1 test"></span><span id="test4" class="test1 test"></span>';
|
494
|
-
DOM.removeClass(DOM.select('span', 'test'), 'test1');
|
495
|
-
equals(DOM.get('test2').className, '');
|
496
|
-
equals(DOM.get('test3').className, 'test test');
|
497
|
-
equals(DOM.get('test4').className, 'test');
|
498
|
-
DOM.get('test').innerHTML = '';
|
499
|
-
|
500
|
-
DOM.remove('test');
|
501
|
-
});
|
502
|
-
|
503
|
-
test('tinymce.dom.DOMUtils - hasClass', function() {
|
504
|
-
expect(7);
|
505
|
-
|
506
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
507
|
-
|
508
|
-
DOM.get('test').className = 'abc 123 xyz';
|
509
|
-
ok(DOM.hasClass('test', 'abc'));
|
510
|
-
ok(DOM.hasClass('test', '123'));
|
511
|
-
ok(DOM.hasClass('test', 'xyz'));
|
512
|
-
ok(!DOM.hasClass('test', 'aaa'));
|
513
|
-
|
514
|
-
DOM.get('test').className = 'abc';
|
515
|
-
ok(DOM.hasClass('test', 'abc'));
|
516
|
-
|
517
|
-
DOM.get('test').className = 'aaa abc';
|
518
|
-
ok(DOM.hasClass('test', 'abc'));
|
519
|
-
|
520
|
-
DOM.get('test').className = 'abc aaa';
|
521
|
-
ok(DOM.hasClass('test', 'abc'));
|
522
|
-
|
523
|
-
DOM.remove('test');
|
524
|
-
});
|
525
|
-
|
526
|
-
test('tinymce.dom.DOMUtils - add', function() {
|
527
|
-
var e;
|
528
|
-
|
529
|
-
expect(5);
|
530
|
-
|
531
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
532
|
-
|
533
|
-
DOM.add('test', 'span', {'class' : 'abc 123'}, 'content <b>abc</b>');
|
534
|
-
e = DOM.get('test').getElementsByTagName('span')[0];
|
535
|
-
equals(e.className, 'abc 123');
|
536
|
-
equals(e.innerHTML.toLowerCase(), 'content <b>abc</b>');
|
537
|
-
DOM.remove(e);
|
538
|
-
|
539
|
-
DOM.add('test', 'span', {'class' : 'abc 123'});
|
540
|
-
e = DOM.get('test').getElementsByTagName('span')[0];
|
541
|
-
equals(e.className, 'abc 123');
|
542
|
-
DOM.remove(e);
|
543
|
-
|
544
|
-
DOM.add('test', 'span');
|
545
|
-
e = DOM.get('test').getElementsByTagName('span')[0];
|
546
|
-
equals(e.nodeName, 'SPAN');
|
547
|
-
DOM.remove(e);
|
548
|
-
|
549
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
550
|
-
DOM.add(['test2', 'test3', 'test4'], 'span', {'class' : 'abc 123'});
|
551
|
-
equals(DOM.select('span', 'test').length, 6);
|
552
|
-
|
553
|
-
DOM.remove('test');
|
554
|
-
});
|
555
|
-
|
556
|
-
test('tinymce.dom.DOMUtils - create', function() {
|
557
|
-
var e;
|
558
|
-
|
559
|
-
expect(3);
|
560
|
-
|
561
|
-
e = DOM.create('span', {'class' : 'abc 123'}, 'content <b>abc</b>');
|
562
|
-
|
563
|
-
equals(e.nodeName, 'SPAN');
|
564
|
-
equals(e.className, 'abc 123');
|
565
|
-
equals(e.innerHTML.toLowerCase(), 'content <b>abc</b>');
|
566
|
-
});
|
567
|
-
|
568
|
-
test('tinymce.dom.DOMUtils - createHTML', function() {
|
569
|
-
expect(4);
|
570
|
-
|
571
|
-
equals(DOM.createHTML('span', {'id' : 'id1', 'class' : 'abc 123'}, 'content <b>abc</b>'), '<span id="id1" class="abc 123">content <b>abc</b></span>');
|
572
|
-
equals(DOM.createHTML('span', {'id' : 'id1', 'class' : 'abc 123'}), '<span id="id1" class="abc 123" />');
|
573
|
-
equals(DOM.createHTML('span'), '<span />');
|
574
|
-
equals(DOM.createHTML('span', null, 'content <b>abc</b>'), '<span>content <b>abc</b></span>');
|
575
|
-
});
|
576
|
-
|
577
|
-
test('tinymce.dom.DOMUtils - uniqueId', function() {
|
578
|
-
DOM.counter = 0;
|
579
|
-
|
580
|
-
expect(3);
|
581
|
-
|
582
|
-
equals(DOM.uniqueId(), 'mce_0');
|
583
|
-
equals(DOM.uniqueId(), 'mce_1');
|
584
|
-
equals(DOM.uniqueId(), 'mce_2');
|
585
|
-
});
|
586
|
-
|
587
|
-
test('tinymce.dom.DOMUtils - showHide', function() {
|
588
|
-
expect(10);
|
589
|
-
|
590
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
591
|
-
|
592
|
-
DOM.show('test');
|
593
|
-
equals(DOM.get('test').style.display, 'block');
|
594
|
-
ok(!DOM.isHidden('test'));
|
595
|
-
|
596
|
-
DOM.hide('test');
|
597
|
-
equals(DOM.get('test').style.display, 'none');
|
598
|
-
ok(DOM.isHidden('test'));
|
599
|
-
|
600
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
601
|
-
DOM.hide(['test2', 'test3', 'test4'], 'test');
|
602
|
-
equals(DOM.get('test2').style.display, 'none');
|
603
|
-
equals(DOM.get('test3').style.display, 'none');
|
604
|
-
equals(DOM.get('test4').style.display, 'none');
|
605
|
-
|
606
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
607
|
-
DOM.show(['test2', 'test3', 'test4'], 'test');
|
608
|
-
equals(DOM.get('test2').style.display, 'block');
|
609
|
-
equals(DOM.get('test3').style.display, 'block');
|
610
|
-
equals(DOM.get('test4').style.display, 'block');
|
611
|
-
|
612
|
-
// Cleanup
|
613
|
-
DOM.setAttrib('test', 'style', '');
|
614
|
-
|
615
|
-
DOM.remove('test');
|
616
|
-
});
|
617
|
-
|
618
|
-
test('tinymce.dom.DOMUtils - select', function() {
|
619
|
-
expect(4);
|
620
|
-
|
621
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
622
|
-
|
623
|
-
DOM.setHTML('test', '<div>test 1</div><div>test 2 <div>test 3</div></div><div>test 4</div>');
|
624
|
-
equals(DOM.select('div', 'test').length, 4);
|
625
|
-
ok(DOM.select('div', 'test').reverse);
|
626
|
-
|
627
|
-
DOM.setHTML('test', '<div class="test1 test2 test3">test 1</div><div class="test2">test 2 <div>test 3</div></div><div>test 4</div>')
|
628
|
-
equals(DOM.select('div.test2', 'test').length, 2);
|
629
|
-
|
630
|
-
DOM.setHTML('test', '<div class="test1 test2 test3">test 1</div><div class="test2">test 2 <div>test 3</div></div><div>test 4</div>')
|
631
|
-
equals(DOM.select('div div', 'test').length, 1, null, tinymce.isWebKit); // Issue: http://bugs.webkit.org/show_bug.cgi?id=17461
|
632
|
-
//alert(DOM.select('div div', 'test').length +","+DOM.get('test').querySelectorAll('div div').length);
|
633
|
-
|
634
|
-
DOM.remove('test');
|
635
|
-
});
|
636
|
-
|
637
|
-
test('tinymce.dom.DOMUtils - is', function() {
|
638
|
-
expect(3);
|
639
|
-
|
640
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
641
|
-
DOM.setHTML('test', '<div id="textX" class="test">test 1</div>');
|
642
|
-
|
643
|
-
ok(DOM.is(DOM.get('textX'), 'div'));
|
644
|
-
ok(DOM.is(DOM.get('textX'), 'div#textX.test'));
|
645
|
-
ok(!DOM.is(DOM.get('textX'), 'div#textX2'));
|
646
|
-
|
647
|
-
DOM.remove('test');
|
648
|
-
});
|
649
|
-
|
650
|
-
test('tinymce.dom.DOMUtils - encode', function() {
|
651
|
-
expect(1);
|
652
|
-
|
653
|
-
equals(DOM.encode('abc<>"&\'���'), 'abc<>"&\'���');
|
654
|
-
});
|
655
|
-
|
656
|
-
test('tinymce.dom.DOMUtils - setGetAttrib', function() {
|
657
|
-
var dom;
|
658
|
-
|
659
|
-
expect(11);
|
660
|
-
|
661
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
662
|
-
|
663
|
-
DOM.setAttrib('test', 'class', 'test 123');
|
664
|
-
equals(DOM.getAttrib('test', 'class'), 'test 123');
|
665
|
-
|
666
|
-
DOM.setAttrib('test', 'src', 'url');
|
667
|
-
equals(DOM.getAttrib('test', 'src'), 'url');
|
668
|
-
equals(DOM.getAttrib('test', 'mce_src'), 'url');
|
669
|
-
equals(DOM.getAttrib('test', 'abc'), '');
|
670
|
-
|
671
|
-
DOM.setAttribs('test', {'class' : '123', title : 'abc'});
|
672
|
-
equals(DOM.getAttrib('test', 'class'), '123');
|
673
|
-
equals(DOM.getAttrib('test', 'title'), 'abc');
|
674
|
-
|
675
|
-
dom = new tinymce.dom.DOMUtils(document, {keep_values : true, url_converter : function(u, n, e) {
|
676
|
-
return '&<>"' + u + '&<>"' + n;
|
677
|
-
}});
|
678
|
-
|
679
|
-
dom.setAttribs('test', {src : '123', href : 'abc'});
|
680
|
-
equals(DOM.getAttrib('test', 'src'), '&<>"123&<>"src');
|
681
|
-
equals(DOM.getAttrib('test', 'href'), '&<>"abc&<>"href');
|
682
|
-
|
683
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
684
|
-
DOM.setAttribs(['test2', 'test3', 'test4'], {test1 : "1", test2 : "2"});
|
685
|
-
equals(DOM.getAttrib('test2', 'test1'), '1');
|
686
|
-
equals(DOM.getAttrib('test3', 'test2'), '2');
|
687
|
-
equals(DOM.getAttrib('test4', 'test1'), '1');
|
688
|
-
|
689
|
-
DOM.remove('test');
|
690
|
-
});
|
691
|
-
|
692
|
-
test('tinymce.dom.DOMUtils - setGetStyles', function() {
|
693
|
-
expect(7);
|
694
|
-
|
695
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
696
|
-
|
697
|
-
DOM.setStyle('test', 'font-size', '20px');
|
698
|
-
equals(DOM.getStyle('test', 'font-size'), '20px', null, tinymce.isWebKit);
|
699
|
-
|
700
|
-
DOM.setStyle('test', 'fontSize', '21px');
|
701
|
-
equals(DOM.getStyle('test', 'fontSize'), '21px', null, tinymce.isWebKit);
|
702
|
-
|
703
|
-
DOM.setStyles('test', {fontSize : '22px', display : 'inline'});
|
704
|
-
equals(DOM.getStyle('test', 'fontSize'), '22px', null, tinymce.isWebKit);
|
705
|
-
equals(DOM.getStyle('test', 'display'), 'inline', null, tinymce.isWebKit);
|
706
|
-
|
707
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
708
|
-
DOM.setStyles(['test2', 'test3', 'test4'], {fontSize : "22px"});
|
709
|
-
equals(DOM.getStyle('test2', 'fontSize'), '22px');
|
710
|
-
equals(DOM.getStyle('test3', 'fontSize'), '22px');
|
711
|
-
equals(DOM.getStyle('test4', 'fontSize'), '22px');
|
712
|
-
|
713
|
-
DOM.setAttrib('test', 'style', '');
|
714
|
-
|
715
|
-
DOM.remove('test');
|
716
|
-
});
|
717
|
-
|
718
|
-
test('tinymce.dom.DOMUtils - getPos', function() {
|
719
|
-
expect(2);
|
720
|
-
|
721
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
722
|
-
|
723
|
-
DOM.setStyles('test', {position : 'absolute', left : 100, top : 110});
|
724
|
-
equals(DOM.getPos('test').x, 100);
|
725
|
-
equals(DOM.getPos('test').y, 110);
|
726
|
-
|
727
|
-
DOM.setAttrib('test', 'style', '');
|
728
|
-
|
729
|
-
DOM.remove('test');
|
730
|
-
});
|
731
|
-
|
732
|
-
test('tinymce.dom.DOMUtils - getParent', function() {
|
733
|
-
expect(6);
|
734
|
-
|
735
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
736
|
-
|
737
|
-
DOM.get('test').innerHTML = '<div><span>ab<a id="test2" href="">abc</a>c</span></div>';
|
738
|
-
|
739
|
-
equals(DOM.getParent('test2', function(n) {return n.nodeName == 'SPAN';}).nodeName, 'SPAN');
|
740
|
-
equals(DOM.getParent('test2', function(n) {return n.nodeName == 'BODY';}).nodeName, 'BODY');
|
741
|
-
equals(DOM.getParent('test2', function(n) {return n.nodeName == 'BODY';}, document.body), null);
|
742
|
-
equals(DOM.getParent('test2', function(n) {return false;}), null);
|
743
|
-
equals(DOM.getParent('test2', 'SPAN').nodeName, 'SPAN');
|
744
|
-
equals(DOM.getParent('test2', 'body', DOM.get('test')), null);
|
745
|
-
|
746
|
-
DOM.get('test').innerHTML = '';
|
747
|
-
|
748
|
-
DOM.remove('test');
|
749
|
-
});
|
750
|
-
|
751
|
-
test('tinymce.dom.DOMUtils - getParents', function() {
|
752
|
-
expect(4);
|
753
|
-
|
754
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
755
|
-
DOM.get('test').innerHTML = '<div><span class="test">ab<span><a id="test2" href="">abc</a>c</span></span></div>';
|
756
|
-
|
757
|
-
equals(DOM.getParents('test2', function(n) {return n.nodeName == 'SPAN';}).length, 2);
|
758
|
-
equals(DOM.getParents('test2', 'span').length, 2);
|
759
|
-
equals(DOM.getParents('test2', 'span.test').length, 1);
|
760
|
-
equals(DOM.getParents('test2', 'body', DOM.get('test')).length, 0);
|
761
|
-
|
762
|
-
DOM.remove('test');
|
763
|
-
});
|
764
|
-
|
765
|
-
test('tinymce.dom.DOMUtils - is', function() {
|
766
|
-
expect(2);
|
767
|
-
|
768
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
769
|
-
DOM.get('test').innerHTML = '<div><span class="test">ab<span><a id="test2" href="">abc</a>c</span></span></div>';
|
770
|
-
|
771
|
-
ok(DOM.is(DOM.select('span', 'test'), 'span'));
|
772
|
-
ok(DOM.is(DOM.select('#test2', 'test'), '#test2'));
|
773
|
-
|
774
|
-
DOM.remove('test');
|
775
|
-
});
|
776
|
-
|
777
|
-
test('tinymce.dom.DOMUtils - getViewPort', function() {
|
778
|
-
var wp;
|
779
|
-
|
780
|
-
expect(4);
|
781
|
-
|
782
|
-
wp = DOM.getViewPort();
|
783
|
-
equals(wp.x, 0);
|
784
|
-
equals(wp.y, 0);
|
785
|
-
ok(wp.w > 0);
|
786
|
-
ok(wp.h > 0);
|
787
|
-
});
|
788
|
-
|
789
|
-
test('tinymce.dom.DOMUtils - getRect', function() {
|
790
|
-
var r;
|
791
|
-
|
792
|
-
expect(5);
|
793
|
-
|
794
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
795
|
-
|
796
|
-
DOM.setStyles('test', {position : 'absolute', left : 100, top : 110, width : 320, height : 240});
|
797
|
-
r = DOM.getRect('test');
|
798
|
-
equals(r.x, 100);
|
799
|
-
equals(r.y, 110);
|
800
|
-
equals(r.w, 320);
|
801
|
-
equals(r.h, 240);
|
802
|
-
|
803
|
-
DOM.setAttrib('test', 'style', '');
|
804
|
-
|
805
|
-
DOM.get('test').innerHTML = '<div style="width:320px;height:240px"><div id="test2" style="width:50%;height:240px"></div></div>';
|
806
|
-
r = DOM.getRect('test2');
|
807
|
-
equals(r.w, 160);
|
808
|
-
|
809
|
-
DOM.remove('test');
|
810
|
-
});
|
811
|
-
|
812
|
-
test('tinymce.dom.DOMUtils - getSize', function() {
|
813
|
-
var r;
|
814
|
-
|
815
|
-
expect(2);
|
816
|
-
|
817
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
818
|
-
|
819
|
-
DOM.get('test').innerHTML = '<div style="width:320px;height:240px"><div id="test2" style="width:50%;height:240px"></div></div>';
|
820
|
-
r = DOM.getSize('test2');
|
821
|
-
equals(r.w, 160);
|
822
|
-
|
823
|
-
DOM.get('test').innerHTML = '<div style="width:320px;height:240px"><div id="test2" style="width:100px;height:240px"></div></div>';
|
824
|
-
r = DOM.getSize('test2');
|
825
|
-
equals(r.w, 100);
|
826
|
-
|
827
|
-
DOM.remove('test');
|
828
|
-
});
|
829
|
-
|
830
|
-
test('tinymce.dom.DOMUtils - loadCSS', function() {
|
831
|
-
var c = 0;
|
832
|
-
|
833
|
-
expect(1);
|
834
|
-
|
835
|
-
DOM.loadCSS('css/unit.css?a=1,css/unit.css?a=2,css/unit.css?a=3');
|
836
|
-
|
837
|
-
tinymce.each(document.getElementsByTagName('link'), function(n) {
|
838
|
-
if (n.href.indexOf('unit.css?a=') != -1)
|
839
|
-
c++;
|
840
|
-
});
|
841
|
-
|
842
|
-
equals(c, 3, null, tinymce.isOpera);
|
843
|
-
});
|
844
|
-
|
845
|
-
test('tinymce.dom.DOMUtils - insertAfter', function() {
|
846
|
-
expect(2);
|
847
|
-
|
848
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
849
|
-
|
850
|
-
DOM.setHTML('test', '<span id="test2"></span>');
|
851
|
-
DOM.insertAfter(DOM.create('br'), 'test2');
|
852
|
-
equals(DOM.get('test2').nextSibling.nodeName, 'BR');
|
853
|
-
|
854
|
-
DOM.setHTML('test', '<span>test</span><span id="test2"></span><span>test</span>');
|
855
|
-
DOM.insertAfter(DOM.create('br'), 'test2');
|
856
|
-
equals(DOM.get('test2').nextSibling.nodeName, 'BR');
|
857
|
-
|
858
|
-
DOM.remove('test');
|
859
|
-
});
|
860
|
-
|
861
|
-
test('tinymce.dom.DOMUtils - isBlock', function() {
|
862
|
-
expect(4);
|
863
|
-
|
864
|
-
ok(DOM.isBlock(DOM.create('div')));
|
865
|
-
ok(DOM.isBlock('DIV'));
|
866
|
-
ok(!DOM.isBlock('SPAN'));
|
867
|
-
ok(!DOM.isBlock('div'));
|
868
|
-
});
|
869
|
-
|
870
|
-
test('tinymce.dom.DOMUtils - remove', function() {
|
871
|
-
expect(3);
|
872
|
-
|
873
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
874
|
-
|
875
|
-
DOM.setHTML('test', '<span id="test2"><span>test</span><span>test2</span></span>');
|
876
|
-
DOM.remove('test2', 1);
|
877
|
-
equals(DOM.get('test').innerHTML.toLowerCase(), '<span>test</span><span>test2</span>');
|
878
|
-
|
879
|
-
DOM.setHTML('test', '<span id="test2"><span>test</span><span>test2</span></span>');
|
880
|
-
equals(DOM.remove('test2').nodeName, 'SPAN');
|
881
|
-
|
882
|
-
DOM.get('test').innerHTML = '<span id="test2"></span><span id="test3"></span><span id="test4"></span>';
|
883
|
-
DOM.remove(['test2', 'test4']);
|
884
|
-
equals(DOM.select('span', 'test').length, 1);
|
885
|
-
|
886
|
-
DOM.remove('test');
|
887
|
-
});
|
888
|
-
|
889
|
-
test('tinymce.dom.DOMUtils - replace', function() {
|
890
|
-
expect(2);
|
891
|
-
|
892
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
893
|
-
|
894
|
-
DOM.setHTML('test', '<span id="test2"><span>test</span><span>test2</span></span>');
|
895
|
-
DOM.replace(DOM.create('div', {id : 'test2'}), 'test2', 1);
|
896
|
-
equals(DOM.get('test2').innerHTML.toLowerCase(), '<span>test</span><span>test2</span>');
|
897
|
-
|
898
|
-
DOM.setHTML('test', '<span id="test2"><span>test</span><span>test2</span></span>');
|
899
|
-
DOM.replace(DOM.create('div', {id : 'test2'}), 'test2');
|
900
|
-
equals(DOM.get('test2').innerHTML, '');
|
901
|
-
|
902
|
-
DOM.remove('test');
|
903
|
-
});
|
904
|
-
|
905
|
-
test('tinymce.dom.DOMUtils - toHex', function() {
|
906
|
-
expect(5);
|
907
|
-
|
908
|
-
equals(DOM.toHex('rgb(0, 255, 255)'), '#00ffff');
|
909
|
-
equals(DOM.toHex('rgb(255, 0, 0)'), '#ff0000');
|
910
|
-
equals(DOM.toHex('rgb(0, 0, 255)'), '#0000ff');
|
911
|
-
equals(DOM.toHex('rgb ( 0 , 0 , 255 ) '), '#0000ff');
|
912
|
-
equals(DOM.toHex(' RGB ( 0 , 0 , 255 ) '), '#0000ff');
|
913
|
-
});
|
914
|
-
|
915
|
-
test('tinymce.dom.DOMUtils - getOuterHTML', function() {
|
916
|
-
expect(3);
|
917
|
-
|
918
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
919
|
-
|
920
|
-
DOM.setHTML('test', '<span id="test2"><span>test</span><span>test2</span></span>');
|
921
|
-
equals(DOM.getOuterHTML('test2').toLowerCase(), tinymce.isIE ? '<span id=test2><span>test</span><span>test2</span></span>' : '<span id="test2"><span>test</span><span>test2</span></span>');
|
922
|
-
|
923
|
-
DOM.setHTML('test', '<span id="test2"><span>test</span><span>test2</span></span>');
|
924
|
-
DOM.setOuterHTML('test2', '<div id="test2">123</div>');
|
925
|
-
equals(tinymce.trim(DOM.getOuterHTML('test2') || '').toLowerCase(), tinymce.isIE ? '<div id=test2>123</div>' : '<div id="test2">123</div>');
|
926
|
-
|
927
|
-
DOM.setHTML('test', '<span id="test2"><span>test</span><span>test2</span></span>');
|
928
|
-
DOM.setOuterHTML('test2', '<div id="test2">123</div><div id="test3">abc</div>');
|
929
|
-
equals(tinymce.trim(DOM.get('test').innerHTML).toLowerCase().replace(/>\s+</g, '><'), tinymce.isIE ? '<div id=test2>123</div><div id=test3>abc</div>' : '<div id="test2">123</div><div id="test3">abc</div>');
|
930
|
-
|
931
|
-
DOM.remove('test');
|
932
|
-
});
|
933
|
-
|
934
|
-
test('tinymce.dom.DOMUtils - processHTML', function() {
|
935
|
-
var dom;
|
936
|
-
|
937
|
-
expect(10);
|
938
|
-
|
939
|
-
dom = new tinymce.dom.DOMUtils(document, {hex_colors : true, keep_values : true, url_converter : function(u) {
|
940
|
-
return '&<>"' + u + '&<>"';
|
941
|
-
}});
|
942
|
-
|
943
|
-
equals(
|
944
|
-
dom.processHTML('<span style="background-image:url(\'http://www.somesite.com\');">test</span>'),
|
945
|
-
'<span style="background-image:url(\'http://www.somesite.com\');" mce_style="background-image:url(\'http://www.somesite.com\');">test</span>'
|
946
|
-
);
|
947
|
-
|
948
|
-
equals(
|
949
|
-
dom.processHTML('test1 <strong>test2</strong> <strong id="test1">test3</strong> <em>test2</em> <em id="test2">test3</em>'),
|
950
|
-
tinymce.isGecko ? 'test1 <b>test2</b> <b id="test1">test3</b> <i>test2</i> <i id="test2">test3</i>' : 'test1 <strong>test2</strong> <strong id="test1">test3</strong> <em>test2</em> <em id="test2">test3</em>'
|
951
|
-
);
|
952
|
-
|
953
|
-
equals(
|
954
|
-
dom.processHTML('some content <img src="some.gif" /> some more content <a href="somelink.htm">link</a>'),
|
955
|
-
'some content <img src="some.gif" mce_src="&<>"some.gif&<>"" /> some more content <a href="somelink.htm" mce_href="&<>"somelink.htm&<>"">link</a>'
|
956
|
-
);
|
957
|
-
|
958
|
-
equals(
|
959
|
-
dom.processHTML('some content <img src=some.gif /> some more content <a href=somelink.htm>link</a>'),
|
960
|
-
'some content <img src="some.gif" mce_src="&<>"some.gif&<>"" /> some more content <a href="somelink.htm" mce_href="&<>"somelink.htm&<>"">link</a>'
|
961
|
-
);
|
962
|
-
|
963
|
-
equals(
|
964
|
-
dom.processHTML("some content <img src='some.gif' /> some more content <a href='somelink.htm'>link</a>"),
|
965
|
-
'some content <img src="some.gif" mce_src="&<>"some.gif&<>"" /> some more content <a href="somelink.htm" mce_href="&<>"somelink.htm&<>"">link</a>'
|
966
|
-
);
|
967
|
-
|
968
|
-
equals(
|
969
|
-
dom.processHTML('some content <img src="some.gif" mce_src="&<>"some.gif&<>"" /> some more content <a href="somelink.htm" mce_href="&<>"somelink.htm&<>"">link</a>'),
|
970
|
-
'some content <img src="some.gif" mce_src="&<>"some.gif&<>"" /> some more content <a href="somelink.htm" mce_href="&<>"somelink.htm&<>"">link</a>'
|
971
|
-
);
|
972
|
-
|
973
|
-
equals(
|
974
|
-
dom.processHTML('<span style="border-left-color: rgb(0, 255, 255); border-top-color: rgb(0, 255, 255);"></span>'),
|
975
|
-
'<span style="border-left-color: rgb(0, 255, 255); border-top-color: rgb(0, 255, 255);" mce_style="border-left-color: #00ffff; border-top-color: #00ffff;"></span>'
|
976
|
-
);
|
977
|
-
|
978
|
-
equals(
|
979
|
-
dom.processHTML('<span style="background: url(test.gif);"></span>'),
|
980
|
-
'<span style="background: url(test.gif);" mce_style="background: url(&<>"test.gif&<>");"></span>'
|
981
|
-
);
|
982
|
-
|
983
|
-
equals(
|
984
|
-
dom.processHTML('<a href="test.html"/>'),
|
985
|
-
'<a href="test.html" mce_href="&<>"test.html&<>""></a>'
|
986
|
-
);
|
987
|
-
|
988
|
-
equals(
|
989
|
-
dom.processHTML('<a/>'),
|
990
|
-
'<a></a>'
|
991
|
-
);
|
992
|
-
});
|
993
|
-
|
994
|
-
test('tinymce.dom.DOMUtils - encodeDecode', function() {
|
995
|
-
expect(2);
|
996
|
-
|
997
|
-
equals(DOM.encode('���&<>"'), '���&<>"');
|
998
|
-
equals(DOM.decode('åäö&<>"'), '���&<>"');
|
999
|
-
});
|
1000
|
-
|
1001
|
-
test('tinymce.dom.DOMUtils - split', function() {
|
1002
|
-
var point, parent;
|
1003
|
-
//expect(2);
|
1004
|
-
|
1005
|
-
DOM.add(document.body, 'div', {id : 'test'}, '<p><b>text1<span>inner</span>text2</b></p>');
|
1006
|
-
|
1007
|
-
parent = DOM.select('p', DOM.get('test'))[0];
|
1008
|
-
point = DOM.select('span', DOM.get('test'))[0];
|
1009
|
-
|
1010
|
-
DOM.split(parent, point);
|
1011
|
-
equals(DOM.get('test').innerHTML.toLowerCase().replace(/\s+/g, ''), '<p><b>text1</b></p><span>inner</span><p><b>text2</b></p>');
|
1012
|
-
|
1013
|
-
DOM.remove('test');
|
1014
|
-
});
|
1015
|
-
|
1016
|
-
DOM.remove('test');
|
1017
|
-
})();
|
1018
|
-
|
1019
|
-
(function() {
|
1020
|
-
var Event = tinymce.dom.Event, DOM = new tinymce.dom.DOMUtils(document, {keep_values : true});
|
1021
|
-
|
1022
|
-
test('tinymce.dom.Event - addRemove', function() {
|
1023
|
-
var c = 0;
|
1024
|
-
|
1025
|
-
expect(2);
|
1026
|
-
|
1027
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
1028
|
-
DOM.get('test').innerHTML = '<span id="test2"></span>';
|
1029
|
-
|
1030
|
-
function mouseCheck(e) {
|
1031
|
-
if (e.clientX == 10 || e.clientX == 101)
|
1032
|
-
c++;
|
1033
|
-
};
|
1034
|
-
|
1035
|
-
function mouseCheckCancel(e) {
|
1036
|
-
if (e.clientX == 101)
|
1037
|
-
return Event.cancel(e);
|
1038
|
-
};
|
1039
|
-
|
1040
|
-
function keyCheck(e) {
|
1041
|
-
if (e.keyCode == 13)
|
1042
|
-
c++;
|
1043
|
-
};
|
1044
|
-
|
1045
|
-
Event.add('test2', 'click', mouseCheckCancel);
|
1046
|
-
Event.add('test', 'click', mouseCheck);
|
1047
|
-
fakeMouseEvent('test', 'click', {clientX : 10});
|
1048
|
-
fakeMouseEvent('test2', 'click', {clientX : 101});
|
1049
|
-
|
1050
|
-
Event.add('test', 'keydown', keyCheck);
|
1051
|
-
fakeKeyEvent('test', 'keydown', {keyCode : 13});
|
1052
|
-
|
1053
|
-
equals(c, 2, '[%d] Event count doesn\'t add up. Value: %d should be %d.', tinymce.isWebKit);
|
1054
|
-
|
1055
|
-
c = 0;
|
1056
|
-
Event.remove('test', 'click', mouseCheck);
|
1057
|
-
Event.remove('test', 'keydown', keyCheck);
|
1058
|
-
fakeMouseEvent('test', 'click', {clientX : 10});
|
1059
|
-
fakeKeyEvent('test', 'keydown', {keyCode : 13});
|
1060
|
-
|
1061
|
-
equals(c, 0, '[%d] Event count doesn\'t add up. Value: %d should be %d.', tinymce.isWebKit);
|
1062
|
-
|
1063
|
-
DOM.remove('test');
|
1064
|
-
});
|
1065
|
-
})();
|
1066
|
-
|
1067
|
-
(function() {
|
1068
|
-
var Serializer = tinymce.dom.Serializer, DOM = new tinymce.dom.DOMUtils(document, {keep_values : true});
|
1069
|
-
|
1070
|
-
test('tinymce.DOM.Serializer - serialize', function() {
|
1071
|
-
var ser = new tinymce.dom.Serializer({dom : DOM}), h, a, b;
|
1072
|
-
|
1073
|
-
expect(45);
|
1074
|
-
|
1075
|
-
DOM.add(document.body, 'div', {id : 'test'});
|
1076
|
-
DOM.counter = 0;
|
1077
|
-
|
1078
|
-
ser.setRules('@[id|title|class|style],div,img[src|alt|-style|border],span,hr');
|
1079
|
-
DOM.setHTML('test', '<img title="test" src="file.gif" alt="test" border="0" style="border: 1px solid red" class="test" /><span id="test2">test</span><hr />');
|
1080
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><img title="test" class="test" src="file.gif" alt="test" border="0" /><span id="test2">test</span><hr /></div>');
|
1081
|
-
|
1082
|
-
ser.setRules('*a[*],em/i[*],strong/b[*i*]');
|
1083
|
-
DOM.setHTML('test', '<a href="test">test</a><strong title="test" class="test">test2</strong><em title="test">test3</em>');
|
1084
|
-
equals(ser.serialize(DOM.get('test')), '<a href="test">test</a><strong title="test">test2</strong><em title="test">test3</em>');
|
1085
|
-
|
1086
|
-
ser.setRules('br,hr,input[type|name|value],div[id],span[id],strong/b,a,em/i,a[!href|!name],img[src|border=0|title={$uid}]');
|
1087
|
-
DOM.setHTML('test', '<br /><hr /><input type="text" name="test" value="val" class="no" /><span id="test2" class="no"><b class="no">abc</b><em class="no">123</em></span>123<a href="file.html">link</a><a name="anchor"></a><a>no</a><img src="file.gif" />');
|
1088
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><br /><hr /><input type="text" name="test" value="val" /><span id="test2"><strong>abc</strong><em>123</em></span>123<a href="file.html">link</a><a name="anchor"></a>no<img src="file.gif" border="0" title="mce_0" /></div>');
|
1089
|
-
|
1090
|
-
ser.setRules('input[type|name|value|checked|disabled|readonly],select,option[selected]');
|
1091
|
-
DOM.setHTML('test', '<input type="radio" checked="1" disabled="1" value="1"><input type="radio" checked="0" disabled="0" value="1"><input type="checkbox" checked="false" disabled="false" value="1"><input type="radio" checked="checked" disabled="disabled" value="1"><input type="text" readonly="true"><select><option selected="1">test1</option><option selected="0">test2</option><option selected="false">test3</option></select>');
|
1092
|
-
equals(ser.serialize(DOM.get('test')), '<input type="radio" value="1" checked="checked" disabled="disabled" /><input type="radio" value="1" /><input type="checkbox" value="1" /><input type="radio" value="1" checked="checked" disabled="disabled" /><input type="text" readonly="readonly" /><select><option selected="selected">test1</option><option>test2</option><option>test3</option></select>');
|
1093
|
-
|
1094
|
-
ser.setRules('a[href|target<_blank?_top|title:forced value]');
|
1095
|
-
DOM.setHTML('test', '<a href="file.htm" target="_blank" title="title">link</a><a href="#" target="test">test2</a>');
|
1096
|
-
equals(ser.serialize(DOM.get('test')), '<a href="file.htm" target="_blank" title="forced value">link</a><a href="#" title="forced value">test2</a>');
|
1097
|
-
|
1098
|
-
ser.setRules('*[*]');
|
1099
|
-
DOM.setHTML('test', '<label for="test">label</label>');
|
1100
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><label for="test">label</label></div>');
|
1101
|
-
|
1102
|
-
ser.setRules('*[*]');
|
1103
|
-
DOM.setHTML('test', '<!-- abc -->');
|
1104
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><!-- abc --></div>', null, tinymce.isOldWebKit);
|
1105
|
-
|
1106
|
-
ser.setRules('*[*]');
|
1107
|
-
DOM.setHTML('test', '<span style="border: 1px solid red">test</span>');
|
1108
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><span style="border: 1px solid red">test</span></div>', null, tinymce.isOldWebKit);
|
1109
|
-
|
1110
|
-
ser.setRules('*[*]');
|
1111
|
-
DOM.setHTML('test', '<div mce_name="mytag" class="test">test</div>');
|
1112
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><mytag class="test">test</mytag></div>', null, tinymce.isOldWebKit);
|
1113
|
-
|
1114
|
-
ser.setRules('*[*]');
|
1115
|
-
DOM.setHTML('test', '<div test:attr="test">test</div>');
|
1116
|
-
equals(ser.serialize(DOM.get('test'), {getInner : 1}), '<div test:attr="test">test</div>');
|
1117
|
-
|
1118
|
-
ser.setRules('#p');
|
1119
|
-
DOM.setHTML('test', '<p>test</p><p></p>');
|
1120
|
-
equals(ser.serialize(DOM.get('test')), '<p>test</p><p> </p>', null, tinymce.isOldWebKit);
|
1121
|
-
|
1122
|
-
ser.setRules('img[src|border=0|alt=]');
|
1123
|
-
DOM.setHTML('test', '<img src="file.gif" border="0" alt="" />');
|
1124
|
-
equals(ser.serialize(DOM.get('test')), '<img src="file.gif" border="0" alt="" />');
|
1125
|
-
|
1126
|
-
ser.setRules('img[src|border=0|alt=],*[*]');
|
1127
|
-
DOM.setHTML('test', '<img src="file.gif" /><hr />');
|
1128
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><img src="file.gif" border="0" alt="" /><hr /></div>');
|
1129
|
-
|
1130
|
-
ser.setRules('*[*]');
|
1131
|
-
DOM.setHTML('test', '<span id="test2"><b>abc</b></span>123<a href="file.html">link</a>');
|
1132
|
-
a = ser.onPreProcess.add(function(se, o) {
|
1133
|
-
equals(o.test, 'abc');
|
1134
|
-
DOM.setAttrib(o.node.getElementsByTagName('span')[0], 'class', 'abc');
|
1135
|
-
});
|
1136
|
-
b = ser.onPostProcess.add(function(se, o) {
|
1137
|
-
equals(o.test, 'abc');
|
1138
|
-
o.content = o.content.replace(/<b>/g, '<b class="123">');
|
1139
|
-
});
|
1140
|
-
equals(ser.serialize(DOM.get('test'), {test : 'abc'}), '<div id="test"><span class="abc" id="test2"><b class="123">abc</b></span>123<a href="file.html">link</a></div>');
|
1141
|
-
ser.onPreProcess.remove(a);
|
1142
|
-
ser.onPostProcess.remove(b);
|
1143
|
-
|
1144
|
-
ser.setRules('*[*]');
|
1145
|
-
DOM.setHTML('test', '<ol><li>a</li><ol><li>b</li><li>c</li></ol><li>e</li></ol>');
|
1146
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><ol><li>a<ol><li>b</li><li>c</li></ol></li><li>e</li></ol></div>');
|
1147
|
-
|
1148
|
-
ser = new tinymce.dom.Serializer({valid_elements : 'img[src|border=0|alt=]', extended_valid_elements : 'div[id],img[src|alt=]'});
|
1149
|
-
DOM.setHTML('test', '<img src="file.gif" alt="" />');
|
1150
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><img src="file.gif" alt="" /></div>', null, tinymce.isOldWebKit);
|
1151
|
-
|
1152
|
-
ser = new tinymce.dom.Serializer({invalid_elements : 'hr,br'});
|
1153
|
-
DOM.setHTML('test', '<img src="file.gif" /><hr /><br />');
|
1154
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><img src="file.gif" /></div>');
|
1155
|
-
|
1156
|
-
ser = new tinymce.dom.Serializer({entity_encoding : 'numeric'});
|
1157
|
-
DOM.setHTML('test', '<>&" ���');
|
1158
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><>&" åäö</div>');
|
1159
|
-
|
1160
|
-
ser = new tinymce.dom.Serializer({entity_encoding : 'named'});
|
1161
|
-
DOM.setHTML('test', '<>&" ���');
|
1162
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><>&" åäö</div>');
|
1163
|
-
|
1164
|
-
ser = new tinymce.dom.Serializer({entity_encoding : 'named+numeric',entities : '160,nbsp,34,quot,38,amp,60,lt,62,gt'});
|
1165
|
-
DOM.setHTML('test', '<>&" ���');
|
1166
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><>&" åäö</div>');
|
1167
|
-
|
1168
|
-
ser = new tinymce.dom.Serializer({entity_encoding : 'raw'});
|
1169
|
-
DOM.setHTML('test', '<>&" ���');
|
1170
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><>&"\u00a0���</div>');
|
1171
|
-
|
1172
|
-
ser.setRules('+a[id|style|rel|rev|charset|hreflang|dir|lang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup],-strong/-b[class|style],-em/-i[class|style],-strike[class|style],-u[class|style],#p[id|style|dir|class|align],-ol[class|style],-ul[class|style],-li[class|style],br,img[id|dir|lang|longdesc|usemap|style|class|src|onmouseover|onmouseout|border|alt=|title|hspace|vspace|width|height|align],-sub[style|class],-sup[style|class],-blockquote[dir|style],-table[border=0|cellspacing|cellpadding|width|height|class|align|summary|style|dir|id|lang|bgcolor|background|bordercolor],-tr[id|lang|dir|class|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor],tbody[id|class],thead[id|class],tfoot[id|class],-td[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor|scope],-th[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|scope],caption[id|lang|dir|class|style],-div[id|dir|class|align|style],-span[style|class|align],-pre[class|align|style],address[class|align|style],-h1[id|style|dir|class|align],-h2[id|style|dir|class|align],-h3[id|style|dir|class|align],-h4[id|style|dir|class|align],-h5[id|style|dir|class|align],-h6[id|style|dir|class|align],hr[class|style],-font[face|size|style|id|class|dir|color],dd[id|class|title|style|dir|lang],dl[id|class|title|style|dir|lang],dt[id|class|title|style|dir|lang],*[*]');
|
1173
|
-
DOM.setHTML('test', '<br /><hr /><span class="test"><img src="file.gif" /></span>');
|
1174
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><br /><hr /><span class="test"><img src="file.gif" alt="" /></span></div>');
|
1175
|
-
|
1176
|
-
ser.setRules('*[*]');
|
1177
|
-
ser.setValidChildRules('h1/h2/h3/h4/h5/h6/a[%itrans_na],div[%itrans|%btrans]');
|
1178
|
-
DOM.setHTML('test', '<h1>test <a href="file">link</a> test</h1>');
|
1179
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test"><h1>test link test</h1></div>');
|
1180
|
-
|
1181
|
-
ser = new tinymce.dom.Serializer({entity_encoding : 'raw'});
|
1182
|
-
ser.setRules('*[*]');
|
1183
|
-
DOM.setHTML('test', 'test1<prefix:test>Test</prefix:test>test2');
|
1184
|
-
equals(ser.serialize(DOM.get('test')), '<div id="test">test1<prefix:test>Test</prefix:test>test2</div>');
|
1185
|
-
|
1186
|
-
ser.setRules('style');
|
1187
|
-
DOM.setHTML('test', '<style> body { background:#fff }</style>');
|
1188
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<style><!--\n body { background:#fff }\n--></style>');
|
1189
|
-
|
1190
|
-
ser.setRules('style');
|
1191
|
-
DOM.setHTML('test', '<style>\r\n<![CDATA[\r\n body { background:#fff }]]></style>');
|
1192
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<style><!--\n body { background:#fff }\n--></style>');
|
1193
|
-
|
1194
|
-
ser.setRules('script[type|language|src]');
|
1195
|
-
DOM.setHTML('test', '<script>var a = b < c1;</script>');
|
1196
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\nvar a = b < c1;\n// ]]></script>');
|
1197
|
-
|
1198
|
-
DOM.setHTML('test', '<script type="text/javascript">var a = b < c2;</script>');
|
1199
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\nvar a = b < c2;\n// ]]></script>');
|
1200
|
-
|
1201
|
-
DOM.setHTML('test', '<script type="text/javascript">\n\tvar a = b < c22;\n\t if (a < b)\n\t\talert(1);\n</script>');
|
1202
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\n\tvar a = b < c22;\n\t if (a < b)\n\t\talert(1);\n// ]]></script>');
|
1203
|
-
|
1204
|
-
DOM.setHTML('test', '<script type="text/javascript"><!-- var a = b < c3; // --></script>');
|
1205
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\n var a = b < c3;\n// ]]></script>');
|
1206
|
-
|
1207
|
-
DOM.setHTML('test', '<script type="text/javascript">\n\n<!-- var a = b < c3;\n\n--></script>');
|
1208
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\n var a = b < c3;\n// ]]></script>');
|
1209
|
-
|
1210
|
-
DOM.setHTML('test', '<script type="text/javascript">// <![CDATA[var a = b < c4; // ]]></script>');
|
1211
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\nvar a = b < c4;\n// ]]></script>');
|
1212
|
-
|
1213
|
-
DOM.setHTML('test', '<script type="text/javascript"><![CDATA[var a = b < c4; ]]></script>');
|
1214
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\nvar a = b < c4;\n// ]]></script>');
|
1215
|
-
|
1216
|
-
DOM.setHTML('test', '<script type="text/javascript">\n\n<![CDATA[\n\nvar a = b < c4;\n\n]]>\n\n</script>');
|
1217
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '<script type="text/javascript">// <![CDATA[\nvar a = b < c4;\n// ]]></script>');
|
1218
|
-
|
1219
|
-
DOM.setHTML('test', '<script type="text/javascript" src="test.js"></script>');
|
1220
|
-
equals(ser.serialize(DOM.get('test')), '<script type="text/javascript" src="test.js"></script>');
|
1221
|
-
|
1222
|
-
ser.setRules('noscript[test]');
|
1223
|
-
DOM.setHTML('test', '<noscript test="test"><br></noscript>');
|
1224
|
-
equals(ser.serialize(DOM.get('test')), '<noscript test="test"><br></noscript>');
|
1225
|
-
|
1226
|
-
DOM.setHTML('test', '<noscript><br></noscript>');
|
1227
|
-
equals(ser.serialize(DOM.get('test')), '<noscript><br></noscript>');
|
1228
|
-
|
1229
|
-
DOM.setHTML('test', '<noscript><!-- text --><br></noscript>');
|
1230
|
-
equals(ser.serialize(DOM.get('test')), '<noscript><!-- text --><br></noscript>');
|
1231
|
-
|
1232
|
-
ser.setRules('map[id|name],area[shape|coords|href|target|alt]');
|
1233
|
-
DOM.setHTML('test', '<map id="planetmap" name="planetmap"><area shape="rect" coords="0,0,82,126" href="sun.htm" target="_blank" alt="Sun" /></map>');
|
1234
|
-
equals(ser.serialize(DOM.get('test')), '<map id="planetmap" name="planetmap"><area shape="rect" coords="0,0,82,126" href="sun.htm" target="_blank" alt="Sun" /></map>');
|
1235
|
-
|
1236
|
-
DOM.setHTML('test', '123<![CDATA[<test>]]>abc');
|
1237
|
-
equals(ser.serialize(DOM.get('test')), '123<![CDATA[<test>]]>abc');
|
1238
|
-
|
1239
|
-
DOM.setHTML('test', '123<![CDATA[<te\n\nst>]]>abc');
|
1240
|
-
equals(ser.serialize(DOM.get('test')).replace(/\r/g, ''), '123<![CDATA[<te\n\nst>]]>abc');
|
1241
|
-
|
1242
|
-
ser.setRules('ul,li,br');
|
1243
|
-
DOM.setHTML('test', '<ul><li>test<br /></li><li>test<br /></li><li>test<br /></li></ul>');
|
1244
|
-
equals(ser.serialize(DOM.get('test')), '<ul><li>test</li><li>test</li><li>test</li></ul>');
|
1245
|
-
|
1246
|
-
ser.setRules('input[type|value|name|id|maxlength|size|tabindex]');
|
1247
|
-
DOM.setHTML('test', '<input type="checkbox" value="test" /><input type="button" />');
|
1248
|
-
equals(ser.serialize(DOM.get('test')), '<input type="checkbox" value="test" /><input type="button" />');
|
1249
|
-
|
1250
|
-
DOM.remove('test');
|
1251
|
-
});
|
1252
|
-
})();
|
1253
|
-
|
1254
|
-
(function() {
|
1255
|
-
var Dispatcher = tinymce.util.Dispatcher;
|
1256
|
-
|
1257
|
-
test('tinymce.util.Dispatcher - dispatcher', function() {
|
1258
|
-
var ev, v, f;
|
1259
|
-
|
1260
|
-
expect(5);
|
1261
|
-
|
1262
|
-
ev = new Dispatcher();
|
1263
|
-
ev.add(function(a, b, c) {
|
1264
|
-
v = a + b + c;
|
1265
|
-
});
|
1266
|
-
ev.dispatch(1, 2, 3);
|
1267
|
-
equals(v, 6);
|
1268
|
-
|
1269
|
-
ev = new Dispatcher();
|
1270
|
-
v = 0;
|
1271
|
-
f = ev.add(function(a, b, c) {
|
1272
|
-
v = a + b + c;
|
1273
|
-
});
|
1274
|
-
ev.remove(f);
|
1275
|
-
ev.dispatch(1, 2, 3);
|
1276
|
-
equals(v, 0);
|
1277
|
-
|
1278
|
-
ev = new Dispatcher({test : 1});
|
1279
|
-
v = 0;
|
1280
|
-
f = ev.add(function(a, b, c) {
|
1281
|
-
v = a + b + c + this.test;
|
1282
|
-
});
|
1283
|
-
ev.dispatch(1, 2, 3);
|
1284
|
-
equals(v, 7);
|
1285
|
-
|
1286
|
-
ev = new Dispatcher();
|
1287
|
-
v = 0;
|
1288
|
-
f = ev.add(function(a, b, c) {
|
1289
|
-
v = a + b + c + this.test;
|
1290
|
-
}, {test : 1});
|
1291
|
-
ev.dispatch(1, 2, 3);
|
1292
|
-
equals(v, 7);
|
1293
|
-
|
1294
|
-
ev = new Dispatcher();
|
1295
|
-
v = '';
|
1296
|
-
f = ev.add(function(a, b, c) {
|
1297
|
-
v += 'b';
|
1298
|
-
}, {test : 1});
|
1299
|
-
f = ev.addToTop(function(a, b, c) {
|
1300
|
-
v += 'a';
|
1301
|
-
}, {test : 1});
|
1302
|
-
ev.dispatch();
|
1303
|
-
equals(v, 'ab');
|
1304
|
-
});
|
1305
|
-
})();
|
1306
|
-
|
1307
|
-
(function() {
|
1308
|
-
var Cookie = tinymce.util.Cookie;
|
1309
|
-
|
1310
|
-
test('tinymce.util.Cookie - cookie', function() {
|
1311
|
-
var f = document.location.protocol == 'file:';
|
1312
|
-
|
1313
|
-
expect(4);
|
1314
|
-
|
1315
|
-
Cookie.set('test', 'test123');
|
1316
|
-
equals(Cookie.get('test'), 'test123', null, f);
|
1317
|
-
|
1318
|
-
Cookie.set('test', 'test1234');
|
1319
|
-
equals(Cookie.get('test'), 'test1234', null, f);
|
1320
|
-
|
1321
|
-
Cookie.setHash('test', {a : 1, b : 2});
|
1322
|
-
ok(Cookie.getHash('test') ? Cookie.getHash('test').b == 2 : null, null, f);
|
1323
|
-
|
1324
|
-
Cookie.setHash('test', {a : 1, b : 3});
|
1325
|
-
ok(Cookie.getHash('test') ? Cookie.getHash('test').b == 3 : null, null, f);
|
1326
|
-
});
|
1327
|
-
})();
|
1328
|
-
|
1329
|
-
(function() {
|
1330
|
-
var JSON = tinymce.util.JSON;
|
1331
|
-
|
1332
|
-
test('tinymce.util.JSON - serialize', function() {
|
1333
|
-
expect(1);
|
1334
|
-
|
1335
|
-
equals(JSON.serialize({arr1 : [1, 2, 3, [1, 2, 3]], bool1 : true, float1: 3.14, int1 : 123, null1 : null, obj1 : {key1 : "val1", key2 : "val2"}, str1 : 'abc\u00C5123'}), '{"arr1":[1,2,3,[1,2,3]],"bool1":true,"float1":3.14,"int1":123,"null1":null,"obj1":{"key1":"val1","key2":"val2"},"str1":"abc\\u00c5123"}');
|
1336
|
-
});
|
1337
|
-
|
1338
|
-
test('tinymce.util.JSON - parse', function() {
|
1339
|
-
expect(1);
|
1340
|
-
|
1341
|
-
equals(JSON.parse('{"arr1":[1,2,3,[1,2,3]],"bool1":true,"float1":3.14,"int1":123,"null1":null,"obj1":{"key1":"val1","key2":"val2"},"str1":"abc\\u00c5123"}').str1, 'abc\u00c5123');
|
1342
|
-
});
|
1343
|
-
})();
|
1344
|
-
|
1345
|
-
(function() {
|
1346
|
-
var URI = tinymce.util.URI;
|
1347
|
-
|
1348
|
-
test('tinymce.util.URI - parseFullURLs', function() {
|
1349
|
-
expect(2);
|
1350
|
-
|
1351
|
-
equals(new URI('http://abc:123@www.site.com:8080/path/dir/file.ext?key1=val1&key2=val2#hash').getURI(), 'http://abc:123@www.site.com:8080/path/dir/file.ext?key1=val1&key2=val2#hash');
|
1352
|
-
ok(new URI('http://a2bc:123@www.site.com:8080/path/dir/file.ext?key1=val1&key2=val2#hash').getURI() != 'http://abc:123@www.site.com:8080/path/dir/file.ext?key1=val1&key2=val2#hash');
|
1353
|
-
});
|
1354
|
-
|
1355
|
-
test('tinymce.util.URI - relativeURLs', function() {
|
1356
|
-
expect(24);
|
1357
|
-
|
1358
|
-
equals(new URI('http://www.site.com/dir1/dir2/file.html').toRelative('http://www.site.com/dir1/dir3/file.html'), '../dir3/file.html');
|
1359
|
-
equals(new URI('http://www.site.com/dir1/dir2/file.html').toRelative('http://www.site.com/dir3/dir4/file.html'), '../../dir3/dir4/file.html');
|
1360
|
-
equals(new URI('http://www.site.com/dir1/').toRelative('http://www.site.com/dir1/dir3/file.htm'), 'dir3/file.htm');
|
1361
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('http://www.site2.com/dir1/dir3/file.htm'), 'http://www.site2.com/dir1/dir3/file.htm');
|
1362
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('http://www.site.com:8080/dir1/dir3/file.htm'), 'http://www.site.com:8080/dir1/dir3/file.htm');
|
1363
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('https://www.site.com/dir1/dir3/file.htm'), 'https://www.site.com/dir1/dir3/file.htm');
|
1364
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('/file.htm'), '../../file.htm');
|
1365
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('/file.htm?id=1#a'), '../../file.htm?id=1#a');
|
1366
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('mailto:test@test.com'), 'mailto:test@test.com');
|
1367
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('news:test'), 'news:test');
|
1368
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('javascript:void(0);'), 'javascript:void(0);');
|
1369
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('about:blank'), 'about:blank');
|
1370
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('#test'), '#test');
|
1371
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('test.htm'), 'test.htm');
|
1372
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('http://www.site.com/dir1/dir2/test.htm'), 'test.htm');
|
1373
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('dir2/test.htm'), 'dir2/test.htm');
|
1374
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('../dir2/test.htm'), 'test.htm');
|
1375
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('../dir3/'), '../dir3/');
|
1376
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('../../../../../../test.htm'), '../../test.htm');
|
1377
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('//www.site.com/test.htm'), '../../test.htm');
|
1378
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('@@tinymce'), '@@tinymce'); // Zope 3 URL
|
1379
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toRelative('../@@tinymce'), '../@@tinymce'); // Zope 3 URL
|
1380
|
-
equals(new URI('http://www.site.com/').toRelative('dir2/test.htm'), 'dir2/test.htm');
|
1381
|
-
equals(new URI('http://www.site.com/').toRelative('./'), './');
|
1382
|
-
});
|
1383
|
-
|
1384
|
-
test('tinymce.util.URI - absoluteURLs', function() {
|
1385
|
-
expect(15);
|
1386
|
-
|
1387
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('../dir3'), 'http://www.site.com/dir1/dir3');
|
1388
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('../dir3', 1), '/dir1/dir3');
|
1389
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('../../../../dir3'), 'http://www.site.com/dir3');
|
1390
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('../abc/def/../../abc/../dir3/file.htm'), 'http://www.site.com/dir1/dir3/file.htm');
|
1391
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('http://www.site.com/dir2/dir3'), 'http://www.site.com/dir2/dir3');
|
1392
|
-
equals(new URI('http://www.site2.com/dir1/dir2/').toAbsolute('http://www.site2.com/dir2/dir3'), 'http://www.site2.com/dir2/dir3');
|
1393
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('mailto:test@test.com'), 'mailto:test@test.com');
|
1394
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('news:test'), 'news:test');
|
1395
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('javascript:void(0);'), 'javascript:void(0);');
|
1396
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('about:blank'), 'about:blank');
|
1397
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('#test'), '#test');
|
1398
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('test.htm'), 'http://www.site.com/dir1/dir2/test.htm');
|
1399
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('../@@tinymce'), 'http://www.site.com/dir1/@@tinymce'); // Zope 3 URL
|
1400
|
-
equals(new URI('http://www.site.com/dir1/dir2/').getURI(), 'http://www.site.com/dir1/dir2/');
|
1401
|
-
equals(new URI('http://www.site.com/dir1/dir2/').toAbsolute('/dir1/dir1/'), 'http://www.site.com/dir1/dir1/');
|
1402
|
-
});
|
1403
|
-
|
1404
|
-
test('tinymce.util.URI - strangeURLs', function() {
|
1405
|
-
expect(3);
|
1406
|
-
|
1407
|
-
equals(new URI('//www.site.com').getURI(), '//www.site.com');
|
1408
|
-
equals(new URI('mailto:test@test.com').getURI(), 'mailto:test@test.com');
|
1409
|
-
equals(new URI('news:somegroup').getURI(), 'news:somegroup');
|
1410
|
-
});
|
1411
|
-
})();
|
1412
|
-
|
1413
|
-
(function() {
|
1414
|
-
var Parser = tinymce.xml.Parser;
|
1415
|
-
|
1416
|
-
test('tinymce.util.Parser - parser', function() {
|
1417
|
-
var f = document.location.protocol == 'file:', p, d;
|
1418
|
-
|
1419
|
-
expect(3);
|
1420
|
-
|
1421
|
-
p = new Parser({async : false});
|
1422
|
-
p.load('test.xml', function(d) {
|
1423
|
-
equals(d.getElementsByTagName('tag').length, 1);
|
1424
|
-
});
|
1425
|
-
|
1426
|
-
p = new Parser({async : false});
|
1427
|
-
p.load('test.xml', function(d) {
|
1428
|
-
equals(tinymce.trim(p.getText(d.getElementsByTagName('tag')[0])), '���');
|
1429
|
-
});
|
1430
|
-
|
1431
|
-
p = new Parser({async : false});
|
1432
|
-
d = p.loadXML('<root><tag>���</tag></root>');
|
1433
|
-
equals(tinymce.trim(p.getText(d.getElementsByTagName('tag')[0])), '���');
|
1434
|
-
});
|
1435
|
-
})();
|
1436
|
-
|
1437
|
-
run();
|
1438
|
-
});
|