From 4704f564e03966443a45a5808b179dbfab0991e2 Mon Sep 17 00:00:00 2001 From: firstrow Date: Fri, 11 Jun 2010 12:40:44 +0300 Subject: [PATCH] inital commint --- YiiadminModule.php | 310 + assets/css/base.css | 34 + assets/css/buttons.css | 372 + assets/css/components.css | 841 + .../datepicker/grappelli-theme-extensions.css | 444 + assets/css/forms.css | 738 + assets/css/grappelli-skin-basic.css | 1284 ++ assets/css/grappelli-skin-default.css | 1657 ++ assets/css/jquery-ui-grappelli-extensions.css | 499 + assets/css/reset.css | 38 + assets/css/structures.css | 607 + assets/css/tables.css | 141 + assets/css/tools.css | 266 + assets/css/typography.css | 260 + assets/img/admin/arrow-down.gif | Bin 0 -> 80 bytes assets/img/admin/arrow-up.gif | Bin 0 -> 838 bytes assets/img/admin/browser-warning-bg.png | Bin 0 -> 18582 bytes assets/img/admin/browser-warning-box-bg.png | Bin 0 -> 130 bytes .../img/admin/browser-warning-box-bottom.png | Bin 0 -> 234 bytes assets/img/admin/browser-warning-box-top.png | Bin 0 -> 348 bytes assets/img/admin/browser_chrome.gif | Bin 0 -> 3803 bytes assets/img/admin/browser_firefox.gif | Bin 0 -> 4202 bytes assets/img/admin/browser_safari.gif | Bin 0 -> 4876 bytes assets/img/admin/browser_title_bg.gif | Bin 0 -> 1749 bytes assets/img/admin/changelist-bg.gif | Bin 0 -> 58 bytes assets/img/admin/changelist-bg_rtl.gif | Bin 0 -> 75 bytes assets/img/admin/chooser-bg.gif | Bin 0 -> 199 bytes assets/img/admin/chooser_stacked-bg.gif | Bin 0 -> 212 bytes assets/img/admin/default-bg-reverse.gif | Bin 0 -> 843 bytes assets/img/admin/default-bg.gif | Bin 0 -> 844 bytes assets/img/admin/deleted-overlay.gif | Bin 0 -> 45 bytes assets/img/admin/icon-no.gif | Bin 0 -> 176 bytes assets/img/admin/icon-unknown.gif | Bin 0 -> 130 bytes assets/img/admin/icon-yes.gif | Bin 0 -> 299 bytes assets/img/admin/icon_addlink.gif | Bin 0 -> 119 bytes assets/img/admin/icon_alert.gif | Bin 0 -> 145 bytes assets/img/admin/icon_calendar.gif | Bin 0 -> 192 bytes assets/img/admin/icon_changelink.gif | Bin 0 -> 119 bytes assets/img/admin/icon_clock.gif | Bin 0 -> 390 bytes assets/img/admin/icon_deletelink.gif | Bin 0 -> 181 bytes assets/img/admin/icon_error.gif | Bin 0 -> 319 bytes assets/img/admin/icon_searchbox.png | Bin 0 -> 667 bytes assets/img/admin/icon_success.gif | Bin 0 -> 341 bytes assets/img/admin/inline-delete-8bit.png | Bin 0 -> 477 bytes assets/img/admin/inline-delete.png | Bin 0 -> 781 bytes assets/img/admin/inline-restore-8bit.png | Bin 0 -> 447 bytes assets/img/admin/inline-restore.png | Bin 0 -> 623 bytes assets/img/admin/inline-splitter-bg.gif | Bin 0 -> 102 bytes assets/img/admin/nav-bg-grabber.gif | Bin 0 -> 116 bytes assets/img/admin/nav-bg-reverse.gif | Bin 0 -> 186 bytes assets/img/admin/nav-bg.gif | Bin 0 -> 273 bytes assets/img/admin/selector-add.gif | Bin 0 -> 606 bytes assets/img/admin/selector-addall.gif | Bin 0 -> 358 bytes assets/img/admin/selector-remove.gif | Bin 0 -> 398 bytes assets/img/admin/selector-removeall.gif | Bin 0 -> 355 bytes assets/img/admin/selector-search.gif | Bin 0 -> 552 bytes assets/img/admin/selector_stacked-add.gif | Bin 0 -> 612 bytes assets/img/admin/selector_stacked-remove.gif | Bin 0 -> 401 bytes assets/img/admin/tool-left.gif | Bin 0 -> 197 bytes assets/img/admin/tool-left_over.gif | Bin 0 -> 203 bytes assets/img/admin/tool-right.gif | Bin 0 -> 198 bytes assets/img/admin/tool-right_over.gif | Bin 0 -> 200 bytes assets/img/admin/tooltag-add.gif | Bin 0 -> 932 bytes assets/img/admin/tooltag-add_over.gif | Bin 0 -> 336 bytes assets/img/admin/tooltag-arrowright.gif | Bin 0 -> 351 bytes assets/img/admin/tooltag-arrowright_over.gif | Bin 0 -> 354 bytes assets/img/backgrounds/changelist-results.png | Bin 0 -> 244 bytes assets/img/grappelli-icon.png | Bin 0 -> 423 bytes .../icons/icon-actionlist_addlink-hover.png | Bin 0 -> 152 bytes assets/img/icons/icon-actionlist_addlink.png | Bin 0 -> 152 bytes .../icon-actionlist_changelink-hover.png | Bin 0 -> 131 bytes .../img/icons/icon-actionlist_changelink.png | Bin 0 -> 132 bytes .../img/icons/icon-actionlist_deletelink.png | Bin 0 -> 137 bytes .../img/icons/icon-actions-add-link-hover.png | Bin 0 -> 152 bytes assets/img/icons/icon-actions-add-link.png | Bin 0 -> 152 bytes .../icons/icon-actions-change-link-hover.png | Bin 0 -> 131 bytes assets/img/icons/icon-actions-change-link.png | Bin 0 -> 132 bytes assets/img/icons/icon-actions-delete-link.png | Bin 0 -> 137 bytes assets/img/icons/icon-actions_changelist.png | Bin 0 -> 369 bytes assets/img/icons/icon-add_another-hover.png | Bin 0 -> 165 bytes assets/img/icons/icon-add_another.png | Bin 0 -> 166 bytes assets/img/icons/icon-addlink-hover.png | Bin 0 -> 165 bytes assets/img/icons/icon-addlink.png | Bin 0 -> 166 bytes assets/img/icons/icon-bookmark_add-hover.png | Bin 0 -> 162 bytes .../img/icons/icon-bookmark_add-inactive.png | Bin 0 -> 171 bytes assets/img/icons/icon-bookmark_add.png | Bin 0 -> 171 bytes .../img/icons/icon-bookmark_manage-hover.png | Bin 0 -> 2925 bytes assets/img/icons/icon-bookmark_manage.png | Bin 0 -> 2928 bytes .../img/icons/icon-bookmark_remove-hover.png | Bin 0 -> 192 bytes .../icons/icon-bookmark_remove-inactive.png | Bin 0 -> 214 bytes assets/img/icons/icon-bookmark_remove.png | Bin 0 -> 224 bytes assets/img/icons/icon-calendar-hover.png | Bin 0 -> 236 bytes assets/img/icons/icon-calendar.png | Bin 0 -> 237 bytes assets/img/icons/icon-calendarnav_next.png | Bin 0 -> 186 bytes .../img/icons/icon-calendarnav_previous.png | Bin 0 -> 186 bytes assets/img/icons/icon-changelink-hover.png | Bin 0 -> 2924 bytes assets/img/icons/icon-changelink.png | Bin 0 -> 2925 bytes assets/img/icons/icon-changelist-actions.png | Bin 0 -> 369 bytes assets/img/icons/icon-clock-hover.png | Bin 0 -> 3214 bytes assets/img/icons/icon-clock.png | Bin 0 -> 3213 bytes .../icons/icon-date-hierarchy-back-hover.png | Bin 0 -> 170 bytes assets/img/icons/icon-date-hierarchy-back.png | Bin 0 -> 170 bytes assets/img/icons/icon-datepicker-hover.png | Bin 0 -> 236 bytes assets/img/icons/icon-datepicker.png | Bin 0 -> 237 bytes assets/img/icons/icon-dropdown-hover.png | Bin 0 -> 215 bytes assets/img/icons/icon-dropdown.png | Bin 0 -> 215 bytes assets/img/icons/icon-fb-show-hover.png | Bin 0 -> 3136 bytes assets/img/icons/icon-fb-show.png | Bin 0 -> 380 bytes assets/img/icons/icon-fb_show-hover.png | Bin 0 -> 3312 bytes assets/img/icons/icon-fb_show.png | Bin 0 -> 3305 bytes assets/img/icons/icon-form-select.png | Bin 0 -> 289 bytes ...con-inline_item_tools-addhandler-hover.png | Bin 0 -> 159 bytes .../icon-inline_item_tools-addhandler.png | Bin 0 -> 163 bytes ...n-inline_item_tools-closehandler-hover.png | Bin 0 -> 220 bytes .../icon-inline_item_tools-closehandler.png | Bin 0 -> 219 bytes ...con-inline_item_tools-deletelink-hover.png | Bin 0 -> 266 bytes .../icon-inline_item_tools-deletelink.png | Bin 0 -> 237 bytes ...on-inline_item_tools-draghandler-hover.png | Bin 0 -> 246 bytes .../icon-inline_item_tools-draghandler.png | Bin 0 -> 246 bytes ...on-inline_item_tools-openhandler-hover.png | Bin 0 -> 233 bytes .../icon-inline_item_tools-openhandler.png | Bin 0 -> 234 bytes ...n-inline_item_tools-viewsitelink-hover.png | Bin 0 -> 199 bytes .../icon-inline_item_tools-viewsitelink.png | Bin 0 -> 200 bytes .../icons/icon-menulist_external-hover.png | Bin 0 -> 2989 bytes assets/img/icons/icon-menulist_external.png | Bin 0 -> 2990 bytes .../icons/icon-menulist_internal-hover.png | Bin 0 -> 2980 bytes assets/img/icons/icon-menulist_internal.png | Bin 0 -> 2957 bytes .../icons/icon-navigation-external-hover.png | Bin 0 -> 2989 bytes assets/img/icons/icon-navigation-external.png | Bin 0 -> 2990 bytes .../icons/icon-navigation-internal-hover.png | Bin 0 -> 2980 bytes assets/img/icons/icon-navigation-internal.png | Bin 0 -> 2957 bytes assets/img/icons/icon-no.png | Bin 0 -> 140 bytes .../icons/icon-object-tools-add-handler.png | Bin 0 -> 158 bytes .../img/icons/icon-related-lookup-hover.png | Bin 0 -> 3136 bytes assets/img/icons/icon-related-lookup.png | Bin 0 -> 3139 bytes .../img/icons/icon-related_lookup-hover.png | Bin 0 -> 3136 bytes assets/img/icons/icon-related_lookup.png | Bin 0 -> 3139 bytes assets/img/icons/icon-search-hover.png | Bin 0 -> 3136 bytes assets/img/icons/icon-search.png | Bin 0 -> 3139 bytes assets/img/icons/icon-searchbox.png | Bin 0 -> 3136 bytes ...icon-selector_add-m2m_horizontal-hover.png | Bin 0 -> 2995 bytes .../icon-selector_add-m2m_horizontal.png | Bin 0 -> 2991 bytes .../icon-selector_add-m2m_vertical-hover.png | Bin 0 -> 3023 bytes .../icons/icon-selector_add-m2m_vertical.png | Bin 0 -> 3023 bytes ...n-selector_remove-m2m_horizontal-hover.png | Bin 0 -> 3003 bytes .../icon-selector_remove-m2m_horizontal.png | Bin 0 -> 2998 bytes ...con-selector_remove-m2m_vertical-hover.png | Bin 0 -> 3009 bytes .../icon-selector_remove-m2m_vertical.png | Bin 0 -> 3009 bytes assets/img/icons/icon-th-ascending.png | Bin 0 -> 240 bytes assets/img/icons/icon-th-descending.png | Bin 0 -> 243 bytes assets/img/icons/icon-timepicker-hover.png | Bin 0 -> 3214 bytes assets/img/icons/icon-timepicker.png | Bin 0 -> 3213 bytes .../icons/icon-tools-add-handler-hover.png | Bin 0 -> 148 bytes assets/img/icons/icon-tools-add-handler.png | Bin 0 -> 191 bytes .../icons/icon-tools-close-handler-hover.png | Bin 0 -> 241 bytes assets/img/icons/icon-tools-close-handler.png | Bin 0 -> 248 bytes .../icons/icon-tools-delete-handler-hover.png | Bin 0 -> 199 bytes .../img/icons/icon-tools-delete-handler.png | Bin 0 -> 200 bytes .../icons/icon-tools-drag-handler-hover.png | Bin 0 -> 183 bytes assets/img/icons/icon-tools-drag-handler.png | Bin 0 -> 229 bytes .../icons/icon-tools-open-handler-hover.png | Bin 0 -> 262 bytes assets/img/icons/icon-tools-open-handler.png | Bin 0 -> 256 bytes .../icons/icon-tools-remove-handler-hover.png | Bin 0 -> 135 bytes .../img/icons/icon-tools-remove-handler.png | Bin 0 -> 152 bytes .../icons/icon-tools-trash-handler-hover.png | Bin 0 -> 210 bytes assets/img/icons/icon-tools-trash-handler.png | Bin 0 -> 210 bytes .../icons/icon-tools-viewsite-link-hover.png | Bin 0 -> 190 bytes assets/img/icons/icon-tools-viewsite-link.png | Bin 0 -> 228 bytes assets/img/icons/icon-unknown.png | Bin 0 -> 198 bytes assets/img/icons/icon-yes.png | Bin 0 -> 221 bytes .../icons/icon_fieldset_collapse-closed.png | Bin 0 -> 210 bytes .../img/icons/icon_fieldset_collapse-open.png | Bin 0 -> 192 bytes .../icon_inline-item-tools_addhandler.png | Bin 0 -> 2985 bytes .../icon_inline-item-tools_closehandler.png | Bin 0 -> 3046 bytes .../icon_inline-item-tools_openhandler.png | Bin 0 -> 3056 bytes assets/img/icons/ui-datepicker-next-hover.png | Bin 0 -> 174 bytes assets/img/icons/ui-datepicker-next.png | Bin 0 -> 173 bytes assets/img/icons/ui-datepicker-prev-hover.png | Bin 0 -> 169 bytes assets/img/icons/ui-datepicker-prev.png | Bin 0 -> 181 bytes assets/img/input-throbber.gif | Bin 0 -> 1737 bytes assets/tinymce/.svn/all-wcprops | 11 + assets/tinymce/.svn/entries | 68 + .../.svn/text-base/changelog.txt.svn-base | 993 ++ assets/tinymce/changelog.txt | 993 ++ assets/tinymce/examples/.svn/all-wcprops | 11 + assets/tinymce/examples/.svn/entries | 62 + .../.svn/text-base/index.html.svn-base | 94 + assets/tinymce/examples/index.html | 94 + assets/tinymce/jscripts/.svn/all-wcprops | 5 + assets/tinymce/jscripts/.svn/entries | 31 + .../jscripts/tiny_mce/.svn/all-wcprops | 35 + assets/tinymce/jscripts/tiny_mce/.svn/entries | 210 + .../.svn/text-base/jquery.tinymce.js.svn-base | 1 + .../.svn/text-base/license.txt.svn-base | 504 + .../.svn/text-base/tiny_mce.js.svn-base | 1 + .../.svn/text-base/tiny_mce_popup.js.svn-base | 5 + .../.svn/text-base/tiny_mce_src.js.svn-base | 13094 ++++++++++++++++ .../jscripts/tiny_mce/jquery.tinymce.js | 1 + .../jscripts/tiny_mce/langs/.svn/all-wcprops | 23 + .../jscripts/tiny_mce/langs/.svn/entries | 130 + .../langs/.svn/text-base/de.js.svn-base | 155 + .../langs/.svn/text-base/en.js.svn-base | 154 + .../langs/.svn/text-base/fr.js.svn-base | 154 + assets/tinymce/jscripts/tiny_mce/langs/de.js | 155 + assets/tinymce/jscripts/tiny_mce/langs/en.js | 154 + assets/tinymce/jscripts/tiny_mce/langs/fr.js | 154 + assets/tinymce/jscripts/tiny_mce/langs/ru.js | 173 + assets/tinymce/jscripts/tiny_mce/license.txt | 504 + .../tiny_mce/plugins/.svn/all-wcprops | 5 + .../jscripts/tiny_mce/plugins/.svn/entries | 160 + .../tiny_mce/plugins/advhr/.svn/all-wcprops | 23 + .../tiny_mce/plugins/advhr/.svn/entries | 139 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 57 + .../advhr/.svn/text-base/rule.htm.svn-base | 57 + .../plugins/advhr/css/.svn/all-wcprops | 11 + .../tiny_mce/plugins/advhr/css/.svn/entries | 62 + .../css/.svn/text-base/advhr.css.svn-base | 5 + .../tiny_mce/plugins/advhr/css/advhr.css | 5 + .../tiny_mce/plugins/advhr/editor_plugin.js | 1 + .../plugins/advhr/editor_plugin_src.js | 57 + .../plugins/advhr/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/advhr/js/.svn/entries | 62 + .../advhr/js/.svn/text-base/rule.js.svn-base | 43 + .../tiny_mce/plugins/advhr/js/rule.js | 43 + .../plugins/advhr/langs/.svn/all-wcprops | 23 + .../tiny_mce/plugins/advhr/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 5 + .../langs/.svn/text-base/en_dlg.js.svn-base | 5 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 5 + .../tiny_mce/plugins/advhr/langs/de_dlg.js | 5 + .../tiny_mce/plugins/advhr/langs/en_dlg.js | 5 + .../tiny_mce/plugins/advhr/langs/fr_dlg.js | 5 + .../jscripts/tiny_mce/plugins/advhr/rule.htm | 57 + .../plugins/advimage/.svn/all-wcprops | 23 + .../tiny_mce/plugins/advimage/.svn/entries | 142 + .../.svn/prop-base/editor_plugin.js.svn-base | 9 + .../prop-base/editor_plugin_src.js.svn-base | 9 + .../.svn/prop-base/image.htm.svn-base | 9 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 47 + .../.svn/text-base/image.htm.svn-base | 208 + .../plugins/advimage/css/.svn/all-wcprops | 11 + .../plugins/advimage/css/.svn/entries | 62 + .../css/.svn/prop-base/advimage.css.svn-base | 9 + .../css/.svn/text-base/advimage.css.svn-base | 13 + .../plugins/advimage/css/advimage.css | 13 + .../plugins/advimage/editor_plugin.js | 1 + .../plugins/advimage/editor_plugin_src.js | 47 + .../tiny_mce/plugins/advimage/image.htm | 208 + .../plugins/advimage/img/.svn/all-wcprops | 11 + .../plugins/advimage/img/.svn/entries | 62 + .../img/.svn/prop-base/sample.gif.svn-base | 9 + .../img/.svn/text-base/sample.gif.svn-base | Bin 0 -> 1624 bytes .../tiny_mce/plugins/advimage/img/sample.gif | Bin 0 -> 1624 bytes .../plugins/advimage/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/advimage/js/.svn/entries | 62 + .../js/.svn/prop-base/image.js.svn-base | 9 + .../js/.svn/text-base/image.js.svn-base | 443 + .../tiny_mce/plugins/advimage/js/image.js | 443 + .../plugins/advimage/langs/.svn/all-wcprops | 17 + .../plugins/advimage/langs/.svn/entries | 96 + .../langs/.svn/prop-base/de_dlg.js.svn-base | 9 + .../langs/.svn/prop-base/en_dlg.js.svn-base | 9 + .../langs/.svn/text-base/de_dlg.js.svn-base | 43 + .../langs/.svn/text-base/en_dlg.js.svn-base | 43 + .../tiny_mce/plugins/advimage/langs/de_dlg.js | 43 + .../tiny_mce/plugins/advimage/langs/en_dlg.js | 43 + .../plugins/advimage_orig/.svn/all-wcprops | 23 + .../plugins/advimage_orig/.svn/entries | 142 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 50 + .../.svn/text-base/image.htm.svn-base | 232 + .../advimage_orig/css/.svn/all-wcprops | 11 + .../plugins/advimage_orig/css/.svn/entries | 62 + .../css/.svn/text-base/advimage.css.svn-base | 13 + .../plugins/advimage_orig/css/advimage.css | 13 + .../plugins/advimage_orig/editor_plugin.js | 1 + .../advimage_orig/editor_plugin_src.js | 50 + .../tiny_mce/plugins/advimage_orig/image.htm | 232 + .../advimage_orig/img/.svn/all-wcprops | 11 + .../plugins/advimage_orig/img/.svn/entries | 62 + .../img/.svn/prop-base/sample.gif.svn-base | 5 + .../img/.svn/text-base/sample.gif.svn-base | Bin 0 -> 1624 bytes .../plugins/advimage_orig/img/sample.gif | Bin 0 -> 1624 bytes .../plugins/advimage_orig/js/.svn/all-wcprops | 11 + .../plugins/advimage_orig/js/.svn/entries | 62 + .../js/.svn/text-base/image.js.svn-base | 443 + .../plugins/advimage_orig/js/image.js | 443 + .../advimage_orig/langs/.svn/all-wcprops | 23 + .../plugins/advimage_orig/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 43 + .../langs/.svn/text-base/en_dlg.js.svn-base | 43 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 43 + .../plugins/advimage_orig/langs/de_dlg.js | 43 + .../plugins/advimage_orig/langs/en_dlg.js | 43 + .../plugins/advimage_orig/langs/fr_dlg.js | 43 + .../tiny_mce/plugins/advlink/.svn/all-wcprops | 23 + .../tiny_mce/plugins/advlink/.svn/entries | 139 + .../.svn/prop-base/editor_plugin.js.svn-base | 9 + .../prop-base/editor_plugin_src.js.svn-base | 9 + .../advlink/.svn/prop-base/link.htm.svn-base | 9 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 58 + .../advlink/.svn/text-base/link.htm.svn-base | 311 + .../plugins/advlink/css/.svn/all-wcprops | 11 + .../tiny_mce/plugins/advlink/css/.svn/entries | 62 + .../css/.svn/prop-base/advlink.css.svn-base | 9 + .../css/.svn/text-base/advlink.css.svn-base | 8 + .../tiny_mce/plugins/advlink/css/advlink.css | 8 + .../tiny_mce/plugins/advlink/editor_plugin.js | 1 + .../plugins/advlink/editor_plugin_src.js | 58 + .../plugins/advlink/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/advlink/js/.svn/entries | 62 + .../js/.svn/prop-base/advlink.js.svn-base | 9 + .../js/.svn/text-base/advlink.js.svn-base | 527 + .../tiny_mce/plugins/advlink/js/advlink.js | 527 + .../plugins/advlink/langs/.svn/all-wcprops | 17 + .../plugins/advlink/langs/.svn/entries | 96 + .../langs/.svn/prop-base/de_dlg.js.svn-base | 9 + .../langs/.svn/prop-base/en_dlg.js.svn-base | 9 + .../langs/.svn/text-base/de_dlg.js.svn-base | 52 + .../langs/.svn/text-base/en_dlg.js.svn-base | 52 + .../tiny_mce/plugins/advlink/langs/de_dlg.js | 52 + .../tiny_mce/plugins/advlink/langs/en_dlg.js | 52 + .../tiny_mce/plugins/advlink/link.htm | 311 + .../plugins/advlink_orig/.svn/all-wcprops | 23 + .../plugins/advlink_orig/.svn/entries | 139 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 61 + .../.svn/text-base/link.htm.svn-base | 333 + .../plugins/advlink_orig/css/.svn/all-wcprops | 11 + .../plugins/advlink_orig/css/.svn/entries | 62 + .../css/.svn/text-base/advlink.css.svn-base | 8 + .../plugins/advlink_orig/css/advlink.css | 8 + .../plugins/advlink_orig/editor_plugin.js | 1 + .../plugins/advlink_orig/editor_plugin_src.js | 61 + .../plugins/advlink_orig/js/.svn/all-wcprops | 11 + .../plugins/advlink_orig/js/.svn/entries | 62 + .../js/.svn/text-base/advlink.js.svn-base | 528 + .../plugins/advlink_orig/js/advlink.js | 528 + .../advlink_orig/langs/.svn/all-wcprops | 23 + .../plugins/advlink_orig/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 52 + .../langs/.svn/text-base/en_dlg.js.svn-base | 52 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 52 + .../plugins/advlink_orig/langs/de_dlg.js | 52 + .../plugins/advlink_orig/langs/en_dlg.js | 52 + .../plugins/advlink_orig/langs/fr_dlg.js | 52 + .../tiny_mce/plugins/advlink_orig/link.htm | 333 + .../tiny_mce/plugins/advlist/.svn/all-wcprops | 17 + .../tiny_mce/plugins/advlist/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 154 + .../tiny_mce/plugins/advlist/editor_plugin.js | 1 + .../plugins/advlist/editor_plugin_src.js | 154 + .../plugins/autoresize/.svn/all-wcprops | 17 + .../tiny_mce/plugins/autoresize/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 117 + .../plugins/autoresize/editor_plugin.js | 1 + .../plugins/autoresize/editor_plugin_src.js | 117 + .../plugins/autosave/.svn/all-wcprops | 17 + .../tiny_mce/plugins/autosave/.svn/entries | 102 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 422 + .../plugins/autosave/editor_plugin.js | 1 + .../plugins/autosave/editor_plugin_src.js | 422 + .../plugins/autosave/images/.svn/all-wcprops | 5 + .../plugins/autosave/images/.svn/entries | 28 + .../plugins/autosave/langs/.svn/all-wcprops | 11 + .../plugins/autosave/langs/.svn/entries | 62 + .../langs/.svn/text-base/en.js.svn-base | 4 + .../tiny_mce/plugins/autosave/langs/en.js | 4 + .../tiny_mce/plugins/bbcode/.svn/all-wcprops | 17 + .../tiny_mce/plugins/bbcode/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 120 + .../tiny_mce/plugins/bbcode/editor_plugin.js | 1 + .../plugins/bbcode/editor_plugin_src.js | 120 + .../plugins/contextmenu/.svn/all-wcprops | 17 + .../tiny_mce/plugins/contextmenu/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 127 + .../plugins/contextmenu/editor_plugin.js | 1 + .../plugins/contextmenu/editor_plugin_src.js | 127 + .../plugins/directionality/.svn/all-wcprops | 17 + .../plugins/directionality/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 82 + .../plugins/directionality/editor_plugin.js | 1 + .../directionality/editor_plugin_src.js | 82 + .../plugins/emotions/.svn/all-wcprops | 23 + .../tiny_mce/plugins/emotions/.svn/entries | 139 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 43 + .../.svn/text-base/emotions.htm.svn-base | 40 + .../plugins/emotions/editor_plugin.js | 1 + .../plugins/emotions/editor_plugin_src.js | 43 + .../tiny_mce/plugins/emotions/emotions.htm | 40 + .../plugins/emotions/img/.svn/all-wcprops | 101 + .../plugins/emotions/img/.svn/entries | 572 + .../.svn/prop-base/smiley-cool.gif.svn-base | 5 + .../.svn/prop-base/smiley-cry.gif.svn-base | 5 + .../prop-base/smiley-embarassed.gif.svn-base | 5 + .../smiley-foot-in-mouth.gif.svn-base | 5 + .../.svn/prop-base/smiley-frown.gif.svn-base | 5 + .../prop-base/smiley-innocent.gif.svn-base | 5 + .../.svn/prop-base/smiley-kiss.gif.svn-base | 5 + .../prop-base/smiley-laughing.gif.svn-base | 5 + .../prop-base/smiley-money-mouth.gif.svn-base | 5 + .../.svn/prop-base/smiley-sealed.gif.svn-base | 5 + .../.svn/prop-base/smiley-smile.gif.svn-base | 5 + .../prop-base/smiley-surprised.gif.svn-base | 5 + .../prop-base/smiley-tongue-out.gif.svn-base | 5 + .../prop-base/smiley-undecided.gif.svn-base | 5 + .../.svn/prop-base/smiley-wink.gif.svn-base | 5 + .../.svn/prop-base/smiley-yell.gif.svn-base | 5 + .../.svn/text-base/smiley-cool.gif.svn-base | Bin 0 -> 354 bytes .../.svn/text-base/smiley-cry.gif.svn-base | Bin 0 -> 329 bytes .../text-base/smiley-embarassed.gif.svn-base | Bin 0 -> 331 bytes .../smiley-foot-in-mouth.gif.svn-base | Bin 0 -> 344 bytes .../.svn/text-base/smiley-frown.gif.svn-base | Bin 0 -> 340 bytes .../text-base/smiley-innocent.gif.svn-base | Bin 0 -> 336 bytes .../.svn/text-base/smiley-kiss.gif.svn-base | Bin 0 -> 338 bytes .../text-base/smiley-laughing.gif.svn-base | Bin 0 -> 344 bytes .../text-base/smiley-money-mouth.gif.svn-base | Bin 0 -> 321 bytes .../.svn/text-base/smiley-sealed.gif.svn-base | Bin 0 -> 325 bytes .../.svn/text-base/smiley-smile.gif.svn-base | Bin 0 -> 345 bytes .../text-base/smiley-surprised.gif.svn-base | Bin 0 -> 342 bytes .../text-base/smiley-tongue-out.gif.svn-base | Bin 0 -> 328 bytes .../text-base/smiley-undecided.gif.svn-base | Bin 0 -> 337 bytes .../.svn/text-base/smiley-wink.gif.svn-base | Bin 0 -> 351 bytes .../.svn/text-base/smiley-yell.gif.svn-base | Bin 0 -> 336 bytes .../plugins/emotions/img/smiley-cool.gif | Bin 0 -> 354 bytes .../plugins/emotions/img/smiley-cry.gif | Bin 0 -> 329 bytes .../emotions/img/smiley-embarassed.gif | Bin 0 -> 331 bytes .../emotions/img/smiley-foot-in-mouth.gif | Bin 0 -> 344 bytes .../plugins/emotions/img/smiley-frown.gif | Bin 0 -> 340 bytes .../plugins/emotions/img/smiley-innocent.gif | Bin 0 -> 336 bytes .../plugins/emotions/img/smiley-kiss.gif | Bin 0 -> 338 bytes .../plugins/emotions/img/smiley-laughing.gif | Bin 0 -> 344 bytes .../emotions/img/smiley-money-mouth.gif | Bin 0 -> 321 bytes .../plugins/emotions/img/smiley-sealed.gif | Bin 0 -> 325 bytes .../plugins/emotions/img/smiley-smile.gif | Bin 0 -> 345 bytes .../plugins/emotions/img/smiley-surprised.gif | Bin 0 -> 342 bytes .../emotions/img/smiley-tongue-out.gif | Bin 0 -> 328 bytes .../plugins/emotions/img/smiley-undecided.gif | Bin 0 -> 337 bytes .../plugins/emotions/img/smiley-wink.gif | Bin 0 -> 351 bytes .../plugins/emotions/img/smiley-yell.gif | Bin 0 -> 336 bytes .../plugins/emotions/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/emotions/js/.svn/entries | 62 + .../js/.svn/text-base/emotions.js.svn-base | 22 + .../tiny_mce/plugins/emotions/js/emotions.js | 22 + .../plugins/emotions/langs/.svn/all-wcprops | 23 + .../plugins/emotions/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 20 + .../langs/.svn/text-base/en_dlg.js.svn-base | 20 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 20 + .../tiny_mce/plugins/emotions/langs/de_dlg.js | 20 + .../tiny_mce/plugins/emotions/langs/en_dlg.js | 20 + .../tiny_mce/plugins/emotions/langs/fr_dlg.js | 20 + .../tiny_mce/plugins/example/.svn/all-wcprops | 23 + .../tiny_mce/plugins/example/.svn/entries | 139 + .../.svn/text-base/dialog.htm.svn-base | 22 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 84 + .../tiny_mce/plugins/example/dialog.htm | 22 + .../tiny_mce/plugins/example/editor_plugin.js | 1 + .../plugins/example/editor_plugin_src.js | 84 + .../plugins/example/img/.svn/all-wcprops | 11 + .../tiny_mce/plugins/example/img/.svn/entries | 62 + .../img/.svn/prop-base/example.gif.svn-base | 5 + .../img/.svn/text-base/example.gif.svn-base | Bin 0 -> 87 bytes .../tiny_mce/plugins/example/img/example.gif | Bin 0 -> 87 bytes .../plugins/example/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/example/js/.svn/entries | 62 + .../js/.svn/text-base/dialog.js.svn-base | 19 + .../tiny_mce/plugins/example/js/dialog.js | 19 + .../plugins/example/langs/.svn/all-wcprops | 17 + .../plugins/example/langs/.svn/entries | 96 + .../langs/.svn/text-base/en.js.svn-base | 3 + .../langs/.svn/text-base/en_dlg.js.svn-base | 3 + .../tiny_mce/plugins/example/langs/en.js | 3 + .../tiny_mce/plugins/example/langs/en_dlg.js | 3 + .../plugins/fullpage/.svn/all-wcprops | 23 + .../tiny_mce/plugins/fullpage/.svn/entries | 139 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 149 + .../.svn/text-base/fullpage.htm.svn-base | 571 + .../plugins/fullpage/css/.svn/all-wcprops | 11 + .../plugins/fullpage/css/.svn/entries | 62 + .../css/.svn/text-base/fullpage.css.svn-base | 182 + .../plugins/fullpage/css/fullpage.css | 182 + .../plugins/fullpage/editor_plugin.js | 1 + .../plugins/fullpage/editor_plugin_src.js | 149 + .../tiny_mce/plugins/fullpage/fullpage.htm | 571 + .../plugins/fullpage/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/fullpage/js/.svn/entries | 62 + .../js/.svn/text-base/fullpage.js.svn-base | 471 + .../tiny_mce/plugins/fullpage/js/fullpage.js | 471 + .../plugins/fullpage/langs/.svn/all-wcprops | 23 + .../plugins/fullpage/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 85 + .../langs/.svn/text-base/en_dlg.js.svn-base | 85 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 85 + .../tiny_mce/plugins/fullpage/langs/de_dlg.js | 85 + .../tiny_mce/plugins/fullpage/langs/en_dlg.js | 85 + .../tiny_mce/plugins/fullpage/langs/fr_dlg.js | 85 + .../plugins/fullscreen/.svn/all-wcprops | 23 + .../tiny_mce/plugins/fullscreen/.svn/entries | 130 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 148 + .../.svn/text-base/fullscreen.htm.svn-base | 109 + .../plugins/fullscreen/editor_plugin.js | 1 + .../plugins/fullscreen/editor_plugin_src.js | 148 + .../plugins/fullscreen/fullscreen.htm | 109 + .../plugins/grappelli/.svn/all-wcprops | 17 + .../tiny_mce/plugins/grappelli/.svn/entries | 102 + .../.svn/prop-base/editor_plugin.js.svn-base | 5 + .../prop-base/editor_plugin_src.js.svn-base | 5 + .../.svn/text-base/editor_plugin.js.svn-base | 202 + .../text-base/editor_plugin_src.js.svn-base | 62 + .../plugins/grappelli/editor_plugin.js | 202 + .../plugins/grappelli/editor_plugin_src.js | 62 + .../plugins/grappelli/img/.svn/all-wcprops | 17 + .../plugins/grappelli/img/.svn/entries | 96 + .../.svn/prop-base/show_advanced.png.svn-base | 5 + .../.svn/prop-base/visualchars.png.svn-base | 5 + .../.svn/text-base/show_advanced.png.svn-base | Bin 0 -> 320 bytes .../.svn/text-base/visualchars.png.svn-base | Bin 0 -> 285 bytes .../plugins/grappelli/img/show_advanced.png | Bin 0 -> 320 bytes .../plugins/grappelli/img/visualchars.png | Bin 0 -> 285 bytes .../plugins/grappelli/langs/.svn/all-wcprops | 23 + .../plugins/grappelli/langs/.svn/entries | 130 + .../langs/.svn/prop-base/de.js.svn-base | 5 + .../langs/.svn/prop-base/en.js.svn-base | 5 + .../langs/.svn/prop-base/fr.js.svn-base | 5 + .../langs/.svn/text-base/de.js.svn-base | 4 + .../langs/.svn/text-base/en.js.svn-base | 4 + .../langs/.svn/text-base/fr.js.svn-base | 4 + .../tiny_mce/plugins/grappelli/langs/de.js | 4 + .../tiny_mce/plugins/grappelli/langs/en.js | 4 + .../tiny_mce/plugins/grappelli/langs/fr.js | 4 + .../tiny_mce/plugins/grappelli/langs/ru.js | 4 + .../grappelli_contextmenu/.svn/all-wcprops | 17 + .../grappelli_contextmenu/.svn/entries | 99 + .../.svn/prop-base/editor_plugin.js.svn-base | 5 + .../prop-base/editor_plugin_src.js.svn-base | 5 + .../.svn/text-base/editor_plugin.js.svn-base | 250 + .../text-base/editor_plugin_src.js.svn-base | 95 + .../grappelli_contextmenu/editor_plugin.js | 250 + .../editor_plugin_src.js | 95 + .../langs/.svn/all-wcprops | 23 + .../grappelli_contextmenu/langs/.svn/entries | 130 + .../langs/.svn/prop-base/de.js.svn-base | 5 + .../langs/.svn/prop-base/en.js.svn-base | 5 + .../langs/.svn/prop-base/fr.js.svn-base | 5 + .../langs/.svn/text-base/de.js.svn-base | 20 + .../langs/.svn/text-base/en.js.svn-base | 10 + .../langs/.svn/text-base/fr.js.svn-base | 10 + .../plugins/grappelli_contextmenu/langs/de.js | 20 + .../plugins/grappelli_contextmenu/langs/en.js | 10 + .../plugins/grappelli_contextmenu/langs/fr.js | 10 + .../plugins/grappelli_contextmenu/langs/ru.js | 10 + .../tiny_mce/plugins/iespell/.svn/all-wcprops | 17 + .../tiny_mce/plugins/iespell/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 54 + .../tiny_mce/plugins/iespell/editor_plugin.js | 1 + .../plugins/iespell/editor_plugin_src.js | 54 + .../plugins/inlinepopups/.svn/all-wcprops | 23 + .../plugins/inlinepopups/.svn/entries | 133 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 635 + .../.svn/text-base/template.htm.svn-base | 387 + .../plugins/inlinepopups/editor_plugin.js | 1 + .../plugins/inlinepopups/editor_plugin_src.js | 635 + .../inlinepopups/skins/.svn/all-wcprops | 5 + .../plugins/inlinepopups/skins/.svn/entries | 31 + .../skins/clearlooks2/.svn/all-wcprops | 11 + .../skins/clearlooks2/.svn/entries | 65 + .../.svn/text-base/window.css.svn-base | 90 + .../skins/clearlooks2/img/.svn/all-wcprops | 47 + .../skins/clearlooks2/img/.svn/entries | 266 + .../img/.svn/prop-base/alert.gif.svn-base | 5 + .../img/.svn/prop-base/button.gif.svn-base | 5 + .../img/.svn/prop-base/buttons.gif.svn-base | 5 + .../img/.svn/prop-base/confirm.gif.svn-base | 5 + .../img/.svn/prop-base/corners.gif.svn-base | 5 + .../.svn/prop-base/horizontal.gif.svn-base | 5 + .../img/.svn/prop-base/vertical.gif.svn-base | 5 + .../img/.svn/text-base/alert.gif.svn-base | Bin 0 -> 818 bytes .../img/.svn/text-base/button.gif.svn-base | Bin 0 -> 280 bytes .../img/.svn/text-base/buttons.gif.svn-base | Bin 0 -> 1195 bytes .../img/.svn/text-base/confirm.gif.svn-base | Bin 0 -> 915 bytes .../img/.svn/text-base/corners.gif.svn-base | Bin 0 -> 911 bytes .../.svn/text-base/horizontal.gif.svn-base | Bin 0 -> 769 bytes .../img/.svn/text-base/vertical.gif.svn-base | Bin 0 -> 92 bytes .../skins/clearlooks2/img/alert.gif | Bin 0 -> 818 bytes .../skins/clearlooks2/img/button.gif | Bin 0 -> 280 bytes .../skins/clearlooks2/img/buttons.gif | Bin 0 -> 1195 bytes .../skins/clearlooks2/img/confirm.gif | Bin 0 -> 915 bytes .../skins/clearlooks2/img/corners.gif | Bin 0 -> 911 bytes .../skins/clearlooks2/img/horizontal.gif | Bin 0 -> 769 bytes .../skins/clearlooks2/img/vertical.gif | Bin 0 -> 92 bytes .../inlinepopups/skins/clearlooks2/window.css | 90 + .../plugins/inlinepopups/template.htm | 387 + .../plugins/insertdatetime/.svn/all-wcprops | 17 + .../plugins/insertdatetime/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 83 + .../plugins/insertdatetime/editor_plugin.js | 1 + .../insertdatetime/editor_plugin_src.js | 83 + .../tiny_mce/plugins/layer/.svn/all-wcprops | 17 + .../tiny_mce/plugins/layer/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 212 + .../tiny_mce/plugins/layer/editor_plugin.js | 1 + .../plugins/layer/editor_plugin_src.js | 212 + .../plugins/legacyoutput/.svn/all-wcprops | 17 + .../plugins/legacyoutput/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 136 + .../plugins/legacyoutput/editor_plugin.js | 1 + .../plugins/legacyoutput/editor_plugin_src.js | 136 + .../tiny_mce/plugins/media/.svn/all-wcprops | 23 + .../tiny_mce/plugins/media/.svn/entries | 142 + .../.svn/prop-base/editor_plugin.js.svn-base | 9 + .../prop-base/editor_plugin_src.js.svn-base | 9 + .../media/.svn/prop-base/media.htm.svn-base | 9 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 374 + .../media/.svn/text-base/media.htm.svn-base | 636 + .../plugins/media/css/.svn/all-wcprops | 17 + .../tiny_mce/plugins/media/css/.svn/entries | 96 + .../css/.svn/prop-base/content.css.svn-base | 9 + .../css/.svn/prop-base/media.css.svn-base | 9 + .../css/.svn/text-base/content.css.svn-base | 6 + .../css/.svn/text-base/media.css.svn-base | 16 + .../tiny_mce/plugins/media/css/content.css | 6 + .../tiny_mce/plugins/media/css/media.css | 16 + .../tiny_mce/plugins/media/editor_plugin.js | 1 + .../plugins/media/editor_plugin_src.js | 374 + .../plugins/media/img/.svn/all-wcprops | 47 + .../tiny_mce/plugins/media/img/.svn/entries | 266 + .../img/.svn/prop-base/flash.gif.svn-base | 9 + .../.svn/prop-base/flv_player.swf.svn-base | 9 + .../img/.svn/prop-base/quicktime.gif.svn-base | 9 + .../img/.svn/prop-base/realmedia.gif.svn-base | 9 + .../img/.svn/prop-base/shockwave.gif.svn-base | 9 + .../img/.svn/prop-base/trans.gif.svn-base | 9 + .../.svn/prop-base/windowsmedia.gif.svn-base | 9 + .../img/.svn/text-base/flash.gif.svn-base | Bin 0 -> 241 bytes .../.svn/text-base/flv_player.swf.svn-base | Bin 0 -> 11668 bytes .../img/.svn/text-base/quicktime.gif.svn-base | Bin 0 -> 303 bytes .../img/.svn/text-base/realmedia.gif.svn-base | Bin 0 -> 439 bytes .../img/.svn/text-base/shockwave.gif.svn-base | Bin 0 -> 387 bytes .../img/.svn/text-base/trans.gif.svn-base | Bin 0 -> 43 bytes .../.svn/text-base/windowsmedia.gif.svn-base | Bin 0 -> 415 bytes .../tiny_mce/plugins/media/img/flash.gif | Bin 0 -> 241 bytes .../tiny_mce/plugins/media/img/flv_player.swf | Bin 0 -> 11668 bytes .../tiny_mce/plugins/media/img/quicktime.gif | Bin 0 -> 303 bytes .../tiny_mce/plugins/media/img/realmedia.gif | Bin 0 -> 439 bytes .../tiny_mce/plugins/media/img/shockwave.gif | Bin 0 -> 387 bytes .../tiny_mce/plugins/media/img/trans.gif | Bin 0 -> 43 bytes .../plugins/media/img/windowsmedia.gif | Bin 0 -> 415 bytes .../plugins/media/js/.svn/all-wcprops | 17 + .../tiny_mce/plugins/media/js/.svn/entries | 96 + .../media/js/.svn/prop-base/embed.js.svn-base | 9 + .../media/js/.svn/prop-base/media.js.svn-base | 9 + .../media/js/.svn/text-base/embed.js.svn-base | 73 + .../media/js/.svn/text-base/media.js.svn-base | 628 + .../tiny_mce/plugins/media/js/embed.js | 73 + .../tiny_mce/plugins/media/js/media.js | 628 + .../plugins/media/langs/.svn/all-wcprops | 17 + .../tiny_mce/plugins/media/langs/.svn/entries | 96 + .../langs/.svn/prop-base/de_dlg.js.svn-base | 9 + .../langs/.svn/prop-base/en_dlg.js.svn-base | 9 + .../langs/.svn/text-base/de_dlg.js.svn-base | 103 + .../langs/.svn/text-base/en_dlg.js.svn-base | 103 + .../tiny_mce/plugins/media/langs/de_dlg.js | 103 + .../tiny_mce/plugins/media/langs/en_dlg.js | 103 + .../jscripts/tiny_mce/plugins/media/media.htm | 636 + .../plugins/media_orig/.svn/all-wcprops | 23 + .../tiny_mce/plugins/media_orig/.svn/entries | 142 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 414 + .../.svn/text-base/media.htm.svn-base | 817 + .../plugins/media_orig/css/.svn/all-wcprops | 17 + .../plugins/media_orig/css/.svn/entries | 96 + .../css/.svn/text-base/content.css.svn-base | 6 + .../css/.svn/text-base/media.css.svn-base | 16 + .../plugins/media_orig/css/content.css | 6 + .../tiny_mce/plugins/media_orig/css/media.css | 16 + .../plugins/media_orig/editor_plugin.js | 1 + .../plugins/media_orig/editor_plugin_src.js | 414 + .../plugins/media_orig/img/.svn/all-wcprops | 47 + .../plugins/media_orig/img/.svn/entries | 266 + .../img/.svn/prop-base/flash.gif.svn-base | 5 + .../.svn/prop-base/flv_player.swf.svn-base | 5 + .../img/.svn/prop-base/quicktime.gif.svn-base | 5 + .../img/.svn/prop-base/realmedia.gif.svn-base | 5 + .../img/.svn/prop-base/shockwave.gif.svn-base | 5 + .../img/.svn/prop-base/trans.gif.svn-base | 5 + .../.svn/prop-base/windowsmedia.gif.svn-base | 5 + .../img/.svn/text-base/flash.gif.svn-base | Bin 0 -> 241 bytes .../.svn/text-base/flv_player.swf.svn-base | Bin 0 -> 11668 bytes .../img/.svn/text-base/quicktime.gif.svn-base | Bin 0 -> 303 bytes .../img/.svn/text-base/realmedia.gif.svn-base | Bin 0 -> 439 bytes .../img/.svn/text-base/shockwave.gif.svn-base | Bin 0 -> 387 bytes .../img/.svn/text-base/trans.gif.svn-base | Bin 0 -> 43 bytes .../.svn/text-base/windowsmedia.gif.svn-base | Bin 0 -> 415 bytes .../tiny_mce/plugins/media_orig/img/flash.gif | Bin 0 -> 241 bytes .../plugins/media_orig/img/flv_player.swf | Bin 0 -> 11668 bytes .../plugins/media_orig/img/quicktime.gif | Bin 0 -> 303 bytes .../plugins/media_orig/img/realmedia.gif | Bin 0 -> 439 bytes .../plugins/media_orig/img/shockwave.gif | Bin 0 -> 387 bytes .../tiny_mce/plugins/media_orig/img/trans.gif | Bin 0 -> 43 bytes .../plugins/media_orig/img/windowsmedia.gif | Bin 0 -> 415 bytes .../plugins/media_orig/js/.svn/all-wcprops | 17 + .../plugins/media_orig/js/.svn/entries | 96 + .../js/.svn/text-base/embed.js.svn-base | 73 + .../js/.svn/text-base/media.js.svn-base | 630 + .../tiny_mce/plugins/media_orig/js/embed.js | 73 + .../tiny_mce/plugins/media_orig/js/media.js | 630 + .../plugins/media_orig/langs/.svn/all-wcprops | 23 + .../plugins/media_orig/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 103 + .../langs/.svn/text-base/en_dlg.js.svn-base | 103 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 103 + .../plugins/media_orig/langs/de_dlg.js | 103 + .../plugins/media_orig/langs/en_dlg.js | 103 + .../plugins/media_orig/langs/fr_dlg.js | 103 + .../tiny_mce/plugins/media_orig/media.htm | 817 + .../plugins/nonbreaking/.svn/all-wcprops | 17 + .../tiny_mce/plugins/nonbreaking/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 53 + .../plugins/nonbreaking/editor_plugin.js | 1 + .../plugins/nonbreaking/editor_plugin_src.js | 53 + .../plugins/noneditable/.svn/all-wcprops | 17 + .../tiny_mce/plugins/noneditable/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 90 + .../plugins/noneditable/editor_plugin.js | 1 + .../plugins/noneditable/editor_plugin_src.js | 90 + .../plugins/pagebreak/.svn/all-wcprops | 17 + .../tiny_mce/plugins/pagebreak/.svn/entries | 102 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 77 + .../plugins/pagebreak/css/.svn/all-wcprops | 11 + .../plugins/pagebreak/css/.svn/entries | 62 + .../css/.svn/text-base/content.css.svn-base | 1 + .../plugins/pagebreak/css/content.css | 1 + .../plugins/pagebreak/editor_plugin.js | 1 + .../plugins/pagebreak/editor_plugin_src.js | 77 + .../plugins/pagebreak/img/.svn/all-wcprops | 17 + .../plugins/pagebreak/img/.svn/entries | 96 + .../img/.svn/prop-base/pagebreak.gif.svn-base | 5 + .../img/.svn/prop-base/trans.gif.svn-base | 5 + .../img/.svn/text-base/pagebreak.gif.svn-base | Bin 0 -> 325 bytes .../img/.svn/text-base/trans.gif.svn-base | Bin 0 -> 43 bytes .../plugins/pagebreak/img/pagebreak.gif | Bin 0 -> 325 bytes .../tiny_mce/plugins/pagebreak/img/trans.gif | Bin 0 -> 43 bytes .../tiny_mce/plugins/paste/.svn/all-wcprops | 35 + .../tiny_mce/plugins/paste/.svn/entries | 207 + .../paste/.svn/prop-base/blank.htm.svn-base | 9 + .../.svn/prop-base/editor_plugin.js.svn-base | 9 + .../prop-base/editor_plugin_src.js.svn-base | 9 + .../.svn/prop-base/pastetext.htm.svn-base | 9 + .../.svn/prop-base/pasteword.htm.svn-base | 9 + .../paste/.svn/text-base/blank.htm.svn-base | 22 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 394 + .../.svn/text-base/pastetext.htm.svn-base | 34 + .../.svn/text-base/pasteword.htm.svn-base | 23 + .../jscripts/tiny_mce/plugins/paste/blank.htm | 22 + .../plugins/paste/css/.svn/all-wcprops | 17 + .../tiny_mce/plugins/paste/css/.svn/entries | 96 + .../css/.svn/prop-base/blank.css.svn-base | 9 + .../css/.svn/prop-base/pasteword.css.svn-base | 9 + .../css/.svn/text-base/blank.css.svn-base | 14 + .../css/.svn/text-base/pasteword.css.svn-base | 3 + .../tiny_mce/plugins/paste/css/blank.css | 14 + .../tiny_mce/plugins/paste/css/pasteword.css | 3 + .../tiny_mce/plugins/paste/editor_plugin.js | 1 + .../plugins/paste/editor_plugin_src.js | 394 + .../plugins/paste/js/.svn/all-wcprops | 17 + .../tiny_mce/plugins/paste/js/.svn/entries | 96 + .../js/.svn/prop-base/pastetext.js.svn-base | 9 + .../js/.svn/prop-base/pasteword.js.svn-base | 9 + .../js/.svn/text-base/pastetext.js.svn-base | 42 + .../js/.svn/text-base/pasteword.js.svn-base | 56 + .../tiny_mce/plugins/paste/js/pastetext.js | 42 + .../tiny_mce/plugins/paste/js/pasteword.js | 56 + .../plugins/paste/langs/.svn/all-wcprops | 17 + .../tiny_mce/plugins/paste/langs/.svn/entries | 96 + .../langs/.svn/prop-base/de_dlg.js.svn-base | 9 + .../langs/.svn/prop-base/en_dlg.js.svn-base | 9 + .../langs/.svn/text-base/de_dlg.js.svn-base | 5 + .../langs/.svn/text-base/en_dlg.js.svn-base | 5 + .../tiny_mce/plugins/paste/langs/de_dlg.js | 5 + .../tiny_mce/plugins/paste/langs/en_dlg.js | 5 + .../tiny_mce/plugins/paste/pastetext.htm | 34 + .../tiny_mce/plugins/paste/pasteword.htm | 23 + .../plugins/paste_orig/.svn/all-wcprops | 29 + .../tiny_mce/plugins/paste_orig/.svn/entries | 170 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 929 ++ .../.svn/text-base/pastetext.htm.svn-base | 27 + .../.svn/text-base/pasteword.htm.svn-base | 21 + .../plugins/paste_orig/editor_plugin.js | 1 + .../plugins/paste_orig/editor_plugin_src.js | 929 ++ .../plugins/paste_orig/js/.svn/all-wcprops | 17 + .../plugins/paste_orig/js/.svn/entries | 96 + .../js/.svn/text-base/pastetext.js.svn-base | 36 + .../js/.svn/text-base/pasteword.js.svn-base | 51 + .../plugins/paste_orig/js/pastetext.js | 36 + .../plugins/paste_orig/js/pasteword.js | 51 + .../plugins/paste_orig/langs/.svn/all-wcprops | 23 + .../plugins/paste_orig/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 5 + .../langs/.svn/text-base/en_dlg.js.svn-base | 5 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 5 + .../plugins/paste_orig/langs/de_dlg.js | 5 + .../plugins/paste_orig/langs/en_dlg.js | 5 + .../plugins/paste_orig/langs/fr_dlg.js | 5 + .../tiny_mce/plugins/paste_orig/pastetext.htm | 27 + .../tiny_mce/plugins/paste_orig/pasteword.htm | 21 + .../tiny_mce/plugins/preview/.svn/all-wcprops | 29 + .../tiny_mce/plugins/preview/.svn/entries | 167 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 53 + .../.svn/text-base/example.html.svn-base | 28 + .../.svn/text-base/preview.html.svn-base | 17 + .../tiny_mce/plugins/preview/editor_plugin.js | 1 + .../plugins/preview/editor_plugin_src.js | 53 + .../tiny_mce/plugins/preview/example.html | 28 + .../plugins/preview/jscripts/.svn/all-wcprops | 11 + .../plugins/preview/jscripts/.svn/entries | 62 + .../jscripts/.svn/text-base/embed.js.svn-base | 73 + .../plugins/preview/jscripts/embed.js | 73 + .../tiny_mce/plugins/preview/preview.html | 17 + .../tiny_mce/plugins/print/.svn/all-wcprops | 17 + .../tiny_mce/plugins/print/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 34 + .../tiny_mce/plugins/print/editor_plugin.js | 1 + .../plugins/print/editor_plugin_src.js | 34 + .../tiny_mce/plugins/save/.svn/all-wcprops | 17 + .../tiny_mce/plugins/save/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 101 + .../tiny_mce/plugins/save/editor_plugin.js | 1 + .../plugins/save/editor_plugin_src.js | 101 + .../plugins/searchreplace/.svn/all-wcprops | 23 + .../plugins/searchreplace/.svn/entries | 139 + .../.svn/prop-base/editor_plugin.js.svn-base | 9 + .../prop-base/editor_plugin_src.js.svn-base | 9 + .../.svn/prop-base/searchreplace.htm.svn-base | 9 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 54 + .../.svn/text-base/searchreplace.htm.svn-base | 87 + .../searchreplace/css/.svn/all-wcprops | 11 + .../plugins/searchreplace/css/.svn/entries | 62 + .../.svn/prop-base/searchreplace.css.svn-base | 9 + .../.svn/text-base/searchreplace.css.svn-base | 6 + .../searchreplace/css/searchreplace.css | 6 + .../plugins/searchreplace/editor_plugin.js | 1 + .../searchreplace/editor_plugin_src.js | 54 + .../plugins/searchreplace/js/.svn/all-wcprops | 11 + .../plugins/searchreplace/js/.svn/entries | 62 + .../.svn/prop-base/searchreplace.js.svn-base | 9 + .../.svn/text-base/searchreplace.js.svn-base | 126 + .../plugins/searchreplace/js/searchreplace.js | 126 + .../searchreplace/langs/.svn/all-wcprops | 17 + .../plugins/searchreplace/langs/.svn/entries | 96 + .../langs/.svn/prop-base/de_dlg.js.svn-base | 9 + .../langs/.svn/prop-base/en_dlg.js.svn-base | 9 + .../langs/.svn/text-base/de_dlg.js.svn-base | 16 + .../langs/.svn/text-base/en_dlg.js.svn-base | 16 + .../plugins/searchreplace/langs/de_dlg.js | 16 + .../plugins/searchreplace/langs/en_dlg.js | 16 + .../plugins/searchreplace/searchreplace.htm | 87 + .../searchreplace_orig/.svn/all-wcprops | 23 + .../plugins/searchreplace_orig/.svn/entries | 139 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 57 + .../.svn/text-base/searchreplace.htm.svn-base | 99 + .../searchreplace_orig/css/.svn/all-wcprops | 11 + .../searchreplace_orig/css/.svn/entries | 62 + .../.svn/text-base/searchreplace.css.svn-base | 6 + .../searchreplace_orig/css/searchreplace.css | 6 + .../searchreplace_orig/editor_plugin.js | 1 + .../searchreplace_orig/editor_plugin_src.js | 57 + .../searchreplace_orig/js/.svn/all-wcprops | 11 + .../searchreplace_orig/js/.svn/entries | 62 + .../.svn/text-base/searchreplace.js.svn-base | 130 + .../searchreplace_orig/js/searchreplace.js | 130 + .../searchreplace_orig/langs/.svn/all-wcprops | 23 + .../searchreplace_orig/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 16 + .../langs/.svn/text-base/en_dlg.js.svn-base | 16 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 16 + .../searchreplace_orig/langs/de_dlg.js | 16 + .../searchreplace_orig/langs/en_dlg.js | 16 + .../searchreplace_orig/langs/fr_dlg.js | 16 + .../searchreplace_orig/searchreplace.htm | 99 + .../plugins/spellchecker/.svn/all-wcprops | 17 + .../plugins/spellchecker/.svn/entries | 102 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 341 + .../plugins/spellchecker/css/.svn/all-wcprops | 11 + .../plugins/spellchecker/css/.svn/entries | 62 + .../css/.svn/text-base/content.css.svn-base | 1 + .../plugins/spellchecker/css/content.css | 1 + .../plugins/spellchecker/editor_plugin.js | 1 + .../plugins/spellchecker/editor_plugin_src.js | 341 + .../plugins/spellchecker/img/.svn/all-wcprops | 11 + .../plugins/spellchecker/img/.svn/entries | 62 + .../img/.svn/prop-base/wline.gif.svn-base | 5 + .../img/.svn/text-base/wline.gif.svn-base | Bin 0 -> 46 bytes .../plugins/spellchecker/img/wline.gif | Bin 0 -> 46 bytes .../tiny_mce/plugins/style/.svn/all-wcprops | 23 + .../tiny_mce/plugins/style/.svn/entries | 139 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 55 + .../style/.svn/text-base/props.htm.svn-base | 726 + .../plugins/style/css/.svn/all-wcprops | 11 + .../tiny_mce/plugins/style/css/.svn/entries | 62 + .../css/.svn/text-base/props.css.svn-base | 13 + .../tiny_mce/plugins/style/css/props.css | 13 + .../tiny_mce/plugins/style/editor_plugin.js | 1 + .../plugins/style/editor_plugin_src.js | 55 + .../plugins/style/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/style/js/.svn/entries | 62 + .../style/js/.svn/text-base/props.js.svn-base | 641 + .../tiny_mce/plugins/style/js/props.js | 641 + .../plugins/style/langs/.svn/all-wcprops | 23 + .../tiny_mce/plugins/style/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 63 + .../langs/.svn/text-base/en_dlg.js.svn-base | 63 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 63 + .../tiny_mce/plugins/style/langs/de_dlg.js | 63 + .../tiny_mce/plugins/style/langs/en_dlg.js | 63 + .../tiny_mce/plugins/style/langs/fr_dlg.js | 63 + .../jscripts/tiny_mce/plugins/style/props.htm | 726 + .../plugins/tabfocus/.svn/all-wcprops | 17 + .../tiny_mce/plugins/tabfocus/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 112 + .../plugins/tabfocus/editor_plugin.js | 1 + .../plugins/tabfocus/editor_plugin_src.js | 112 + .../tiny_mce/plugins/table/.svn/all-wcprops | 41 + .../tiny_mce/plugins/table/.svn/entries | 241 + .../table/.svn/text-base/cell.htm.svn-base | 178 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 1118 ++ .../.svn/text-base/merge_cells.htm.svn-base | 32 + .../table/.svn/text-base/row.htm.svn-base | 155 + .../table/.svn/text-base/table.htm.svn-base | 187 + .../jscripts/tiny_mce/plugins/table/cell.htm | 178 + .../plugins/table/css/.svn/all-wcprops | 23 + .../tiny_mce/plugins/table/css/.svn/entries | 130 + .../css/.svn/text-base/cell.css.svn-base | 17 + .../table/css/.svn/text-base/row.css.svn-base | 25 + .../css/.svn/text-base/table.css.svn-base | 13 + .../tiny_mce/plugins/table/css/cell.css | 17 + .../tiny_mce/plugins/table/css/row.css | 25 + .../tiny_mce/plugins/table/css/table.css | 13 + .../tiny_mce/plugins/table/editor_plugin.js | 1 + .../plugins/table/editor_plugin_src.js | 1118 ++ .../plugins/table/js/.svn/all-wcprops | 29 + .../tiny_mce/plugins/table/js/.svn/entries | 164 + .../table/js/.svn/text-base/cell.js.svn-base | 286 + .../js/.svn/text-base/merge_cells.js.svn-base | 27 + .../table/js/.svn/text-base/row.js.svn-base | 237 + .../table/js/.svn/text-base/table.js.svn-base | 449 + .../tiny_mce/plugins/table/js/cell.js | 286 + .../tiny_mce/plugins/table/js/merge_cells.js | 27 + .../jscripts/tiny_mce/plugins/table/js/row.js | 237 + .../tiny_mce/plugins/table/js/table.js | 449 + .../plugins/table/langs/.svn/all-wcprops | 23 + .../tiny_mce/plugins/table/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 74 + .../langs/.svn/text-base/en_dlg.js.svn-base | 74 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 74 + .../tiny_mce/plugins/table/langs/de_dlg.js | 74 + .../tiny_mce/plugins/table/langs/en_dlg.js | 74 + .../tiny_mce/plugins/table/langs/fr_dlg.js | 74 + .../tiny_mce/plugins/table/merge_cells.htm | 32 + .../jscripts/tiny_mce/plugins/table/row.htm | 155 + .../jscripts/tiny_mce/plugins/table/table.htm | 187 + .../plugins/template/.svn/all-wcprops | 29 + .../tiny_mce/plugins/template/.svn/entries | 173 + .../.svn/prop-base/blank.htm.svn-base | 9 + .../.svn/prop-base/editor_plugin.js.svn-base | 9 + .../prop-base/editor_plugin_src.js.svn-base | 9 + .../.svn/prop-base/template.htm.svn-base | 9 + .../.svn/text-base/blank.htm.svn-base | 12 + .../.svn/text-base/editor_plugin.js.svn-base | 137 + .../text-base/editor_plugin_src.js.svn-base | 156 + .../.svn/text-base/template.htm.svn-base | 41 + .../tiny_mce/plugins/template/blank.htm | 12 + .../plugins/template/css/.svn/all-wcprops | 11 + .../plugins/template/css/.svn/entries | 62 + .../css/.svn/prop-base/template.css.svn-base | 9 + .../css/.svn/text-base/template.css.svn-base | 23 + .../plugins/template/css/template.css | 23 + .../plugins/template/editor_plugin.js | 137 + .../plugins/template/editor_plugin_src.js | 156 + .../plugins/template/js/.svn/all-wcprops | 11 + .../tiny_mce/plugins/template/js/.svn/entries | 62 + .../js/.svn/prop-base/template.js.svn-base | 9 + .../js/.svn/text-base/template.js.svn-base | 106 + .../tiny_mce/plugins/template/js/template.js | 106 + .../plugins/template/langs/.svn/all-wcprops | 17 + .../plugins/template/langs/.svn/entries | 96 + .../langs/.svn/prop-base/de_dlg.js.svn-base | 9 + .../langs/.svn/prop-base/en_dlg.js.svn-base | 9 + .../langs/.svn/text-base/de_dlg.js.svn-base | 15 + .../langs/.svn/text-base/en_dlg.js.svn-base | 15 + .../tiny_mce/plugins/template/langs/de_dlg.js | 15 + .../tiny_mce/plugins/template/langs/en_dlg.js | 15 + .../tiny_mce/plugins/template/template.htm | 41 + .../plugins/template_orig/.svn/all-wcprops | 29 + .../plugins/template_orig/.svn/entries | 173 + .../.svn/text-base/blank.htm.svn-base | 12 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 159 + .../.svn/text-base/template.htm.svn-base | 32 + .../tiny_mce/plugins/template_orig/blank.htm | 12 + .../template_orig/css/.svn/all-wcprops | 11 + .../plugins/template_orig/css/.svn/entries | 62 + .../css/.svn/text-base/template.css.svn-base | 23 + .../plugins/template_orig/css/template.css | 23 + .../plugins/template_orig/editor_plugin.js | 1 + .../template_orig/editor_plugin_src.js | 159 + .../plugins/template_orig/js/.svn/all-wcprops | 11 + .../plugins/template_orig/js/.svn/entries | 62 + .../js/.svn/text-base/template.js.svn-base | 106 + .../plugins/template_orig/js/template.js | 106 + .../template_orig/langs/.svn/all-wcprops | 23 + .../plugins/template_orig/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 15 + .../langs/.svn/text-base/en_dlg.js.svn-base | 15 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 15 + .../plugins/template_orig/langs/de_dlg.js | 15 + .../plugins/template_orig/langs/en_dlg.js | 15 + .../plugins/template_orig/langs/fr_dlg.js | 15 + .../plugins/template_orig/template.htm | 32 + .../plugins/visualchars/.svn/all-wcprops | 17 + .../tiny_mce/plugins/visualchars/.svn/entries | 96 + .../.svn/prop-base/editor_plugin.js.svn-base | 9 + .../prop-base/editor_plugin_src.js.svn-base | 9 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 73 + .../plugins/visualchars/editor_plugin.js | 1 + .../plugins/visualchars/editor_plugin_src.js | 73 + .../plugins/visualchars_orig/.svn/all-wcprops | 17 + .../plugins/visualchars_orig/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 76 + .../plugins/visualchars_orig/editor_plugin.js | 1 + .../visualchars_orig/editor_plugin_src.js | 76 + .../plugins/wordcount/.svn/all-wcprops | 17 + .../tiny_mce/plugins/wordcount/.svn/entries | 96 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 98 + .../plugins/wordcount/editor_plugin.js | 1 + .../plugins/wordcount/editor_plugin_src.js | 98 + .../plugins/xhtmlxtras/.svn/all-wcprops | 53 + .../tiny_mce/plugins/xhtmlxtras/.svn/entries | 309 + .../.svn/text-base/abbr.htm.svn-base | 141 + .../.svn/text-base/acronym.htm.svn-base | 141 + .../.svn/text-base/attributes.htm.svn-base | 148 + .../.svn/text-base/cite.htm.svn-base | 141 + .../.svn/text-base/del.htm.svn-base | 161 + .../.svn/text-base/editor_plugin.js.svn-base | 1 + .../text-base/editor_plugin_src.js.svn-base | 144 + .../.svn/text-base/ins.htm.svn-base | 161 + .../tiny_mce/plugins/xhtmlxtras/abbr.htm | 141 + .../tiny_mce/plugins/xhtmlxtras/acronym.htm | 141 + .../plugins/xhtmlxtras/attributes.htm | 148 + .../tiny_mce/plugins/xhtmlxtras/cite.htm | 141 + .../plugins/xhtmlxtras/css/.svn/all-wcprops | 17 + .../plugins/xhtmlxtras/css/.svn/entries | 96 + .../.svn/text-base/attributes.css.svn-base | 11 + .../css/.svn/text-base/popup.css.svn-base | 9 + .../plugins/xhtmlxtras/css/attributes.css | 11 + .../tiny_mce/plugins/xhtmlxtras/css/popup.css | 9 + .../tiny_mce/plugins/xhtmlxtras/del.htm | 161 + .../plugins/xhtmlxtras/editor_plugin.js | 1 + .../plugins/xhtmlxtras/editor_plugin_src.js | 144 + .../tiny_mce/plugins/xhtmlxtras/ins.htm | 161 + .../plugins/xhtmlxtras/js/.svn/all-wcprops | 47 + .../plugins/xhtmlxtras/js/.svn/entries | 266 + .../js/.svn/text-base/abbr.js.svn-base | 28 + .../js/.svn/text-base/acronym.js.svn-base | 28 + .../js/.svn/text-base/attributes.js.svn-base | 126 + .../js/.svn/text-base/cite.js.svn-base | 28 + .../js/.svn/text-base/del.js.svn-base | 63 + .../.svn/text-base/element_common.js.svn-base | 231 + .../js/.svn/text-base/ins.js.svn-base | 62 + .../tiny_mce/plugins/xhtmlxtras/js/abbr.js | 28 + .../tiny_mce/plugins/xhtmlxtras/js/acronym.js | 28 + .../plugins/xhtmlxtras/js/attributes.js | 126 + .../tiny_mce/plugins/xhtmlxtras/js/cite.js | 28 + .../tiny_mce/plugins/xhtmlxtras/js/del.js | 63 + .../plugins/xhtmlxtras/js/element_common.js | 231 + .../tiny_mce/plugins/xhtmlxtras/js/ins.js | 62 + .../plugins/xhtmlxtras/langs/.svn/all-wcprops | 23 + .../plugins/xhtmlxtras/langs/.svn/entries | 130 + .../langs/.svn/text-base/de_dlg.js.svn-base | 32 + .../langs/.svn/text-base/en_dlg.js.svn-base | 32 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 32 + .../plugins/xhtmlxtras/langs/de_dlg.js | 32 + .../plugins/xhtmlxtras/langs/en_dlg.js | 32 + .../plugins/xhtmlxtras/langs/fr_dlg.js | 32 + .../jscripts/tiny_mce/themes/.svn/all-wcprops | 5 + .../jscripts/tiny_mce/themes/.svn/entries | 34 + .../tiny_mce/themes/advanced/.svn/all-wcprops | 59 + .../tiny_mce/themes/advanced/.svn/entries | 346 + .../.svn/text-base/about.htm.svn-base | 54 + .../.svn/text-base/anchor.htm.svn-base | 26 + .../.svn/text-base/charmap.htm.svn-base | 53 + .../.svn/text-base/color_picker.htm.svn-base | 73 + .../text-base/editor_template.js.svn-base | 1 + .../text-base/editor_template_src.js.svn-base | 1204 ++ .../.svn/text-base/image.htm.svn-base | 80 + .../advanced/.svn/text-base/link.htm.svn-base | 58 + .../.svn/text-base/source_editor.htm.svn-base | 24 + .../tiny_mce/themes/advanced/about.htm | 54 + .../tiny_mce/themes/advanced/anchor.htm | 26 + .../tiny_mce/themes/advanced/charmap.htm | 53 + .../tiny_mce/themes/advanced/color_picker.htm | 73 + .../themes/advanced/editor_template.js | 1 + .../themes/advanced/editor_template_src.js | 1204 ++ .../tiny_mce/themes/advanced/image.htm | 80 + .../themes/advanced/img/.svn/all-wcprops | 17 + .../tiny_mce/themes/advanced/img/.svn/entries | 96 + .../.svn/prop-base/colorpicker.jpg.svn-base | 5 + .../img/.svn/prop-base/icons.gif.svn-base | 5 + .../.svn/text-base/colorpicker.jpg.svn-base | Bin 0 -> 3189 bytes .../img/.svn/text-base/icons.gif.svn-base | Bin 0 -> 11794 bytes .../themes/advanced/img/colorpicker.jpg | Bin 0 -> 3189 bytes .../tiny_mce/themes/advanced/img/icons.gif | Bin 0 -> 11794 bytes .../themes/advanced/js/.svn/all-wcprops | 47 + .../tiny_mce/themes/advanced/js/.svn/entries | 266 + .../js/.svn/text-base/about.js.svn-base | 72 + .../js/.svn/text-base/anchor.js.svn-base | 37 + .../js/.svn/text-base/charmap.js.svn-base | 335 + .../.svn/text-base/color_picker.js.svn-base | 253 + .../js/.svn/text-base/image.js.svn-base | 245 + .../js/.svn/text-base/link.js.svn-base | 156 + .../.svn/text-base/source_editor.js.svn-base | 62 + .../tiny_mce/themes/advanced/js/about.js | 72 + .../tiny_mce/themes/advanced/js/anchor.js | 37 + .../tiny_mce/themes/advanced/js/charmap.js | 335 + .../themes/advanced/js/color_picker.js | 253 + .../tiny_mce/themes/advanced/js/image.js | 245 + .../tiny_mce/themes/advanced/js/link.js | 156 + .../themes/advanced/js/source_editor.js | 62 + .../themes/advanced/langs/.svn/all-wcprops | 41 + .../themes/advanced/langs/.svn/entries | 232 + .../langs/.svn/text-base/de.js.svn-base | 63 + .../langs/.svn/text-base/de_dlg.js.svn-base | 51 + .../langs/.svn/text-base/en.js.svn-base | 62 + .../langs/.svn/text-base/en_dlg.js.svn-base | 51 + .../langs/.svn/text-base/fr.js.svn-base | 62 + .../langs/.svn/text-base/fr_dlg.js.svn-base | 51 + .../tiny_mce/themes/advanced/langs/de.js | 63 + .../tiny_mce/themes/advanced/langs/de_dlg.js | 51 + .../tiny_mce/themes/advanced/langs/en.js | 62 + .../tiny_mce/themes/advanced/langs/en_dlg.js | 51 + .../tiny_mce/themes/advanced/langs/fr.js | 62 + .../tiny_mce/themes/advanced/langs/fr_dlg.js | 51 + .../tiny_mce/themes/advanced/langs/ru.js | 62 + .../tiny_mce/themes/advanced/langs/ru_dlg.js | 51 + .../tiny_mce/themes/advanced/link.htm | 58 + .../themes/advanced/skins/.svn/all-wcprops | 5 + .../themes/advanced/skins/.svn/entries | 37 + .../advanced/skins/default/.svn/all-wcprops | 23 + .../advanced/skins/default/.svn/entries | 133 + .../.svn/text-base/content.css.svn-base | 35 + .../.svn/text-base/dialog.css.svn-base | 117 + .../default/.svn/text-base/ui.css.svn-base | 214 + .../themes/advanced/skins/default/content.css | 35 + .../themes/advanced/skins/default/dialog.css | 117 + .../skins/default/img/.svn/all-wcprops | 41 + .../advanced/skins/default/img/.svn/entries | 232 + .../img/.svn/prop-base/buttons.png.svn-base | 5 + .../img/.svn/prop-base/items.gif.svn-base | 5 + .../.svn/prop-base/menu_arrow.gif.svn-base | 5 + .../.svn/prop-base/menu_check.gif.svn-base | 5 + .../img/.svn/prop-base/progress.gif.svn-base | 5 + .../img/.svn/prop-base/tabs.gif.svn-base | 5 + .../img/.svn/text-base/buttons.png.svn-base | Bin 0 -> 3274 bytes .../img/.svn/text-base/items.gif.svn-base | Bin 0 -> 70 bytes .../.svn/text-base/menu_arrow.gif.svn-base | Bin 0 -> 68 bytes .../.svn/text-base/menu_check.gif.svn-base | Bin 0 -> 70 bytes .../img/.svn/text-base/progress.gif.svn-base | Bin 0 -> 1787 bytes .../img/.svn/text-base/tabs.gif.svn-base | Bin 0 -> 1326 bytes .../advanced/skins/default/img/buttons.png | Bin 0 -> 3274 bytes .../advanced/skins/default/img/items.gif | Bin 0 -> 70 bytes .../advanced/skins/default/img/menu_arrow.gif | Bin 0 -> 68 bytes .../advanced/skins/default/img/menu_check.gif | Bin 0 -> 70 bytes .../advanced/skins/default/img/progress.gif | Bin 0 -> 1787 bytes .../advanced/skins/default/img/tabs.gif | Bin 0 -> 1326 bytes .../themes/advanced/skins/default/ui.css | 214 + .../advanced/skins/grappelli/.svn/all-wcprops | 65 + .../advanced/skins/grappelli/.svn/entries | 371 + .../.svn/text-base/content.css.svn-base | 27 + .../.svn/text-base/content_base.css.svn-base | 56 + .../content_documentstructure.css.svn-base | 69 + .../content_documentstructure_de.css.svn-base | 16 + .../content_documentstructure_en.css.svn-base | 16 + .../text-base/content_grid copy.css.svn-base | 68 + .../.svn/text-base/content_grid.css.svn-base | 85 + .../text-base/content_typography.css.svn-base | 96 + .../.svn/text-base/dialog.css.svn-base | 380 + .../grappelli/.svn/text-base/ui.css.svn-base | 485 + .../advanced/skins/grappelli/content.css | 27 + .../advanced/skins/grappelli/content_base.css | 56 + .../grappelli/content_documentstructure.css | 69 + .../content_documentstructure_de.css | 16 + .../content_documentstructure_en.css | 16 + .../skins/grappelli/content_grid copy.css | 68 + .../advanced/skins/grappelli/content_grid.css | 85 + .../skins/grappelli/content_typography.css | 96 + .../advanced/skins/grappelli/dialog.css | 380 + .../skins/grappelli/img/.svn/all-wcprops | 5 + .../advanced/skins/grappelli/img/.svn/entries | 37 + .../grappelli/img/buttons/.svn/all-wcprops | 137 + .../skins/grappelli/img/buttons/.svn/entries | 776 + .../.svn/prop-base/blockquote.png.svn-base | 5 + .../buttons/.svn/prop-base/bold.png.svn-base | 5 + .../.svn/prop-base/bullist.png.svn-base | 5 + .../.svn/prop-base/charmap.png.svn-base | 5 + .../.svn/prop-base/cleanup.png.svn-base | 5 + .../buttons/.svn/prop-base/code.png.svn-base | 5 + .../.svn/prop-base/fullscreen.png.svn-base | 5 + .../buttons/.svn/prop-base/image.png.svn-base | 5 + .../.svn/prop-base/italic.png.svn-base | 5 + .../buttons/.svn/prop-base/link.png.svn-base | 5 + .../buttons/.svn/prop-base/media.png.svn-base | 5 + .../.svn/prop-base/numlist.png.svn-base | 5 + .../.svn/prop-base/pasteword.png.svn-base | 5 + .../buttons/.svn/prop-base/redo.png.svn-base | 5 + .../.svn/prop-base/search.png.svn-base | 5 + .../.svn/prop-base/show_advanced.png.svn-base | 5 + .../buttons/.svn/prop-base/table.png.svn-base | 5 + .../.svn/prop-base/template.png.svn-base | 5 + .../.svn/prop-base/underline.png.svn-base | 5 + .../buttons/.svn/prop-base/undo.png.svn-base | 5 + .../.svn/prop-base/unlink.png.svn-base | 5 + .../.svn/prop-base/visualchars.png.svn-base | 5 + .../.svn/text-base/blockquote.png.svn-base | Bin 0 -> 330 bytes .../buttons/.svn/text-base/bold.png.svn-base | Bin 0 -> 274 bytes .../.svn/text-base/bullist.png.svn-base | Bin 0 -> 205 bytes .../.svn/text-base/charmap.png.svn-base | Bin 0 -> 324 bytes .../.svn/text-base/cleanup.png.svn-base | Bin 0 -> 345 bytes .../buttons/.svn/text-base/code.png.svn-base | Bin 0 -> 435 bytes .../.svn/text-base/fullscreen.png.svn-base | Bin 0 -> 252 bytes .../buttons/.svn/text-base/image.png.svn-base | Bin 0 -> 325 bytes .../.svn/text-base/italic.png.svn-base | Bin 0 -> 239 bytes .../buttons/.svn/text-base/link.png.svn-base | Bin 0 -> 280 bytes .../buttons/.svn/text-base/media.png.svn-base | Bin 0 -> 301 bytes .../.svn/text-base/numlist.png.svn-base | Bin 0 -> 286 bytes .../.svn/text-base/pasteword.png.svn-base | Bin 0 -> 351 bytes .../buttons/.svn/text-base/redo.png.svn-base | Bin 0 -> 295 bytes .../.svn/text-base/search.png.svn-base | Bin 0 -> 414 bytes .../.svn/text-base/show_advanced.png.svn-base | Bin 0 -> 320 bytes .../buttons/.svn/text-base/table.png.svn-base | Bin 0 -> 299 bytes .../.svn/text-base/template.png.svn-base | Bin 0 -> 299 bytes .../.svn/text-base/underline.png.svn-base | Bin 0 -> 252 bytes .../buttons/.svn/text-base/undo.png.svn-base | Bin 0 -> 297 bytes .../.svn/text-base/unlink.png.svn-base | Bin 0 -> 287 bytes .../.svn/text-base/visualchars.png.svn-base | Bin 0 -> 301 bytes .../grappelli/img/buttons/blockquote.png | Bin 0 -> 330 bytes .../skins/grappelli/img/buttons/bold.png | Bin 0 -> 274 bytes .../skins/grappelli/img/buttons/bullist.png | Bin 0 -> 205 bytes .../skins/grappelli/img/buttons/charmap.png | Bin 0 -> 324 bytes .../skins/grappelli/img/buttons/cleanup.png | Bin 0 -> 345 bytes .../skins/grappelli/img/buttons/code.png | Bin 0 -> 435 bytes .../grappelli/img/buttons/fullscreen.png | Bin 0 -> 252 bytes .../skins/grappelli/img/buttons/image.png | Bin 0 -> 325 bytes .../skins/grappelli/img/buttons/italic.png | Bin 0 -> 239 bytes .../skins/grappelli/img/buttons/link.png | Bin 0 -> 280 bytes .../skins/grappelli/img/buttons/media.png | Bin 0 -> 301 bytes .../skins/grappelli/img/buttons/numlist.png | Bin 0 -> 286 bytes .../skins/grappelli/img/buttons/pasteword.png | Bin 0 -> 351 bytes .../skins/grappelli/img/buttons/redo.png | Bin 0 -> 295 bytes .../skins/grappelli/img/buttons/search.png | Bin 0 -> 414 bytes .../grappelli/img/buttons/show_advanced.png | Bin 0 -> 320 bytes .../skins/grappelli/img/buttons/table.png | Bin 0 -> 299 bytes .../skins/grappelli/img/buttons/template.png | Bin 0 -> 299 bytes .../skins/grappelli/img/buttons/underline.png | Bin 0 -> 252 bytes .../skins/grappelli/img/buttons/undo.png | Bin 0 -> 297 bytes .../skins/grappelli/img/buttons/unlink.png | Bin 0 -> 287 bytes .../grappelli/img/buttons/visualchars.png | Bin 0 -> 301 bytes .../grappelli/img/icons/.svn/all-wcprops | 23 + .../skins/grappelli/img/icons/.svn/entries | 130 + .../prop-base/icon-fb_show-hover.png.svn-base | 5 + .../.svn/prop-base/icon-fb_show.png.svn-base | 5 + .../prop-base/icon-mceResize.png.svn-base | 5 + .../text-base/icon-fb_show-hover.png.svn-base | Bin 0 -> 3312 bytes .../.svn/text-base/icon-fb_show.png.svn-base | Bin 0 -> 3305 bytes .../text-base/icon-mceResize.png.svn-base | Bin 0 -> 266 bytes .../img/icons/icon-fb_show-hover.png | Bin 0 -> 3312 bytes .../grappelli/img/icons/icon-fb_show.png | Bin 0 -> 3305 bytes .../grappelli/img/icons/icon-mceResize.png | Bin 0 -> 266 bytes .../skins/grappelli/img/menu/.svn/all-wcprops | 11 + .../skins/grappelli/img/menu/.svn/entries | 62 + .../.svn/prop-base/icon-mceOpen.png.svn-base | 5 + .../.svn/text-base/icon-mceOpen.png.svn-base | Bin 0 -> 182 bytes .../skins/grappelli/img/menu/icon-mceOpen.png | Bin 0 -> 182 bytes .../themes/advanced/skins/grappelli/ui.css | 485 + .../advanced/skins/o2k7/.svn/all-wcprops | 35 + .../themes/advanced/skins/o2k7/.svn/entries | 201 + .../o2k7/.svn/text-base/content.css.svn-base | 35 + .../o2k7/.svn/text-base/dialog.css.svn-base | 116 + .../skins/o2k7/.svn/text-base/ui.css.svn-base | 216 + .../o2k7/.svn/text-base/ui_black.css.svn-base | 8 + .../.svn/text-base/ui_silver.css.svn-base | 5 + .../themes/advanced/skins/o2k7/content.css | 35 + .../themes/advanced/skins/o2k7/dialog.css | 116 + .../advanced/skins/o2k7/img/.svn/all-wcprops | 23 + .../advanced/skins/o2k7/img/.svn/entries | 130 + .../img/.svn/prop-base/button_bg.png.svn-base | 5 + .../prop-base/button_bg_black.png.svn-base | 5 + .../prop-base/button_bg_silver.png.svn-base | 5 + .../img/.svn/text-base/button_bg.png.svn-base | Bin 0 -> 5859 bytes .../text-base/button_bg_black.png.svn-base | Bin 0 -> 3736 bytes .../text-base/button_bg_silver.png.svn-base | Bin 0 -> 5358 bytes .../advanced/skins/o2k7/img/button_bg.png | Bin 0 -> 5859 bytes .../skins/o2k7/img/button_bg_black.png | Bin 0 -> 3736 bytes .../skins/o2k7/img/button_bg_silver.png | Bin 0 -> 5358 bytes .../themes/advanced/skins/o2k7/ui.css | 216 + .../themes/advanced/skins/o2k7/ui_black.css | 8 + .../themes/advanced/skins/o2k7/ui_silver.css | 5 + .../themes/advanced/source_editor.htm | 24 + .../tiny_mce/themes/simple/.svn/all-wcprops | 17 + .../tiny_mce/themes/simple/.svn/entries | 105 + .../text-base/editor_template.js.svn-base | 1 + .../text-base/editor_template_src.js.svn-base | 85 + .../tiny_mce/themes/simple/editor_template.js | 1 + .../themes/simple/editor_template_src.js | 85 + .../themes/simple/img/.svn/all-wcprops | 11 + .../tiny_mce/themes/simple/img/.svn/entries | 62 + .../img/.svn/prop-base/icons.gif.svn-base | 5 + .../img/.svn/text-base/icons.gif.svn-base | Bin 0 -> 1440 bytes .../tiny_mce/themes/simple/img/icons.gif | Bin 0 -> 1440 bytes .../themes/simple/langs/.svn/all-wcprops | 23 + .../tiny_mce/themes/simple/langs/.svn/entries | 130 + .../langs/.svn/text-base/de.js.svn-base | 11 + .../langs/.svn/text-base/en.js.svn-base | 11 + .../langs/.svn/text-base/fr.js.svn-base | 11 + .../tiny_mce/themes/simple/langs/de.js | 11 + .../tiny_mce/themes/simple/langs/en.js | 11 + .../tiny_mce/themes/simple/langs/fr.js | 11 + .../tiny_mce/themes/simple/langs/ru.js | 11 + .../themes/simple/skins/.svn/all-wcprops | 5 + .../tiny_mce/themes/simple/skins/.svn/entries | 34 + .../simple/skins/default/.svn/all-wcprops | 17 + .../themes/simple/skins/default/.svn/entries | 96 + .../.svn/text-base/content.css.svn-base | 25 + .../default/.svn/text-base/ui.css.svn-base | 32 + .../themes/simple/skins/default/content.css | 25 + .../themes/simple/skins/default/ui.css | 32 + .../themes/simple/skins/o2k7/.svn/all-wcprops | 17 + .../themes/simple/skins/o2k7/.svn/entries | 99 + .../o2k7/.svn/text-base/content.css.svn-base | 17 + .../skins/o2k7/.svn/text-base/ui.css.svn-base | 35 + .../themes/simple/skins/o2k7/content.css | 17 + .../simple/skins/o2k7/img/.svn/all-wcprops | 11 + .../themes/simple/skins/o2k7/img/.svn/entries | 62 + .../img/.svn/prop-base/button_bg.png.svn-base | 5 + .../img/.svn/text-base/button_bg.png.svn-base | Bin 0 -> 5102 bytes .../simple/skins/o2k7/img/button_bg.png | Bin 0 -> 5102 bytes .../tiny_mce/themes/simple/skins/o2k7/ui.css | 35 + assets/tinymce/jscripts/tiny_mce/tiny_mce.js | 1 + .../jscripts/tiny_mce/tiny_mce_popup.js | 5 + .../tinymce/jscripts/tiny_mce/tiny_mce_src.js | 13094 ++++++++++++++++ .../jscripts/tiny_mce/utils/.svn/all-wcprops | 29 + .../jscripts/tiny_mce/utils/.svn/entries | 164 + .../text-base/editable_selects.js.svn-base | 70 + .../.svn/text-base/form_utils.js.svn-base | 200 + .../utils/.svn/text-base/mctabs.js.svn-base | 77 + .../utils/.svn/text-base/validate.js.svn-base | 220 + .../tiny_mce/utils/editable_selects.js | 70 + .../jscripts/tiny_mce/utils/form_utils.js | 200 + .../tinymce/jscripts/tiny_mce/utils/mctabs.js | 77 + .../jscripts/tiny_mce/utils/validate.js | 220 + assets/tinymce_setup/.svn/all-wcprops | 11 + assets/tinymce_setup/.svn/entries | 62 + .../.svn/text-base/tinymce_setup.js.svn-base | 145 + assets/tinymce_setup/tinymce_setup.js | 145 + components/UserIdentity.php | 20 + components/YAdminController.php | 21 + components/YiiAdminButtonColumn.php | 9 + controllers/DefaultController.php | 54 + controllers/ManageModelController.php | 195 + messages/en/yiiadmin.php | 29 + models/LoginForm.php | 49 + vendors/grappelli.txt | 2 + views/default/error.php | 5 + views/default/index.php | 34 + views/default/login.php | 14 + views/layouts/main.php | 61 + views/manageModel/_form.php | 0 views/manageModel/create.php | 83 + views/manageModel/list_objects.php | 14 + 1414 files changed, 121275 insertions(+) create mode 100644 YiiadminModule.php create mode 100755 assets/css/base.css create mode 100755 assets/css/buttons.css create mode 100644 assets/css/components.css create mode 100644 assets/css/datepicker/grappelli-theme-extensions.css create mode 100644 assets/css/forms.css create mode 100644 assets/css/grappelli-skin-basic.css create mode 100644 assets/css/grappelli-skin-default.css create mode 100755 assets/css/jquery-ui-grappelli-extensions.css create mode 100755 assets/css/reset.css create mode 100644 assets/css/structures.css create mode 100644 assets/css/tables.css create mode 100644 assets/css/tools.css create mode 100644 assets/css/typography.css create mode 100644 assets/img/admin/arrow-down.gif create mode 100644 assets/img/admin/arrow-up.gif create mode 100644 assets/img/admin/browser-warning-bg.png create mode 100644 assets/img/admin/browser-warning-box-bg.png create mode 100644 assets/img/admin/browser-warning-box-bottom.png create mode 100644 assets/img/admin/browser-warning-box-top.png create mode 100644 assets/img/admin/browser_chrome.gif create mode 100644 assets/img/admin/browser_firefox.gif create mode 100644 assets/img/admin/browser_safari.gif create mode 100644 assets/img/admin/browser_title_bg.gif create mode 100644 assets/img/admin/changelist-bg.gif create mode 100644 assets/img/admin/changelist-bg_rtl.gif create mode 100644 assets/img/admin/chooser-bg.gif create mode 100644 assets/img/admin/chooser_stacked-bg.gif create mode 100644 assets/img/admin/default-bg-reverse.gif create mode 100644 assets/img/admin/default-bg.gif create mode 100644 assets/img/admin/deleted-overlay.gif create mode 100644 assets/img/admin/icon-no.gif create mode 100644 assets/img/admin/icon-unknown.gif create mode 100644 assets/img/admin/icon-yes.gif create mode 100644 assets/img/admin/icon_addlink.gif create mode 100644 assets/img/admin/icon_alert.gif create mode 100644 assets/img/admin/icon_calendar.gif create mode 100644 assets/img/admin/icon_changelink.gif create mode 100644 assets/img/admin/icon_clock.gif create mode 100644 assets/img/admin/icon_deletelink.gif create mode 100644 assets/img/admin/icon_error.gif create mode 100644 assets/img/admin/icon_searchbox.png create mode 100644 assets/img/admin/icon_success.gif create mode 100644 assets/img/admin/inline-delete-8bit.png create mode 100644 assets/img/admin/inline-delete.png create mode 100644 assets/img/admin/inline-restore-8bit.png create mode 100644 assets/img/admin/inline-restore.png create mode 100644 assets/img/admin/inline-splitter-bg.gif create mode 100644 assets/img/admin/nav-bg-grabber.gif create mode 100644 assets/img/admin/nav-bg-reverse.gif create mode 100644 assets/img/admin/nav-bg.gif create mode 100644 assets/img/admin/selector-add.gif create mode 100644 assets/img/admin/selector-addall.gif create mode 100644 assets/img/admin/selector-remove.gif create mode 100644 assets/img/admin/selector-removeall.gif create mode 100644 assets/img/admin/selector-search.gif create mode 100644 assets/img/admin/selector_stacked-add.gif create mode 100644 assets/img/admin/selector_stacked-remove.gif create mode 100644 assets/img/admin/tool-left.gif create mode 100644 assets/img/admin/tool-left_over.gif create mode 100644 assets/img/admin/tool-right.gif create mode 100644 assets/img/admin/tool-right_over.gif create mode 100644 assets/img/admin/tooltag-add.gif create mode 100644 assets/img/admin/tooltag-add_over.gif create mode 100644 assets/img/admin/tooltag-arrowright.gif create mode 100644 assets/img/admin/tooltag-arrowright_over.gif create mode 100644 assets/img/backgrounds/changelist-results.png create mode 100644 assets/img/grappelli-icon.png create mode 100644 assets/img/icons/icon-actionlist_addlink-hover.png create mode 100644 assets/img/icons/icon-actionlist_addlink.png create mode 100644 assets/img/icons/icon-actionlist_changelink-hover.png create mode 100644 assets/img/icons/icon-actionlist_changelink.png create mode 100644 assets/img/icons/icon-actionlist_deletelink.png create mode 100644 assets/img/icons/icon-actions-add-link-hover.png create mode 100644 assets/img/icons/icon-actions-add-link.png create mode 100644 assets/img/icons/icon-actions-change-link-hover.png create mode 100644 assets/img/icons/icon-actions-change-link.png create mode 100644 assets/img/icons/icon-actions-delete-link.png create mode 100644 assets/img/icons/icon-actions_changelist.png create mode 100644 assets/img/icons/icon-add_another-hover.png create mode 100644 assets/img/icons/icon-add_another.png create mode 100644 assets/img/icons/icon-addlink-hover.png create mode 100644 assets/img/icons/icon-addlink.png create mode 100644 assets/img/icons/icon-bookmark_add-hover.png create mode 100644 assets/img/icons/icon-bookmark_add-inactive.png create mode 100644 assets/img/icons/icon-bookmark_add.png create mode 100644 assets/img/icons/icon-bookmark_manage-hover.png create mode 100644 assets/img/icons/icon-bookmark_manage.png create mode 100644 assets/img/icons/icon-bookmark_remove-hover.png create mode 100644 assets/img/icons/icon-bookmark_remove-inactive.png create mode 100644 assets/img/icons/icon-bookmark_remove.png create mode 100644 assets/img/icons/icon-calendar-hover.png create mode 100644 assets/img/icons/icon-calendar.png create mode 100644 assets/img/icons/icon-calendarnav_next.png create mode 100644 assets/img/icons/icon-calendarnav_previous.png create mode 100644 assets/img/icons/icon-changelink-hover.png create mode 100644 assets/img/icons/icon-changelink.png create mode 100644 assets/img/icons/icon-changelist-actions.png create mode 100644 assets/img/icons/icon-clock-hover.png create mode 100644 assets/img/icons/icon-clock.png create mode 100644 assets/img/icons/icon-date-hierarchy-back-hover.png create mode 100644 assets/img/icons/icon-date-hierarchy-back.png create mode 100644 assets/img/icons/icon-datepicker-hover.png create mode 100644 assets/img/icons/icon-datepicker.png create mode 100644 assets/img/icons/icon-dropdown-hover.png create mode 100644 assets/img/icons/icon-dropdown.png create mode 100644 assets/img/icons/icon-fb-show-hover.png create mode 100644 assets/img/icons/icon-fb-show.png create mode 100644 assets/img/icons/icon-fb_show-hover.png create mode 100644 assets/img/icons/icon-fb_show.png create mode 100644 assets/img/icons/icon-form-select.png create mode 100644 assets/img/icons/icon-inline_item_tools-addhandler-hover.png create mode 100644 assets/img/icons/icon-inline_item_tools-addhandler.png create mode 100644 assets/img/icons/icon-inline_item_tools-closehandler-hover.png create mode 100644 assets/img/icons/icon-inline_item_tools-closehandler.png create mode 100644 assets/img/icons/icon-inline_item_tools-deletelink-hover.png create mode 100644 assets/img/icons/icon-inline_item_tools-deletelink.png create mode 100644 assets/img/icons/icon-inline_item_tools-draghandler-hover.png create mode 100644 assets/img/icons/icon-inline_item_tools-draghandler.png create mode 100644 assets/img/icons/icon-inline_item_tools-openhandler-hover.png create mode 100644 assets/img/icons/icon-inline_item_tools-openhandler.png create mode 100644 assets/img/icons/icon-inline_item_tools-viewsitelink-hover.png create mode 100644 assets/img/icons/icon-inline_item_tools-viewsitelink.png create mode 100644 assets/img/icons/icon-menulist_external-hover.png create mode 100644 assets/img/icons/icon-menulist_external.png create mode 100644 assets/img/icons/icon-menulist_internal-hover.png create mode 100644 assets/img/icons/icon-menulist_internal.png create mode 100644 assets/img/icons/icon-navigation-external-hover.png create mode 100644 assets/img/icons/icon-navigation-external.png create mode 100644 assets/img/icons/icon-navigation-internal-hover.png create mode 100644 assets/img/icons/icon-navigation-internal.png create mode 100644 assets/img/icons/icon-no.png create mode 100644 assets/img/icons/icon-object-tools-add-handler.png create mode 100644 assets/img/icons/icon-related-lookup-hover.png create mode 100644 assets/img/icons/icon-related-lookup.png create mode 100644 assets/img/icons/icon-related_lookup-hover.png create mode 100644 assets/img/icons/icon-related_lookup.png create mode 100644 assets/img/icons/icon-search-hover.png create mode 100644 assets/img/icons/icon-search.png create mode 100644 assets/img/icons/icon-searchbox.png create mode 100644 assets/img/icons/icon-selector_add-m2m_horizontal-hover.png create mode 100644 assets/img/icons/icon-selector_add-m2m_horizontal.png create mode 100644 assets/img/icons/icon-selector_add-m2m_vertical-hover.png create mode 100644 assets/img/icons/icon-selector_add-m2m_vertical.png create mode 100644 assets/img/icons/icon-selector_remove-m2m_horizontal-hover.png create mode 100644 assets/img/icons/icon-selector_remove-m2m_horizontal.png create mode 100644 assets/img/icons/icon-selector_remove-m2m_vertical-hover.png create mode 100644 assets/img/icons/icon-selector_remove-m2m_vertical.png create mode 100644 assets/img/icons/icon-th-ascending.png create mode 100644 assets/img/icons/icon-th-descending.png create mode 100644 assets/img/icons/icon-timepicker-hover.png create mode 100644 assets/img/icons/icon-timepicker.png create mode 100644 assets/img/icons/icon-tools-add-handler-hover.png create mode 100644 assets/img/icons/icon-tools-add-handler.png create mode 100644 assets/img/icons/icon-tools-close-handler-hover.png create mode 100644 assets/img/icons/icon-tools-close-handler.png create mode 100644 assets/img/icons/icon-tools-delete-handler-hover.png create mode 100644 assets/img/icons/icon-tools-delete-handler.png create mode 100644 assets/img/icons/icon-tools-drag-handler-hover.png create mode 100644 assets/img/icons/icon-tools-drag-handler.png create mode 100644 assets/img/icons/icon-tools-open-handler-hover.png create mode 100644 assets/img/icons/icon-tools-open-handler.png create mode 100644 assets/img/icons/icon-tools-remove-handler-hover.png create mode 100644 assets/img/icons/icon-tools-remove-handler.png create mode 100644 assets/img/icons/icon-tools-trash-handler-hover.png create mode 100644 assets/img/icons/icon-tools-trash-handler.png create mode 100644 assets/img/icons/icon-tools-viewsite-link-hover.png create mode 100644 assets/img/icons/icon-tools-viewsite-link.png create mode 100644 assets/img/icons/icon-unknown.png create mode 100644 assets/img/icons/icon-yes.png create mode 100644 assets/img/icons/icon_fieldset_collapse-closed.png create mode 100644 assets/img/icons/icon_fieldset_collapse-open.png create mode 100644 assets/img/icons/icon_inline-item-tools_addhandler.png create mode 100644 assets/img/icons/icon_inline-item-tools_closehandler.png create mode 100644 assets/img/icons/icon_inline-item-tools_openhandler.png create mode 100644 assets/img/icons/ui-datepicker-next-hover.png create mode 100644 assets/img/icons/ui-datepicker-next.png create mode 100644 assets/img/icons/ui-datepicker-prev-hover.png create mode 100644 assets/img/icons/ui-datepicker-prev.png create mode 100644 assets/img/input-throbber.gif create mode 100644 assets/tinymce/.svn/all-wcprops create mode 100644 assets/tinymce/.svn/entries create mode 100644 assets/tinymce/.svn/text-base/changelog.txt.svn-base create mode 100644 assets/tinymce/changelog.txt create mode 100644 assets/tinymce/examples/.svn/all-wcprops create mode 100644 assets/tinymce/examples/.svn/entries create mode 100644 assets/tinymce/examples/.svn/text-base/index.html.svn-base create mode 100644 assets/tinymce/examples/index.html create mode 100644 assets/tinymce/jscripts/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/.svn/text-base/jquery.tinymce.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/.svn/text-base/license.txt.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/.svn/text-base/tiny_mce.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/.svn/text-base/tiny_mce_popup.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/.svn/text-base/tiny_mce_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/jquery.tinymce.js create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/de.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/fr.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/de.js create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/en.js create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/fr.js create mode 100644 assets/tinymce/jscripts/tiny_mce/langs/ru.js create mode 100644 assets/tinymce/jscripts/tiny_mce/license.txt create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/rule.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/text-base/advhr.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/text-base/rule.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/rule.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/image.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/image.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/prop-base/advimage.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/text-base/advimage.css.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/prop-base/sample.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/text-base/sample.gif.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/.svn/prop-base/image.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/.svn/text-base/image.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/en_dlg.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/de_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/image.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/text-base/advimage.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/prop-base/sample.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/text-base/sample.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/sample.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/.svn/text-base/image.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/link.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/link.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/prop-base/advlink.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/text-base/advlink.css.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/prop-base/advlink.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/text-base/advlink.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/en_dlg.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/link.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/text-base/advlink.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/text-base/advlink.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/text-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/emotions.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cool.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cry.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-embarassed.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-foot-in-mouth.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-frown.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-innocent.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-kiss.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-laughing.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-money-mouth.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-sealed.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-smile.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-surprised.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-tongue-out.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-undecided.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-wink.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-yell.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-cool.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-cry.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-embarassed.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-foot-in-mouth.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-frown.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-innocent.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-kiss.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-laughing.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-money-mouth.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-sealed.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-smile.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-surprised.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-tongue-out.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-undecided.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-wink.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-yell.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/js/.svn/text-base/emotions.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/js/emotions.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/emotions/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/dialog.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/prop-base/example.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/text-base/example.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/js/.svn/text-base/dialog.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/js/dialog.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/langs/.svn/text-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/langs/en.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/example/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/fullpage.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/text-base/fullpage.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/text-base/fullpage.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/.svn/text-base/fullscreen.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin_src.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/show_advanced.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/visualchars.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/text-base/show_advanced.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/text-base/visualchars.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/de.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/fr.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/de.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/fr.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin_src.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/de.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/fr.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/de.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/fr.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/template.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/text-base/window.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/alert.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/button.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/buttons.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/confirm.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/corners.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/horizontal.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/vertical.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/alert.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/button.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/buttons.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/confirm.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/corners.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/horizontal.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/vertical.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/layer/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/layer/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/layer/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/layer/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/media.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/media.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/media.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/media.css.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/css/content.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/css/media.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flash.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flv_player.swf.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/quicktime.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/realmedia.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/shockwave.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/trans.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/windowsmedia.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/flash.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/flv_player.swf.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/quicktime.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/realmedia.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/shockwave.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/trans.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/windowsmedia.gif.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/img/flash.gif create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/img/flv_player.swf create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/img/quicktime.gif create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/img/realmedia.gif create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/img/shockwave.gif create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/img/trans.gif create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/img/windowsmedia.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/embed.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/media.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/text-base/embed.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/text-base/media.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/js/embed.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/js/media.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/.svn/prop-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/.svn/prop-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/.svn/text-base/en_dlg.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/de_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/langs/en_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/media/media.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/media.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/media.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flash.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flv_player.swf.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/quicktime.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/realmedia.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/shockwave.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/trans.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/windowsmedia.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/flash.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/flv_player.swf.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/quicktime.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/realmedia.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/shockwave.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/trans.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/windowsmedia.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flash.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flv_player.swf create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/quicktime.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/realmedia.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/shockwave.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/trans.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/windowsmedia.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/text-base/embed.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/text-base/media.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/embed.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/media.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/media_orig/media.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/pagebreak.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/trans.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/text-base/pagebreak.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/text-base/trans.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/blank.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pastetext.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pasteword.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/blank.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/pastetext.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/pasteword.htm.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/blank.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/pasteword.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/blank.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/pasteword.css.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/.svn/prop-base/pastetext.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/.svn/prop-base/pasteword.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/.svn/text-base/pastetext.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/.svn/text-base/pasteword.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/pastetext.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/js/pasteword.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/.svn/prop-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/.svn/prop-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/.svn/text-base/en_dlg.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/de_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/langs/en_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pastetext.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pasteword.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pastetext.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pasteword.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/example.html.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/preview.html.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/example.html create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/text-base/embed.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/preview/preview.html create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/searchreplace.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/searchreplace.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/prop-base/searchreplace.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/text-base/searchreplace.css.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/prop-base/searchreplace.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/text-base/searchreplace.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/en_dlg.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/de_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/searchreplace.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/text-base/searchreplace.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/text-base/searchreplace.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/prop-base/wline.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/text-base/wline.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/props.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/text-base/props.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/css/props.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/text-base/props.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/js/props.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/style/props.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/cell.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/merge_cells.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/row.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/table.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/cell.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/cell.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/row.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/table.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/row.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/css/table.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/text-base/cell.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/text-base/merge_cells.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/text-base/row.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/text-base/table.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/row.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/js/table.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/row.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/table/table.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/blank.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/template.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/blank.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/template.htm.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/blank.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/prop-base/template.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/text-base/template.css.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/css/template.css create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/prop-base/template.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/text-base/template.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/js/template.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/.svn/prop-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/.svn/prop-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/.svn/text-base/en_dlg.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/de_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/langs/en_dlg.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/template/template.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/blank.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/template.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/text-base/template.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/text-base/template.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/template.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/template_orig/template.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/text-base/editor_plugin_src.js.svn-base create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js create mode 100755 assets/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars_orig/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars_orig/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars_orig/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars_orig/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars_orig/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/visualchars_orig/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/wordcount/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/wordcount/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/wordcount/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/wordcount/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/abbr.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/acronym.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/attributes.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/cite.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/del.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/ins.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/attributes.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/popup.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/abbr.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/acronym.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/attributes.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/cite.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/del.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/element_common.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/ins.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/attributes.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/del.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/element_common.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/about.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/anchor.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/charmap.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/color_picker.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/editor_template.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/editor_template_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/image.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/link.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/source_editor.htm.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/about.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/image.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/colorpicker.jpg.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/icons.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/text-base/colorpicker.jpg.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/text-base/icons.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/about.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/anchor.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/charmap.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/color_picker.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/image.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/link.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/source_editor.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/image.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr_dlg.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru_dlg.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/link.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/dialog.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/ui.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/buttons.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/items.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_arrow.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_check.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/progress.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/tabs.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/buttons.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/items.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/menu_arrow.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/menu_check.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/progress.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/tabs.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/ui.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content_base.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content_documentstructure.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content_documentstructure_de.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content_documentstructure_en.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content_grid copy.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content_grid.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/content_typography.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/dialog.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/.svn/text-base/ui.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_base.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_de.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_en.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_grid copy.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_grid.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_typography.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/dialog.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/blockquote.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/bold.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/bullist.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/charmap.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/cleanup.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/code.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/fullscreen.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/image.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/italic.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/link.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/media.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/numlist.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/pasteword.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/redo.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/search.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/show_advanced.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/table.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/template.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/underline.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/undo.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/unlink.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/prop-base/visualchars.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/blockquote.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/bold.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/bullist.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/charmap.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/cleanup.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/code.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/fullscreen.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/image.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/italic.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/link.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/media.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/numlist.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/pasteword.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/redo.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/search.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/show_advanced.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/table.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/template.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/underline.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/undo.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/unlink.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/.svn/text-base/visualchars.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/blockquote.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bold.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bullist.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/charmap.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/cleanup.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/code.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/fullscreen.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/image.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/italic.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/link.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/media.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/numlist.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/pasteword.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/redo.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/search.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/show_advanced.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/template.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/underline.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/undo.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/unlink.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/visualchars.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/prop-base/icon-fb_show-hover.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/prop-base/icon-fb_show.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/prop-base/icon-mceResize.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/text-base/icon-fb_show-hover.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/text-base/icon-fb_show.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/.svn/text-base/icon-mceResize.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show-hover.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-mceResize.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/.svn/prop-base/icon-mceOpen.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/.svn/text-base/icon-mceOpen.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/icon-mceOpen.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/ui.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/.svn/text-base/dialog.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/.svn/text-base/ui.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/.svn/text-base/ui_black.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/.svn/text-base/ui_silver.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/dialog.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/prop-base/button_bg.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/prop-base/button_bg_black.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/prop-base/button_bg_silver.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/text-base/button_bg.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/text-base/button_bg_black.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/.svn/text-base/button_bg_silver.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_black.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/.svn/text-base/editor_template.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/.svn/text-base/editor_template_src.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/img/.svn/prop-base/icons.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/img/.svn/text-base/icons.gif.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/img/icons.gif create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/.svn/text-base/de.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/.svn/text-base/en.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/.svn/text-base/fr.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/de.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/en.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/fr.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/langs/ru.js create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/default/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/default/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/default/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/default/.svn/text-base/ui.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/default/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/default/ui.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/.svn/text-base/content.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/.svn/text-base/ui.css.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/content.css create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/.svn/prop-base/button_bg.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/.svn/text-base/button_bg.png.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png create mode 100644 assets/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/ui.css create mode 100644 assets/tinymce/jscripts/tiny_mce/tiny_mce.js create mode 100644 assets/tinymce/jscripts/tiny_mce/tiny_mce_popup.js create mode 100644 assets/tinymce/jscripts/tiny_mce/tiny_mce_src.js create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/.svn/all-wcprops create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/.svn/entries create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/.svn/text-base/editable_selects.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/.svn/text-base/form_utils.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/.svn/text-base/mctabs.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/.svn/text-base/validate.js.svn-base create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/editable_selects.js create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/form_utils.js create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/mctabs.js create mode 100644 assets/tinymce/jscripts/tiny_mce/utils/validate.js create mode 100644 assets/tinymce_setup/.svn/all-wcprops create mode 100644 assets/tinymce_setup/.svn/entries create mode 100644 assets/tinymce_setup/.svn/text-base/tinymce_setup.js.svn-base create mode 100644 assets/tinymce_setup/tinymce_setup.js create mode 100644 components/UserIdentity.php create mode 100644 components/YAdminController.php create mode 100644 components/YiiAdminButtonColumn.php create mode 100644 controllers/DefaultController.php create mode 100644 controllers/ManageModelController.php create mode 100644 messages/en/yiiadmin.php create mode 100644 models/LoginForm.php create mode 100644 vendors/grappelli.txt create mode 100644 views/default/error.php create mode 100644 views/default/index.php create mode 100644 views/default/login.php create mode 100644 views/layouts/main.php create mode 100644 views/manageModel/_form.php create mode 100644 views/manageModel/create.php create mode 100644 views/manageModel/list_objects.php diff --git a/YiiadminModule.php b/YiiadminModule.php new file mode 100644 index 0000000..e0a677d --- /dev/null +++ b/YiiadminModule.php @@ -0,0 +1,310 @@ + + * @license BSD + */ +class YiiadminModule extends CWebModule +{ + private $_assetsUrl; + protected $model; + public $attributesWidgets=null; + public $_modelsList=array(); + public static $fileExt='.php'; + private $controller; + public $password; + public $registerModels=array(); + public $excludeModels=array(); + + public function init() + { + error_reporting(E_ALL ^ E_NOTICE); + Yii::app()->clientScript->registerCoreScript('jquery'); + + Yii::app()->setComponents(array( + 'errorHandler'=>array( + 'errorAction'=>'yiiadmin/default/error', + ), + 'user'=>array( + 'class'=>'CWebUser', + 'stateKeyPrefix'=>'yiiadmin', + 'loginUrl'=>Yii::app()->createUrl('yiiadmin/default/login'), + ), + )); + + $this->setImport(array( + 'yiiadmin.models.*', + 'yiiadmin.components.*', + )); + } + + /** + * Получение списка моделей + * + * @access public + * @return void + */ + public function getModelsList() + { + //$models=YAdminConfig::$registerModels; + $models=$this->registerModels; + + if (!empty($models)) + { + foreach($models as $model) + { + // Импорт всех моделей(модели) + Yii::import($model); + + if (substr($model, -1)=='*') + { + // Если импортируем директорию с моделями, + // Получим список моделей + $files=CFileHelper::findFiles(Yii::getPathOfAlias($model)); + if ($files) + { + foreach($files as $file) + { + $class_name=str_replace(self::$fileExt,'',substr(strrchr($file, "/"), 1)); + $this->addModel($class_name); + } + } + } + else + { + $class_name=substr(strrchr($model, "."), 1); + $this->addModel($class_name); + } + } + } + + return array_unique($this->_modelsList); + } + + /** + * Добавление модели в список. + * + * @param mixed $name + * @access protected + * @return void + */ + protected function addModel($name) + { + //if (!in_array($name,YAdminConfig::$excludeModels)) + if (!in_array($name,$this->excludeModels)) + $this->_modelsList[]=$name; + } + + /** + * Загрузка модели + * + * @param string $name + * @access public + * @return object + */ + public function loadModel($name) + { + $model=(string)$_GET['model_name']; + $this->model=new $model; + return $this->model; + } + + public function createWidget($form,$model,$attribute) + { + $dbType=$model->tableSchema->columns[$attribute]->dbType; + + $widget=$this->getAttributeWidget($attribute); + + switch ($widget) + { + case 'textArea'; + return $form->textArea($model,$attribute,array('class'=>'vTextField')); + break; + + case 'textField'; + return $form->textField($model,$attribute,array('class'=>'vTextField')); + break; + + case 'dropDownList': + return $form->dropDownList($model,$attribute,$this->getAttributeChoices($attribute),array('empty'=>'- select -')); + break; + + case 'calendar': + $widgetData=array_slice($this->getAttributeData($attribute),2); + + $data=array( + 'name'=>get_class($model).'['.$attribute.']', + 'value'=>$model->$attribute, + 'language'=>'ru', + 'options'=>array( + 'showAnim'=>'fold', + 'dateFormat'=>'yy-mm-dd', + ), + ); + + if ($widgetData) + $data=array_merge($data,$widgetData); + + $this->controller->widget('zii.widgets.jui.CJuiDatePicker', $data); + break; + + case 'boolean': + return $form->checkBox($model,$attribute); + break; + + default: + return $form->textField($model,$attribute,array('class'=>'vTextField')); + break; + } + } + + protected function getAttributeWidget($name) + { + if ($this->attributesWidgets!==null) + { + if (isset($this->attributesWidgets->$name)) + return $this->attributesWidgets->$name; + else + { + $dbType=$this->model->tableSchema->columns[$name]->dbType; + if ($dbType=='text') + return 'textArea'; + else + return 'textField'; + } + } + + if (method_exists($this->model,'attributeWidgets')) + $attributeWidgets=$this->model->attributeWidgets(); + else + return null; + + $temp=array(); + + if (!empty($attributeWidgets)) + { + foreach($attributeWidgets as $key=>$val) + { + if (isset($val[0]) && isset($val[1])) + { + $temp[$val[0]]=$val[1]; + $temp[$val[0].'Data']=$val; + } + } + } + + $this->attributesWidgets=(object)$temp; + + return $this->getAttributeWidget($name); + } + + protected function getAttributeData($attribute) + { + $attribute.='Data'; + if (isset($this->attributesWidgets->$attribute)) + return $this->attributesWidgets->$attribute; + else + return null; + } + + /** + * Получение массива значений атрибута. + * Имя переменной массива с значениями должно быть: attributeNameChoices. + * Например categoryChoices. + * + * @param mixed $attribute + * @access private + * @return array + */ + private function getAttributeChoices($attribute) + { + $data=array(); + $choicesName=(string)$attribute.'Choices'; + if (isset($this->model->$choicesName) && is_array($this->model->$choicesName)) + $data=$this->model->$choicesName; + + return $data; + } + + public function getModelNamePlural($model) + { + if (is_string($model)) + return $model; + + if (!get_class($model)) + $model=new $model; + + if (isset($model->adminName)) + return $model->adminName; + else + return get_class($model); + } + + public function getObjectPluralName($model, $pos=0) + { + if (is_string($model)) + return $model; + + if (!get_class($model)) + $model=new $model; + + if (!isset($model->pluralNames)) + return get_class($model); + else + return $model->pluralNames[$pos]; + } + + /** + * @return string the base URL that contains all published asset files. + */ + public function getAssetsUrl() + { + if($this->_assetsUrl===null) + $this->_assetsUrl=Yii::app()->getAssetManager()->publish(Yii::getPathOfAlias('application.modules.yiiadmin.assets')); + return $this->_assetsUrl; + } + + /** + * @param string the base URL that contains all published asset files. + */ + public function setAssetsUrl($value) + { + $this->_assetsUrl=$value; + } + + public static function createActionUrl($action,$pk) + { + $a=new CController; + return $a->createUrl('manageModel',$data->primaryKey); + } + + public static function t($message) + { + return Yii::t('YiiadminModule.yiiadmin',$message); + } + + public function beforeControllerAction($controller, $action) + { + if(parent::beforeControllerAction($controller, $action)) + { + $this->controller=$controller; + $route=$controller->id.'/'.$action->id; + + $publicPages=array( + 'default/login', + 'default/error', + ); + if($this->password!==false && Yii::app()->user->isGuest && !in_array($route,$publicPages)) + Yii::app()->user->loginRequired(); + else + return true; + } + return false; + } +} diff --git a/assets/css/base.css b/assets/css/base.css new file mode 100755 index 0000000..f24da0c --- /dev/null +++ b/assets/css/base.css @@ -0,0 +1,34 @@ + + + +/* Reset Styles (reset.css of Blueprint www.blueprintcss.org) +------------------------------------------------------------------------------------------------------ */ + +@import url('reset.css'); + + + +/* Grappelli Styles: + The core settings of Grappelli are defined here. + Do not change them (better use your own skins/css in the next section). +------------------------------------------------------------------------------------------------------ */ + +@import url('typography.css'); +@import url('structures.css'); +@import url('components.css'); +@import url('tools.css'); +@import url('forms.css'); +@import url('buttons.css'); +@import url('tables.css'); + + + +/* Grappelli Skins & Custom Styles: + Use the delivered Grappelli skins or import your own skins/css here +------------------------------------------------------------------------------------------------------ */ + +/* Grappelli Basic Skin: The Plain Version */ +/*@import url('grappelli-skin-basic.css');*/ + +/* Grappelli Default Skin: Adds Border-Radius & Background-Gradients to the Grappelli Basic Skin */ +@import url('grappelli-skin-default.css'); diff --git a/assets/css/buttons.css b/assets/css/buttons.css new file mode 100755 index 0000000..913ab2c --- /dev/null +++ b/assets/css/buttons.css @@ -0,0 +1,372 @@ + + + +/* Submit, Delete & Cancel Buttons +------------------------------------------------------------------------------------------------------ */ + +input[type=submit], input[type=reset], input[type=button], button { + margin-top: 0; + margin-bottom: 0; + padding: 4px 5px 5px; + width: auto; + height: 25px; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + cursor: pointer; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + input[type=submit], input[type=reset], input[type=button], button { + padding: 5px 8px 4px; + } +} + +.submit-row a.delete-link, +.submit-row a.cancel-link { + display: block; + padding: 5px 10px; + font-weight: bold; +} +.submit-row input[type=submit], +.submit-row input[type=button] { + padding: 5px 10px; + height: 28px; + font-weight: bold; +} + +input[type=submit], +#bookmark-add-cancel, +.submit-row a.delete-link:link, .submit-row a.delete-link:visited, +.submit-row a.cancel-link:link, .submit-row a.cancel-link:visited, +.submit-row input[type=button] { + opacity: .6; +} + +input[type=submit]:hover, +#bookmark-add-cancel:hover, +.submit-row a.delete-link:hover, .submit-row a.delete-link:active, +.submit-row a.cancel-link:hover, .submit-row a.cancel-link:active, +.submit-row input[type=button]:hover { + opacity: 1; +} + +input[type=submit].default { + opacity: 1; +} + + + +/* Icons & Buttons +------------------------------------------------------------------------------------------------------ */ + +button.fb_show, +button.ui-datepicker-trigger, +button.ui-timepicker-trigger, +button.ui-gAutocomplete-browse, +button.ui-gAutoSlugField-toggle, +button.ui-gFacelist-browse, +a.button, +.vDateField + span a, +.vTimeField + span a, +a.fb_show, +a.related-lookup, +a.add-another { + position: relative; + margin-left: -25px; +} + +button.fb_show, +button.ui-gAutocomplete-browse, +button.ui-gFacelist-browse, +button.ui-gAutoSlugField-toggle, +button.ui-datepicker-trigger, +button.ui-timepicker-trigger, +button.fb_show:hover, +button.ui-gAutocomplete-browse:hover, +button.ui-gFacelist-browse:hover, +button.ui-gAutoSlugField-toggle:hover, +button.ui-datepicker-trigger:hover, +button.ui-timepicker-trigger:hover { + width: 25px; + background: 50% 50% no-repeat; +} +button.fb_show[disabled], +button.ui-gAutocomplete-browse[disabled], +button.ui-gFacelist-browse[disabled], +button.ui-gAutoSlugField-toggle[disabled], +button.ui-datepicker-trigger[disabled], +button.ui-timepicker-trigger[disabled], +input[disabled] + a { + background: 50% 50% no-repeat !important; + opacity: 0.3; + cursor: auto !important; +} + +#changelist table button { + top: -7px; + margin-bottom: -12px; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + #changelist table button { + margin-bottom: -11px; + } +} + + +/* Hide Images in Templates ........................................... */ + +a.add-another img, a.related-lookup img { + opacity: 0; +} +a.related-lookup img { + display: none; +} + + +/* Autocomplete Button ......................................... */ + +button.ui-gAutocomplete-browse, +button.ui-gFacelist-browse { + background-image: url('../img/icons/icon-related-lookup.png'); +} +button.ui-gAutocomplete-browse:hover, +button.ui-gFacelist-browse:hover { + background-image: url('../img/icons/icon-related-lookup-hover.png'); +} +button.ui-gAutocomplete-browse[disabled], button.ui-gAutocomplete-browse[disabled]:hover, +button.ui-gFacelist-browse[disabled], button.ui-gFacelist-browse[disabled]:hover { + background-image: url('../img/icons/icon-related-lookup-hover.png') !important; +} + + +/* AutoSlugField Button ......................................... */ + +/* TODO: lock/unlock icons .. */ + +button.ui-gAutoSlugField-toggle { + background-image: url('../img/icons/icon-related-lookup.png'); +} +button.ui-gAutoSlugField-toggle:hover { + background-image: url('../img/icons/icon-related-lookup-hover.png'); +} +button.ui-gAutoSlugField-toggle[disabled], button.ui-gAutoSlugField-toggle[disabled]:hover { + background-image: url('../img/icons/icon-related-lookup-hover.png') !important; +} + + +/* Datepicker Button ......................................... */ + +button.ui-datepicker-trigger { + background-image: url('../img/icons/icon-datepicker.png'); +} +button.ui-datepicker-trigger:hover { + background-image: url('../img/icons/icon-datepicker-hover.png'); +} +button.ui-datepicker-trigger[disabled], button.ui-datepicker-trigger[disabled]:hover { + background-image: url('../img/icons/icon-datepicker-hover.png') !important; +} + + +/* Timepicker Button ......................................... */ + +button.ui-timepicker-trigger { + background-image: url('../img/icons/icon-timepicker.png'); +} +button.ui-timepicker-trigger:hover { + background-image: url('../img/icons/icon-timepicker-hover.png'); +} +button.ui-timepicker-trigger[disabled], button.ui-timepicker-trigger[disabled]:hover { + background-image: url('../img/icons/icon-timepicker-hover.png') !important; +} + + +/* Search Button ......................................... */ + +button.search { + position: relative; + float: right; + top: 0; + right: 5px; + margin: 0 0 0 -30px; + background-image: url('../img/icons/icon-search.png'); + background-repeat: no-repeat; + background-position: 0 50%; +} +button.search:hover { + background-image: url('../img/icons/icon-search-hover.png'); +} +button.search[disabled], button.search[disabled]:hover { + background-image: url('../img/icons/icon-search-hover.png') !important; +} + + + +/* Links as Buttons +------------------------------------------------------------------------------------------------------ */ + +a.button, +.datecrumbs a, +.datecrumbs span { + display: inline-block; + padding: 4px 8px 4px; + font-size: 11px; + font-weight: bold; +} + + +/* Drop-Down Button ......................................... */ + +a.button.drop-down { + float: right; + padding-left: 20px; + padding-top: 3px; +} +a.button.drop-down[class*="selected"] { + position: relative; + z-index: 1000; + height: 17px; +} +a.button.drop-down:link, a.button.drop-down:visited { + background: url('../img/icons/icon-dropdown.png') 3px 3px no-repeat; +} +a.button.drop-down[class*="selected"], +a.button.drop-down:hover, a.button.drop-down:active { + background: url('../img/icons/icon-dropdown-hover.png') 3px 3px no-repeat; +} + + +/* Filebrowser & Related Lookup ......................................... */ + +a.fb_show img { + width: 0; + height: 0; + opacity: 0; +} + +a.fb_show, +a.related-lookup { + top: 0; + display: inline-block; + margin-bottom: -9.5px; + width: 23px; + height: 23px; + background: 50% 50% no-repeat; +} + +@media screen and (-webkit-min-device-pixel-ratio:0) { + a.fb_show, + a.related-lookup { + margin-bottom: -10px; + } +} + +a.fb_show:link, a.fb_show:visited, +.tinyMCE .browse span { + background-image: url('../img/icons/icon-fb-show.png'); +} +a.fb_show:hover, a.fb_show:active, +.tinyMCE .browse span:hover { + background-image: url('../img/icons/icon-fb-show-hover.png'); +} +a.related-lookup:link, a.related-lookup:visited { + background-image: url('../img/icons/icon-related-lookup.png'); +} +a.related-lookup:hover, a.related-lookup:active { + background-image: url('../img/icons/icon-related-lookup-hover.png'); +} + +input[disabled] + a.fb_show { + background-image: url('../img/icons/icon-fb-show-hover.png') !important; +} +input[disabled] + a.related-lookup { + background-image: url('../img/icons/icon-related-lookup-hover.png') !important; +} + +a.related-lookup + strong { + position: relative; + top: 1px; + margin-left: 5px; + font-size: 11px; + font-weight: bold; +} +#changelist table a.fb_show, +#changelist table a.related-lookup { + top: -5px; + margin-bottom: -12px; +} +#changelist table a.related-lookup + strong { + top: -1px; +} + + +/* Add Another ......................................... */ + +a.add-another { + position: relative; + display: inline-block; + margin-left: 3px; + width: 14px; + height: 14px; + vertical-align: top; + font-size: 11px; + line-height: 16px; + background: 50% 50% no-repeat; +} + +a.add-another:link, a.add-another:visited { + background-image: url('../img/icons/icon-add_another.png'); +} +a.add-another:hover, a.add-another:active { + background-image: url('../img/icons/icon-add_another-hover.png'); +} + +.change-list table tbody a.add-another { + position: relative; + top: -7px; +} + +.radiolist.inline + a.add-another, +.checkboxlist.inline + a.add-another { + float: left; + margin-left: -20px; + margin-right: -10000px; +} + + + +/* Unknown, Yes & No Workaround +------------------------------------------------------------------------------------------------------ */ + +img[src$="img/admin/icon-unknown.gif"] { + padding: 5px; + width: 0; + height: 0; + background: url('../img/icons/icon-unknown.png') 0 50% no-repeat; +} +img[src$="img/admin/icon-no.gif"] { + padding: 5px; + width: 0; + height: 0; + background: url('../img/icons/icon-no.png') 0 50% no-repeat; +} +img[src$="img/admin/icon-yes.gif"] { + padding: 5px; + width: 0; + height: 0; + background: url('../img/icons/icon-yes.png') 0 50% no-repeat; +} + +#changelist form table img[src$="img/admin/icon-unknown.gif"] { + position: relative; + top: 2px; + vertical-align: top; +} +#changelist form table img[src$="img/admin/icon-no.gif"] { + position: relative; + top: 3px; + vertical-align: top; +} +#changelist form table img[src$="img/admin/icon-yes.gif"] { + position: relative; + top: 2px; + vertical-align: top; +} + diff --git a/assets/css/components.css b/assets/css/components.css new file mode 100644 index 0000000..0a327f7 --- /dev/null +++ b/assets/css/components.css @@ -0,0 +1,841 @@ + + + +/* Paragraphs & Other Typo Formats +------------------------------------------------------------------------------------------------------ */ + +.module p { + margin: 0; + padding: 5px 0; +} +fieldset.module label + p { + font-size: 11px; + line-height: 15px; +} + + + +/* Modules +------------------------------------------------------------------------------------------------------ */ + +.module { + margin: 0 0 7px; +} + +#changelist .span-flexible .module + ul.submit-row { + margin-top: 10px; +} +.module:empty { + display: none; +} + + +/* Nested Modules Basics ......................................... */ + +.module .module, +.module fielset.module { + margin: 0; +} + + + +/* Groups +------------------------------------------------------------------------------------------------------ */ + +.group { + margin: 0 -4px 7px; + padding: 2px; +} + + + +/* Elements in Modules & Groups +------------------------------------------------------------------------------------------------------ */ + + +/* 1st Level Elements ......................................... */ + +.group h2, +.module h2 { + padding: 6px 10px; +} +.group h2+.tools+* { + margin-top: 2px; +} + + +/* 2nd Level Elements (Dark/Bright) ......................................... */ + +.group h3, +.module h3 { + margin: 0; + padding: 5px 10px; +} + + +/* 3rd Level Elements ......................................... */ + +.group h4, +.module h4 { + margin: 0; + padding: 4px 10px 4px 10px; +} + +.module .description { + padding: 8px 10px; + font-size: 11px; +} + + + +/* Modules & Groups Overrides +------------------------------------------------------------------------------------------------------ */ + +.module:first-child { + margin-top: 0 !important; +} +.group .module:first-child { + margin-top: 2px !important; +} +.group:first-child { + margin-top: -4px; +} +.group .module { + margin-top: 2px; + margin-bottom: 0; +} +.group .module .module { + margin-top: 0; +} +.group:last-child, +.module:last-child { + margin-bottom: 0; +} + + + +/* Collapsible Structures +------------------------------------------------------------------------------------------------------ */ + +.collapse.closed *, +.collapse.closed .module.table, +.collapse.closed .module.table * { + display: none; +} + +.collapse-handler { + cursor: pointer; +} + +.collapse.closed .collapse-handler, +.collapse.closed .tools, +.collapse.closed .tools * { + display: block !important; +} +.collapse.closed h3+.tools, +.collapse.closed h4+.tools { + margin-top: 1px !important; +} + + + +/* Row +------------------------------------------------------------------------------------------------------ */ + +.row { + padding: 5px 10px; + font-weight: bold; +} + +fieldset.module .row + .module { + margin-top: -1px !important; +} + + + +/* Cell +------------------------------------------------------------------------------------------------------ */ + +.row .cell { + display: inline-block; + margin-top: -5px; + margin-bottom: -5px; + padding: 5px 10px; + width: auto; +} +.row .cell + .cell { + padding-left: 18px; +} + + + +/* Fieldset Row +------------------------------------------------------------------------------------------------------ */ + +fieldset.module .row { + overflow: hidden; + padding: 8px 10px; + line-height: 18px; + font-weight: normal; +} + + + +/* Fieldset Cell +------------------------------------------------------------------------------------------------------ */ + +fieldset.module .cell { + float: left; + margin-top: -8px; + margin-bottom: -8px; + padding: 8px 18px 8px 0; + white-space: nowrap; +} +fieldset.module .cell + fieldset.module .cell { + padding-left: 18px; +} +fieldset.module .cell[class*="span"] { + margin-right: 0; +} +fieldset.module .cell[class*="span"]:first-child { + padding-left: 0; +} +fieldset.module .cell input[class*="span"] { + margin-right: 0; +} +fieldset.module .cell.last + fieldset.module .cell { + clear: left; + padding-left: 0; +} +fieldset.module .cell.last + fieldset.module .cell, +fieldset.module .cell.last + fieldset.module .cell + fieldset.module .cell, +fieldset.module .cell.last + fieldset.module .cell + * + fieldset.module .cell { + margin-top: 0; +} + + + +/* Tabular Modules +------------------------------------------------------------------------------------------------------ */ + +.module.table { + display: table; + margin: 0 0 -2px; + width: 100%; + border-collapse: separate; + border-spacing: 0 2px; +} +h2 + .module.table, +h2 + * + .module.table, +h2 + * + * + .module.table { + margin-top: 0 !important; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + .module.table { + margin-bottom: -1px; + border-spacing: 0 1px !important; + } +} + +.module.thead { + display: table-header-group; +} +.module.tfoot { + display: table-footer-group; +} +.module.thead, +.module.tfoot { + font-size: 11px; + font-weight: bold; +} +.module.table .tr { + display: table-row; +} + +.module.tbody { + display: table-row-group; +} + +.module.table .th, +.module.table .td { + display: table-cell; + float: none; + overflow: hidden; + margin-right: 0; + padding: 1px 20px; + height: 100%; + vertical-align: top; + white-space: nowrap; +} + +.module.tbody .th, +.module.tbody .td { + padding-top: 5px; + padding-bottom: 5px; +} +.module.table .th:first-of-type, +.module.table .td:first-of-type { + padding-left: 10px; +} +.module.tbody .th.tools, +.module.tbody .td.tools { + padding-left: 0; + width: 100%; +} + +.empty-form { + display: none !important; +} + + + +/* Add Items +------------------------------------------------------------------------------------------------------ */ + +.module.add-item { + height: 28px; +} +.module.add-item>a { + position: relative; + top: 6px; + padding: 5px 10px; + font-weight: bold; +} + + + +/* Selectors +------------------------------------------------------------------------------------------------------ */ + +.selector { + position: relative; + float: left; + overflow: hidden; + width: 758px; +} +.selector-available, .selector-chosen { + float: left; + width: 366px; +} +.stacked .selector-available, .stacked .selector-chosen { + width: 756px; +} +.selector h2, .inline-group .selector h2, +.inline-related fieldset .selector-available h2, .inline-related fieldset .selector-chosen h2 { + padding: 7px 5px 6px 7px; + font-size: 12px; + line-height: 13px; + font-weight: bold; +} +.selector .selector-filter { + padding: 3px 5px 2px 2px; + min-height: 25px; + font-weight: bold; + line-height: 25px; + text-indent: 25px; + background: url('../img/icons/icon-searchbox.png') 6px 50% no-repeat; +} +.selector .selector-filter input[type=text] { + position: relative; + margin: 0; + width: 326px !important; + max-width: 326px !important; +} +.selector.stacked .selector-filter input[type=text] { + width: 716px !important; + max-width: 716px !important; +} +.selector .selector-filter img { + display: none; +} +.selector .selector-chosen .selector-filter:after { + content: " " url('../img/icons/icon-selector_add-m2m_horizontal-hover.png'); + opacity: .75; +} +.selector.stacked .selector-chosen .selector-filter:after { + content: " " url('../img/icons/icon-selector_add-m2m_vertical-hover.png'); +} +.selector select[multiple=multiple] { + margin: 0; + padding-left: 3px; + max-width: 367px !important; + width: 367px !important; + height: 200px; +} +.selector.stacked select[multiple=multiple] { + width: 757px !important; + max-width: 757px !important; +} +.selector h2 + select { + display: none; + position: relative; + top: -1px; +} +.selector ul.selector-chooser { + float: left; + margin: 110px 2px 0; + padding: 0; + width: 18px; +} +.selector.stacked ul.selector-chooser { + margin: 4px 0 0 356px; + width: 36px; +} +.selector.stacked ul.selector-chooser li { + float: left; +} +a.selector-add, a.selector-remove { + display: block; + width: 18px; + height: 18px; + color: transparent !important; + background-position: 50% 0; + background-repeat: no-repeat; +} +a.selector-add:link, a.selector-add:visited { + background-image: url('../img/icons/icon-selector_add-m2m_horizontal.png'); +} +a.selector-add:hover, a.selector-add:active { + background-image: url('../img/icons/icon-selector_add-m2m_horizontal-hover.png'); +} +a.selector-remove:link, a.selector-remove:visited { + background-image: url('../img/icons/icon-selector_remove-m2m_horizontal.png'); +} +a.selector-remove:hover, a.selector-remove:active { + background-image: url('../img/icons/icon-selector_remove-m2m_horizontal-hover.png'); +} +.stacked a.selector-add:link, .stacked a.selector-add:visited { + background-image: url('../img/icons/icon-selector_add-m2m_vertical.png'); +} +.stacked a.selector-add:hover, .stacked a.selector-add:active { + background-image: url('../img/icons/icon-selector_add-m2m_vertical-hover.png'); +} +.stacked a.selector-remove:link, .stacked a.selector-remove:visited { + background-image: url('../img/icons/icon-selector_remove-m2m_vertical.png'); +} +.stacked a.selector-remove:hover, .stacked a.selector-remove:active { + background-image: url('../img/icons/icon-selector_remove-m2m_vertical-hover.png'); +} +a.selector-chooseall, a.selector-clearall { + display: block; + margin: 0; + padding: 2px 7px; + font-size: 11px; + line-height: 13px; + font-weight: bold; +} + + + +/* Link-List, Actions, Feed, Table of Contents +------------------------------------------------------------------------------------------------------ */ + +.link-list ul li, +.feed ul li, +.table-of-contents ul li { + padding: 0; + font-size: 11px; + line-height: 15px; + font-weight: bold; +} +.link-list ul li a, +.feed ul li a, .feed ul li span, +.table-of-contents ul li a { + display: block; + padding: 5px 10px; + font-weight: bold; + line-height: 13px; + background-color: transparent; + background-position: 50% 50%; + background-repeat: no-repeat; +} + +.link-list ul li a, +.feed ul li a { + padding-left: 25px; +} +a.internal, +a.external { + background-repeat: no-repeat; +} +.dashboard a.internal { + background-position: 12px 7px; +} +.dashboard a.external { + background-position: 10px 8px; +} +a.internal:link, a.internal:visited { + background-image: url('../img/icons/icon-navigation-internal.png'); +} +a.internal:hover, a.internal:active { + background-image: url('../img/icons/icon-navigation-internal-hover.png'); +} +a.external:link, a.external:visited { + background-image: url('../img/icons/icon-navigation-external.png'); +} +a.external:hover, a.external:active { + background-image: url('../img/icons/icon-navigation-external-hover.png'); +} + +.feed ul li a, .feed ul li span { + line-height: 13px; +} +.feed ul li span.date { + float: right; + padding: 5px 5px 0 5px; +} + + + +/* Basic Actions & Module Actions +------------------------------------------------------------------------------------------------------ */ + +ul.actions { + position: relative; + float: right; + clear: both; +} +ul.actions li { + position: relative; + float: left; + margin-left: 20px; +} +ul.actions li.change-link { + width: 60px; +} +ul.actions li a { + padding-left: 15px; + font-size: 11px; + background-position: 0 50%; + background-repeat: no-repeat; +} + +.actions ul li { + padding: 4px 5px 4px 25px; + font-size: 11px; + line-height: 12px; +} + +.actions ul li a { + margin-left: -15px; + padding-left: 15px; + font-weight: bold; + background-position: 0 50%; + background-repeat: no-repeat; +} + +.actions li.add-link a:link, .actions li.add-link a:visited { + background-image: url('../img/icons/icon-actions-add-link.png'); +} +.actions li.add-link a:hover, .actions li.add-link a:active { + background-image: url('../img/icons/icon-actions-add-link-hover.png'); +} +.actions li.change-link a:link, .actions li.change-link a:visited { + background-image: url('../img/icons/icon-actions-change-link.png'); +} +.actions li.change-link a:hover, .actions li.change-link a:active { + background-image: url('../img/icons/icon-actions-change-link-hover.png'); +} + +.actions li.delete-link { + text-decoration: line-through; + background: url('../img/icons/icon-actions-delete-link.png') 10px 7px no-repeat; +} + + + +/* Module Search & Module Filter +------------------------------------------------------------------------------------------------------ */ + +.module.search, +.module.filter { + position: relative; + float: right; + z-index: 1000; + padding: 8px 10px; +} +.module.search { + padding-right: 0; +} + +.module.filter .pulldown-container { + position: absolute; + width: inherit; +} + +a.button.toggle-filters { + display: block; + margin: 0; + padding: 4px 20px 4px 8px; +} +a.button.toggle-filters:link, a.button.toggle-filters:visited { + background: transparent url('../img/icons/icon-dropdown.png') 100% 3px no-repeat; +} +.selected a.button.toggle-filters:link, .selected a.button.toggle-filters:visited { + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; +} +.open a.button.toggle-filters, .selected a.button.toggle-filters, +.selected a.button.toggle-filters:hover, .selected a.button.toggle-filters:active, +a.button.toggle-filters:hover, a.button.toggle-filters:active { + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; +} +.selected a.button.toggle-filters:link, .selected a.button.toggle-filters:visited { + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; +} +.open a.button.toggle-filters, +.open.selected a.button.toggle-filters, +.selected a.button.toggle-filters:hover, .selected a.button.toggle-filters:active, +a.button.toggle-filters:hover, a.button.toggle-filters:active { + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; +} + +.filter-pulldown { + display: none; + position: relative; + z-index: 1000; + margin: -1px 0; + padding: 0 10px 10px; +} +.filter-pulldown .filter { + position: relative; + padding: 7px 0 0; + width: 100%; +} +.filter-pulldown select { + width: 100% !important; +} +.filter-pulldown label { + margin: 0 0 -2px; + padding: 0; + width: 100% !important; + line-height: 12px; + font-weight: bold; +} + + + +/* Module Date Hierarchy +------------------------------------------------------------------------------------------------------ */ + +.module + .module.date-hierarchy { + margin-top: -8px; +} + +.date-hierarchy ul { + position: relative; + float: left; + clear: both; + font-size: 11px; + line-height: 16px; + font-weight: bold; +} +.date-hierarchy ul li { + position: relative; + float: left; + margin-right: 10px; +} +.module.date-hierarchy ul a, +.module.date-hierarchy ul span { + padding: 2px 5px 1px; + font-weight: normal; +} +.date-hierarchy ul li a.date-hierarchy-back { + padding-left: 10px; + background: 0 50% no-repeat scroll; +} + +.date-hierarchy a.date-hierarchy-back:link, .date-hierarchy a.date-hierarchy-back:visited { + background-image: url('../img/icons/icon-date-hierarchy-back.png'); +} +.date-hierarchy a.date-hierarchy-back:hover, .date-hierarchy a.date-hierarchy-back:active { + background-image: url('../img/icons/icon-date-hierarchy-back-hover.png'); +} + + + +/* Pagination +------------------------------------------------------------------------------------------------------ */ + +.module.pagination { + padding: 8px 10px; +} +.module .module.pagination { + position: relative; + float: left; +} +ul.pagination { + position: relative; + clear: both; + margin: 0; + padding: 0; + width: auto; + font-weight: bold; +} +ul.pagination li { + position: relative; + float: left; + display: block; + margin-right: 3px; +} +ul.pagination li.results { + margin-right: 10px; +} +ul.pagination li.separator { + border-color: transparent; +} +ul.pagination li:last-child { + clear: right; +} + +ul.pagination span, +ul.pagination a { + display: inline-block; + padding: 4px 8px 4px; + min-width: 25px; + font-size: 11px; + font-weight: bold; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; +} +ul.pagination li.separator span { + padding: 4px 0; + min-width: 10px; + font-size: 14px; +} +ul.pagination li.showall { + margin-left: 7px; +} +.submit-row ul.pagination li, +.submit-row ul.pagination li.results { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + + + +/* Module Changelist-Results +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-results { + /* background: url('/media/admin/img/backgrounds/changelist-results.png') repeat scroll !important; */ +} +.changelist-actions + .changelist-results, +.changelist-results + .changelist-actions { + margin-top: -1px; +} + + + +/* Module Changelist Actions +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-actions { + display: none; + position: relative; + margin-bottom: 0; +} + +.module.changelist-actions ul { + position: relative; + float: left; + display: inline; + font-size: 11px; + line-height: 16px; + font-weight: bold; + margin: -1px 10px -1px 0; +} +.module.changelist-actions ul li { + position: relative; + float: left; + display: block; + margin-right: 3px; +} +.module.changelist-actions ul li.all { + margin-right: 10px; +} + +.module.changelist-actions ul a, +.module.changelist-actions ul span { + display: inline-block; + padding: 4px 8px 3px; + font-size: 11px; + font-weight: bold; + border: 1px solid; +} +.module.changelist-actions ul span span { + padding: 0; +} + +.module.changelist-actions #action-toggle { + display: none; +} +.module.changelist-actions select { + float: left; + margin: 0 10px 0 0; + width: 278px; +} + +.module.changelist-actions li.all, +.module.changelist-actions li.clear-selection, +.module.changelist-actions li.question { + display: none; +} + + + +/* Module Footer +------------------------------------------------------------------------------------------------------ */ + +.module.footer { + position: fixed; + z-index: 1000; + bottom: 0; + margin: 0 -20px; + padding: 12px 20px; + width: 100%; + opacity: 1; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; +} +.module.footer.changelist-actions { + padding: 15px 20px 14px; +} + + + +/* Submit Row +------------------------------------------------------------------------------------------------------ */ + +.module.submit-row { + width: 100%; +} +ul.submit-row { + position: relative; + float: left; + clear: both; + width: 100%; +} +.pagination + ul.submit-row { + float: right; + clear: none; + width: 25%; +} +ul.submit-row li { + float: right; + margin-left: 10px; +} + +ul.submit-row li.left { + float: left; +} +ul.submit-row li.left:first-child { + margin-left: 0; +} + + + +/* Sortable +------------------------------------------------------------------------------------------------------ */ + +.sortablehelper, sortablehelper * { + display: none; +} + diff --git a/assets/css/datepicker/grappelli-theme-extensions.css b/assets/css/datepicker/grappelli-theme-extensions.css new file mode 100644 index 0000000..5b568cf --- /dev/null +++ b/assets/css/datepicker/grappelli-theme-extensions.css @@ -0,0 +1,444 @@ + +body { +/* background: #e4f !important;*/ +} + + + + + +/* Widget Basics +------------------------------------------------------------------------------------------------------ */ + +.module.ui-widget { + border: none; + background: #fff; +} +.ui-widget-content { + border: 1px solid #ccc; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + background: #eee; +} + + + +/* Accordion +------------------------------------------------------------------------------------------------------ */ + + +/* Overlays */ +.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } +.ui-accordion .ui-accordion-li-fix { display: inline; } +.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } +.ui-accordion .ui-accordion-header a { + display: block; + font-size: 1em; + padding: 0 0 0 12px; +} +.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } +.ui-accordion .ui-accordion-content { + top: 0; + margin-top: 0; + margin-bottom: 0; + padding: 5px 15px; + border-top: 1px solid #fff; +} +.ui-accordion .ui-accordion-content-active { display: block; }/* Datepicker +----------------------------------*/ + + + +.ui-accordion-header { + margin-top: 2px !important; + cursor: pointer; + outline: none; +} +.ui-accordion .ui-accordion-header a { + padding: 0 0 0 12px; + color: #444; + outline: none; +} + +.ui-accordion-header.ui-state-default { + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} +.ui-accordion-header.ui-state-active { + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; +} + + +/* Accordion Module ......................................... */ + +.module .ui-accordion-header.ui-state-default { + border: 1px solid #bdbdbd; + background-color: #a1d4e5; +} +.module .ui-accordion-header.ui-state-default:hover { + background-color: #d6d6d6; +} +.module .ui-accordion-header.ui-state-active { + border: 1px solid #bdbdbd; + background-color: #d6d6d6; +} + + + +/* Accordion Module in Group......................................... */ + +.group .module .ui-accordion-header.ui-state-default { + border: 1px solid #c7c7c7; + background-color: #cee9f2; +} +.group .module .ui-accordion-header.ui-state-default:hover { + background-color: #e0e0e0; +} +.group .module .ui-accordion-header.ui-state-active { + border: 1px solid #c7c7c7; + background-color: #e0e0e0; +} + + + + +/*.module .ui-accordion-header { + border-top: 1px solid #e4f; +}*/ +.group .module .ui-accordion-header { + border-top: 1px solid #4ef; +} + + + +/* Datepicker +------------------------------------------------------------------------------------------------------ */ + + +/*button.ui-datepicker-trigger { + margin-left: 5px; + width: 25px; + background: #4ef url('/media/grappelli/img/icons/icon-calendar.png') 50% 50% no-repeat; +} +button.ui-datepicker-trigger:hover { + background: transparent url('/media/grappelli/img/icons/icon-calendar-hover.png') 50% 50% no-repeat; +}*/ + +.ui-datepicker { + width: auto !important; padding: 3px 3px 0; + border-color: #bdbdbd; + box-shadow: 0 0 10px #333; -moz-box-shadow: 0 0 10px #333; -webkit-box-shadow: 0 0 10px #333; +} +.ui-datepicker .ui-datepicker-header { + padding: 2px 0; + height: 25px; +} +.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { + position: absolute; + top: 4px; + width: 1.8em; + height: 1.8em; +} +.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 3px; } +.ui-datepicker .ui-datepicker-prev { left:2px; } +.ui-datepicker .ui-datepicker-next { right:2px; } +.ui-datepicker .ui-datepicker-prev-hover { left:1px; } +.ui-datepicker .ui-datepicker-next-hover { right:1px; } +.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } +.ui-datepicker .ui-datepicker-title { + margin: 3px 25px 2px; + line-height: 1.8em; + text-align: center; +} +.ui-datepicker .ui-datepicker-title select { + float:left; + font-size:1em; + margin: -3px 0 -1px !important; + min-width: 30px; +} +.ui-datepicker select.ui-datepicker-month-year {width: 100%;} +.ui-datepicker select.ui-datepicker-month, +.ui-datepicker select.ui-datepicker-year { width: 49%;} +.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { + float: right; +} +.ui-datepicker table { + width: 100%; + font-size: 12px; + margin: 0 0 2px; +} +.ui-datepicker th { padding: 5px 0; text-align: center; font-weight: bold; border: 0; } +.ui-datepicker td { + min-width: 25px; + border: 0; padding: 1px; +} +.ui-datepicker td span, .ui-datepicker td a { + padding: 4px 0 3px; + text-align: center; + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; +} +.ui-datepicker td a.ui-state-hover { + color: #fff !important; + border-color: #444 !important; + background: #444 !important; +} +.ui-datepicker td a.ui-state-active { +/* color: #fff;*/ +/* border-color: #aaa;*/ + background: #fff; +} +.ui-datepicker td a.ui-state-highlight { +/* color: #fff;*/ + border-color: #bababa; + background: #D6D6D6; +} +.ui-datepicker .ui-datepicker-buttonpane { + background-image: none; + margin: 10px 0 0; + padding: 0; + border-left: 0; + border-right: 0; + border-bottom: 0; + } +.ui-datepicker .ui-datepicker-buttonpane button { + float: right; + margin: 3px 0; + padding: 4px 5px 5px; + height: 25px; + font-size: 12px; + background: #fff; + cursor: pointer; +} +.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { + opacity: 1 !important; + color: #fff; font-weight: bold; + border-color: #309bbf; + background: #309bbf; +} +.ui-datepicker .ui-datepicker-buttonpane button.ui-state-hover { + color: #fff !important; + border-color: #444 !important; + background: #444 !important; +} + +.ui-datepicker-multi .ui-datepicker-group-first .ui-datepicker-title, +.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-title { + margin-right: 5px !important; +} +.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-title, +.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-title { + margin-left: 5px !important; +} + +.ui-datepicker-multi .ui-datepicker-group table { + width: 95%; +} +.ui-datepicker-multi .ui-datepicker-group-first table, +.ui-datepicker-multi .ui-datepicker-group-middle table { + margin-right: 5px !important; +} +.ui-datepicker-multi .ui-datepicker-group-middle table, +.ui-datepicker-multi .ui-datepicker-group-last table { + margin-left: 5px !important; +} +.ui-datepicker-multi .ui-datepicker-group-middle table { + margin-left: 3px !important; +} +.ui-datepicker-multi .ui-datepicker-buttonpane { + border: none; +} + +.ui-datepicker-append { + margin-left: 6px; color: #999; font-size: 10px; +} + + + +/* Tabs +------------------------------------------------------------------------------------------------------ */ + +.ui-tabs { + padding: 0; zoom: 1; +} +.ui-tabs .ui-tabs-nav { + padding: 0; + color: #444; font-size: 12px; + border: none; + border-bottom: 1px solid #bdbdbd; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; +/* -moz-border-radius-bottomright: 0;*/ + background: none; +} +.ui-tabs .ui-tabs-nav li { + position: relative; float: left; + border-bottom-width: 1px !important; + margin: 0 .2em -1px 0; + padding: 0; +} +.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } +.ui-tabs .ui-tabs-nav li.ui-tabs-selected { + padding-bottom: 0px; border-bottom-width: 1px; +} +.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } +.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ +.ui-tabs .ui-tabs-panel { + padding: 0; + display: block; + border: 1px solid #bdbdbd; + border-top: 1px solid #fff; + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; + background: #eee; +} +.ui-tabs .ui-tabs-hide { display: none !important; } + + + + +/* gAutocomplete +------------------------------------------------------------------------------------------------------ */ + +.ui-gAutocomplete-wrapper { + position: absolute; + z-index: 400; +} +ul.ui-gAutocomplete-results { + margin-top: 4px; + padding: 5px; + border: 1px solid #ddd; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; + box-shadow: 0 0 3px #444; -moz-box-shadow: 0 0 3px #444; -webkit-box-shadow: 0 0 3px #444; + background: #fff; +} +ul.ui-gAutocomplete-results li { + padding: 2px 5px; + color: #666; + cursor: pointer; +} +ul.ui-gAutocomplete-results li:hover { + background: #e1f0f5; +} +ul.ui-gAutocomplete-results li:first-child { + border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} +ul.ui-gAutocomplete-results li:last-child { + border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} +ul.ui-gAutocomplete-results li + li { + border-top: 1px solid #eee; +} + +ul.ui-gAutocomplete-results li b { + margin: 0 1px; + color: #444; +/* text-decoration: underline;*/ +} + + + +/* gFacelist +------------------------------------------------------------------------------------------------------ */ + +/*span.ui-gFacelist-message { + display: inline-block; + height: 25px; + background: #fff; + margin: 0; + padding: 3px 5px 4px; + vertical-align: middle; + color: #666; font-family: Arial, sans-serif; font-size: 12px; font-weight: bold; + border: 1px solid #bbb; + border-color: #ccc #ddd #ddd #ccc; + border-top-left-radius: 3px; -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; + border-top-right-radius: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 3px; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + outline: none; +}*/ + +.ui-gFacelist-toolbar input.ui-gAutocomplete-autocomplete { +/* margin-top: 4px;*/ +/* width: 100px;*/ + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; +} +.ui-gFacelist-toolbar button { + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; +} + +.ui-gFacelist-toolbar .ui-gAutocomplete-wrapper { + margin-top: -4px; +} + +ul.ui-gFacelist-facelist { + position: relative; float: left; clear: both; + padding: 0px 5px 5px; + border: 1px solid #bbb; + border-color: #ccc #ddd #ddd #ccc; + border-top: none; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; + background: #fff; + +} +li.ui-gFacelist-item { + position: relative; float: left; + margin-top: 5px; padding: 3px 6px 2px; + width: auto; + font-weight: bold; + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; + background: #ddd; +} +li.ui-gFacelist-item { + margin-right: 5px; +} + +a.ui-gFacelist-item-remove { + display: inline-block; + margin: 0 0 -3px 0; + width: 16px; + height: 16px; + background: transparent 100% 3px no-repeat; +} +a.ui-gFacelist-item-remove:link, a.ui-gFacelist-item-remove:visited { + background-image: url('/media/grappelli/img/icons/icon-tools-delete-handler.png'); +} +a.ui-gFacelist-item-remove:hover, a.ui-gFacelist-item-remove:active { + background-image: url('/media/grappelli/img/icons/icon-tools-delete-handler-hover.png'); +} + + + + + +/* Datepicker Fields in Grid (Normal - 22px) +------------------------------------------------------------------------------------------------------ */ + +/*.span-24 input.vDateField.hasDatepicker { width: 880px; } +.span-23 input.vDateField.hasDatepicker { width: 840px; } +.span-22 input.vDateField.hasDatepicker { width: 800px; } +.span-21 input.vDateField.hasDatepicker { width: 760px; } +.span-20 input.vDateField.hasDatepicker { width: 720px; } +.span-19 input.vDateField.hasDatepicker { width: 680px; } +.span-18 input.vDateField.hasDatepicker { width: 640px; } +.span-17 input.vDateField.hasDatepicker { width: 600px; } +.span-16 input.vDateField.hasDatepicker { width: 560px; } +.span-15 input.vDateField.hasDatepicker { width: 520px; } +.span-14 input.vDateField.hasDatepicker { width: 480px; } +.span-13 input.vDateField.hasDatepicker { width: 440px; } +.span-12 input.vDateField.hasDatepicker { width: 400px; } +.span-11 input.vDateField.hasDatepicker { width: 360px; } +.span-10 input.vDateField.hasDatepicker { width: 320px; } +.span-9 input.vDateField.hasDatepicker { width: 280px; } +.span-8 input.vDateField.hasDatepicker { width: 240px; } +.span-7 input.vDateField.hasDatepicker { width: 200px; } +.span-6 input.vDateField.hasDatepicker { width: 160px; } +.span-5 input.vDateField.hasDatepicker { width: 120px; } +.span-4 input.vDateField.hasDatepicker { width: 80px; } + +.form-cell.span-12 label + input.vDateField.hasDatepicker { + width: 250px; +} +.form-cell.span-8 label + input[type=text].vDateField.hasDatepicker { + width: 90px; +}*/ diff --git a/assets/css/forms.css b/assets/css/forms.css new file mode 100644 index 0000000..1b940a7 --- /dev/null +++ b/assets/css/forms.css @@ -0,0 +1,738 @@ + + + +/* Basic Settings, Fieldsets, Form-Rows +------------------------------------------------------------------------------------------------------ */ + +form { + margin: 0; + padding: 0; +} + +fieldset { + margin: 0; + padding: 0; +} + +.row p.help { + margin: 3px 0 2px 0; + padding: 0; +} + +.row ul.radio-list + p.help, +.row ul.checkbox-list + p.help { + margin-top: -3px; +} + + + +/* Errors +------------------------------------------------------------------------------------------------------ */ + +.errornote { + margin-bottom: 7px; + padding: 8px 10px; + font-size: 12px; + font-weight: bold; +} +/* little fix to accomodate the top aligned login form .. */ +.errornote.login-errors { + margin-bottom: 0 !important; + padding: 8px 12px; +} +ul.errorlist { + margin: 3px 0 -3px; + font-size: 11px; + line-height: 16px; + font-weight: bold; +} +ul.errorlist li { + padding: 0 5px 0 0; +} +p.errornote + ul.errorlist { + margin-bottom: 8px; +} +ul.errorlist:empty { + display: none; + margin: 0; +} +.cell ul.errorlist { + padding-left: 0; +} +.cell ul.errorlist li { + padding-left: 0; +} +.cell label + * + ul.errorlist, +.cell label + * + * + ul.errorlist { + padding-left: 160px !important; +} +table ul.errorlist { + margin: -9px 0 6px; +} +.module.table ul.errorlist { + margin: 1px 0 -3px; +} +table ul.errorlist li, +.module.table ul.errorlist li { + padding-left: 0; +} +p.errornote + ul.errorlist li { + padding-left: 10px; +} + + + +/* Labels & Other Typographic Elements in Forms +------------------------------------------------------------------------------------------------------ */ + +label { + margin: 5px 0 -5px; + font-size: 11px; + line-height: 15px; + cursor: pointer; +} +.required label, label.required, +.row .required label, .row label.required { + font-weight: bold; +} + +.module label { + display: block; + padding: 0 0 6px; +} +.module .vCheckboxLabel { + display: inline; + float: none; + clear: both; + margin: 0 0 0 10px; + padding: 0; +} + + + +/* Form Elements +------------------------------------------------------------------------------------------------------ */ + +input, textarea, select, button { + margin: 0; + vertical-align: middle; + font-family: Arial, sans-serif; + font-size: 12px; + font-weight: bold; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; +} + + +/* Text, Password ................................................... */ + +input[type=text], input[type=password] { + padding: 5px 5px 4px; + height: 25px; +} +/* Webkit browser hack: apply same horizontal padding as in moz browsers + Moz Browsers have a default horizontal padding of 3px in input[type=submit] */ +@media screen and (-webkit-min-device-pixel-ratio:0) { + input[type=text], input[type=password] { + line-height: 13px !important; + } +} + + +/* Searchbar ................................................... */ + +form#changelist-search { + position: relative; + float: left; + clear: both; +} +input#searchbar { + position: relative; + float: left; + padding-left: 8px; + width: 218px; + height: 26px; + font-size: 11px; +} + + +/* FileBrowseField ................................................... */ + +input.vFileBrowseField { + padding-right: 25px; +} + + +/* File ................................................... */ + +input[type=file] { + position: relative; + top: 1px; + height: auto; + border: 0; +} +.th input[type=file], +.td input[type=file] { + top: 2px; + margin-bottom: -2px; +} + + +/* Date & Time ................................................... */ + +.vDateField, .vTimeField { + margin-left: 0; +} +p.datetime { + padding: 0; +} +p.datetime input.vTimeField { + margin-left: 13px; +} + + +/* Textarea ................................................... */ + +textarea { + vertical-align: top; + padding: 3px 5px; +} +fieldset.monospace textarea { + font-family: "Bitstream Vera Sans Mono",Monaco,"Courier New",Courier,monospace; +} + + +/* Select ................................................... */ + +select { + padding: 4px 3px 4px 3px; + height: 25px; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + select { + padding: 4px 28px 4px 8px; + -webkit-appearance: textfield; + background: #fff url('../img/icons/icon-form-select.png') 100% 50% no-repeat; + } +} +select[multiple=multiple] { + padding-right: 5px; + height: 160px; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + select[multiple=multiple] { + background-image: none; + } +} + + +/* Checkbox, Radio ................................................... */ + +input[type=checkbox], input[type=radio] { + position: relative; + margin: 0; +} +.row input[type=checkbox], .row input[type=radio] { + margin-left: 0; + margin-right: 5px; +} +.th>input[type=radio], +.th>input[type=checkbox], +.td>input[type=radio], +.td>input[type=checkbox] { + top: 2px; + margin-bottom: -3px; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + .th>input[type=radio], + .td>input[type=radio] { + top: 2px; + margin-bottom: -2px; + } + .th>input[type=checkbox], + .td>input[type=checkbox] { + top: 3px; + margin-bottom: -2px; + } +} +.row input[type=radio], +.row input[type=checkbox], +.th ul.radiolist input[type=radio], +.th ul.checkboxlist input[type=checkbox], +.td ul.radiolist input[type=radio], +.td ul.checkboxlist input[type=checkbox] { + top: -1px; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + .row input[type=radio], + .th ul.radiolist input[type=radio], + .td ul.radiolist input[type=radio] { + top: -2px; + } + .row input[type=checkbox], + .th ul.radiolist input[type=checkbox], + .td ul.radiolist input[type=checkbox] { + top: 0; + } +} +.th input[type=radio], +.th input[type=checkbox], +.td input[type=radio], +.td input[type=checkbox], +ul.radiolist input[type=radio], +ul.checkboxlist input[type=checkbox] { + margin-left: 0; + margin-right: 5px; +} + +.row input[type=checkbox] + label { + position: relative; + float: none; + top: 0; + display: inline-block; + margin-bottom: -2px; +} + +.row ul.checkboxlist input[type=checkbox] { + top: 0; + margin: 0 5px 0 0; +} +.row ul.checkboxlist label input[type=checkbox] { + top: -2px; + vertical-align: bottom; +} + +.row label + input + p.help input[type=checkbox] { + position: relative; + top: -2px; + margin: 0 3px 0 0; +} + +ul.tools .delete-handler-container input[type=checkbox], +ul.tools .remove-handler-container input[type=checkbox] { + display: none !important; +} + + +/* Radiolists & Checkboxlists ................................................... */ + +ul.radiolist, ul.checkboxlist { + position: relative; + float: none; + display: inline-block; + margin: 5px 0; + padding: 0; + font-size: 11px; + line-height: 15px; + font-weight: normal; +} + +ul.radiolist li + li, ul.checkboxlist li + li { + margin-top: 2px; +} + +ul.radiolist.inline, ul.checkboxlist.inline { + float: left; + display: inline; + margin-top: 5px; + margin-bottom: 3px; + padding-right: 20px; +} +th ul.radiolist.inline, th ul.checkboxlist.inline, +td ul.radiolist.inline, td ul.checkboxlist.inline { + margin-top: 0; +} +ul.radiolist.inline li, ul.checkboxlist.inline li { + float: left; + display: inline; + margin-top: 0 !important; + margin-bottom: 2px; + padding-right: 20px; +} +.module.tbody ul.radiolist.inline, .module.tbody ul.checkboxlist.inline { + display: inline; + white-space: normal; +} +.module.tbody ul.radiolist.inline li, .module.tbody ul.checkboxlist.inline li { + position: relative; + float: left; + display: inline; +} + +ul.radiolist label, ul.checkboxlist label { + float: none; + display: inline-block; + margin: 0; + padding: 0; + width: auto !important; + white-space: nowrap; +} + + +/* Changelist Form Fields ................................................... */ + +#changelist table input[type=text], +#changelist table input[type=password], +#changelist table input[type=file], +#changelist table select, +#changelist table textarea { + position: relative; + top: -5px; + margin-bottom: -9px; + vertical-align: top; +} +#changelist table input[type=file] { + top: -3px; + margin-bottom: -7px; +} +#changelist table input[type=radio], +#changelist table input[type=checkbox] { + position: relative; + top: -1px; +} +#changelist table thead input[type=radio], +#changelist table thead input[type=checkbox] { + top: 0; +} + + + +/* Form Fields in Grid +------------------------------------------------------------------------------------------------------ */ + +input[class*="span"], select[class*="span"], textarea[class*="span"] { + margin-right: 0; +} + +.span-24 input[type=text], .span-24 input[type=password], +.span-24 select, .span-24 textarea, +input[type=text].span-24, input[type=password].span-24, +select.span-24, textarea.span-24, +.span-24 .ui-gFacelist-message, +.span-24 .ui-gFacelist-facelist { + width: 918px; +} +.span-23 input[type=text], .span-23 input[type=password], +.span-23 select, .span-23 textarea, +input[type=text].span-23, input[type=password].span-23, +select.span-23, textarea.span-23, +.span-23 .ui-gFacelist-message, +.span-23 .ui-gFacelist-facelist { + width: 878px; +} +.span-22 input[type=text], .span-22 input[type=password], +.span-22 select, .span-22 textarea, +input[type=text].span-22, input[type=password].span-22, +select.span-22, textarea.span-22, +.span-22 .ui-gFacelist-message, +.span-22 .ui-gFacelist-facelist { + width: 838px; +} +.span-21 input[type=text], .span-21 input[type=password], +.span-21 select, .span-21 textarea, +input[type=text].span-21, input[type=password].span-21, +select.span-21, textarea.span-21, +.span-21 .ui-gFacelist-message, +.span-21 .ui-gFacelist-facelist { + width: 798px; +} +.span-20 input[type=text], .span-20 input[type=password], +.span-20 select, .span-20 textarea, +input[type=text].span-20, input[type=password].span-20, +select.span-20, textarea.span-20, +.span-20 .ui-gFacelist-message, +.span-20 .ui-gFacelist-facelist, + +.span-24 label + input[type=text], .span-24 label + input[type=password], +.span-24 label + select, .span-24 label + textarea { + width: 758px; +} +.span-19 input[type=text], .span-19 input[type=password], +.span-19 select, .span-19 textarea, +input[type=text].span-19, input[type=password].span-19, +select.span-19, textarea.span-19, +.span-19 .ui-gFacelist-message, +.span-19 .ui-gFacelist-facelist, + +.span-23 label + input[type=text], .span-23 label + input[type=password], +.span-23 label + select, .span-23 label + textarea { + width: 718px; +} +.span-18 input[type=text], .span-18 input[type=password], +.span-18 select, .span-18 textarea, +input[type=text].span-18, input[type=password].span-18, +select.span-18, textarea.span-18, +.span-18 .ui-gFacelist-message, +.span-18 .ui-gFacelist-facelist, + +.span-22 label + input[type=text], .span-22 label + input[type=password], +.span-22 label + select, .span-22 label + textarea { + width: 678px; +} +.span-17 input[type=text], .span-17 input[type=password], +.span-17 select, .span-17 textarea, +input[type=text].span-17, input[type=password].span-17, +select.span-17, textarea.span-17, +.span-17 .ui-gFacelist-message, +.span-17 .ui-gFacelist-facelist, + +.span-21 label + input[type=text], .span-21 label + input[type=password], +.span-1 label + select, .span-21 label + textarea { + width: 638px; +} +.span-16 input[type=text], .span-16 input[type=password], +.span-16 select, .span-16 textarea, +input[type=text].span-16, input[type=password].span-16, +select.span-16, textarea.span-16, +.span-16 .ui-gFacelist-message, +.span-16 .ui-gFacelist-facelist, +.span-24 input.vForeignKeyRawIdAdminField, +.span-24 input.vManyToManyRawIdAdminField, + +.span-20 label + input[type=text], .span-20 label + input[type=password], +.span-20 label + select, .span-20 label + textarea { + width: 598px; +} +.span-15 input[type=text], .span-15 input[type=password], +.span-15 select, .span-15 textarea, +input[type=text].span-15, input[type=password].span-15, +select.span-15, textarea.span-15, +.span-15 .ui-gFacelist-message, +.span-15 .ui-gFacelist-facelist, +.span-23 input.vForeignKeyRawIdAdminField, +.span-23 input.vManyToManyRawIdAdminField, + +.span-19 label + input[type=text], .span-19 label + input[type=password], +.span-19 label + select, .span-19 label + textarea { + width: 558px; +} +.span-14 input[type=text], .span-14 input[type=password], +.span-14 select, .span-14 textarea, +input[type=text].span-14, input[type=password].span-14, +select.span-14, textarea.span-14, +.span-14 .ui-gFacelist-message, +.span-14 .ui-gFacelist-facelist, +.span-22 input.vForeignKeyRawIdAdminField, +.span-22 input.vManyToManyRawIdAdminField, + +.span-18 label + input[type=text], .span-18 label + input[type=password], +.span-18 label + select, .span-18 label + textarea { + width: 518px; +} +.span-13 input[type=text], .span-13 input[type=password], +.span-13 select, .span-13 textarea, +input[type=text].span-13, input[type=password].span-13, +select.span-13, textarea.span-13, +.span-13 .ui-gFacelist-message, +.span-13 .ui-gFacelist-facelist, +.span-21 input.vForeignKeyRawIdAdminField, +.span-21 input.vManyToManyRawIdAdminField, + +.span-17 label + input[type=text], .span-17 label + input[type=password], +.span-17 label + select, .span-17 label + textarea { + width: 478px; +} +.span-12 input[type=text], .span-12 input[type=password], +.span-12 select, .span-12 textarea, +input[type=text].span-12, input[type=password].span-12, +select.span-12, textarea.span-12, +.span-12 .ui-gFacelist-message, +.span-12 .ui-gFacelist-facelist, +.span-20 input.vForeignKeyRawIdAdminField, +.span-20 input.vManyToManyRawIdAdminField, + +.span-16 label + input[type=text], .span-16 label + input[type=password], +.span-16 label + select, .span-16 label + textarea { + width: 438px; +} +.span-11 input[type=text], .span-11 input[type=password], +.span-11 select, .span-11 textarea, +input[type=text].span-11, input[type=password].span-11, +select.span-11, textarea.span-11, +.span-11 .ui-gFacelist-message, +.span-11 .ui-gFacelist-facelist, +.span-19 input.vForeignKeyRawIdAdminField, +.span-19 input.vManyToManyRawIdAdminField, + +.span-15 label + input[type=text], .span-15 label + input[type=password], +.span-15 label + select, .span-15 label + textarea { + width: 398px; +} +.span-10 input[type=text], .span-10 input[type=password], +.span-10 select, .span-10 textarea, +input[type=text].span-10, input[type=password].span-10, +select.span-10, textarea.span-10, +.span-10 .ui-gFacelist-message, +.span-10 .ui-gFacelist-facelist, +.span-18 input.vForeignKeyRawIdAdminField, +.span-18 input.vManyToManyRawIdAdminField, + +.span-14 label + input[type=text], .span-4 label + input[type=password], +.span-14 label + select, .span-14 label + textarea { + width: 358px; +} +.span-9 input[type=text], .span-9 input[type=password], +.span-9 select, .span-9 textarea, +input[type=text].span-9, input[type=password].span-9, +select.span-9, textarea.span-9, +.span-9 .ui-gFacelist-message, +.span-9 .ui-gFacelist-facelist, +.span-17 input.vForeignKeyRawIdAdminField, +.span-17 input.vManyToManyRawIdAdminField, + +.span-13 label + input[type=text], .span-13 label + input[type=password], +.span-13 label + select, .span-13 label + textarea { + width: 318px; +} +.span-8 input[type=text], .span-8 input[type=password], +.span-8 select, .span-8 textarea, +input[type=text].span-8, input[type=password].span-8, +select.span-8, textarea.span-8, +.span-8 .ui-gFacelist-message, +.span-8 .ui-gFacelist-facelist, +.span-16 input.vForeignKeyRawIdAdminField, +.span-16 input.vManyToManyRawIdAdminField, + +.span-12 label + input[type=text], .span-12 label + input[type=password], +.span-12 label + select, .span-12 label + textarea { + width: 278px; +} +.span-7 input[type=text], .span-7 input[type=password], +.span-7 select, .span-7 textarea, +input[type=text].span-7, input[type=password].span-7, +select.span-7, textarea.span-7, +.span-15 input.vForeignKeyRawIdAdminField, +.span-15 input.vManyToManyRawIdAdminField, + +.span-11 label + input[type=text], .span-11 label + input[type=password], +.span-11 label + select, .span-11 label + textarea { + width: 238px; +} +.span-6 input[type=text], .span-6 input[type=password], +.span-6 select, .span-6 textarea, +input[type=text].span-6, input[type=password].span-6, +select.span-6, textarea.span-6, +.span-14 input.vForeignKeyRawIdAdminField, +.span-14 input.vManyToManyRawIdAdminField, + +.span-10 label + input[type=text], .span-10 label + input[type=password], +.span-10 label + select, .span-10 label + textarea { + width: 198px; +} +.span-5 input[type=text], .span-5 input[type=password], +.span-5 select, .span-5 textarea, +input[type=text].span-5, input[type=password].span-5, +select.span-5, textarea.span-5, +.span-13 input.vForeignKeyRawIdAdminField, +.span-13 input.vManyToManyRawIdAdminField, + +.span-9 label + input[type=text], .span-9 label + input[type=password], +.span-9 label + select, .span-9 label + textarea { + width: 158px; +} +.span-4 input[type=text], .span-4 input[type=password], +.span-4 select, .span-4 textarea, +input[type=text].span-4, input[type=password].span-4, +select.span-4, textarea.span-4, +.span-12 input.vForeignKeyRawIdAdminField, +.span-12 input.vManyToManyRawIdAdminField, + +.span-8 label + input[type=text], .span-8 label + input[type=password], +.span-8 label + select, .span-8 label + textarea { + width: 118px; +} +.span-3 input[type=text], .span-3 input[type=password], +.span-3 select, .span-3 textarea, +input[type=text].span-3, input[type=password].span-3, +select.span-3, textarea.span-3, +.span-11 input.vForeignKeyRawIdAdminField, +.span-11 input.vManyToManyRawIdAdminField, + +.span-7 label + input[type=text], .span-7 label + input[type=password], +.span-7 label + select, .span-7 label + textarea { + width: 78px; +} +.span-2 input[type=text], .span-2 input[type=password], +.span-2 select, .span-2 textarea, +input[type=text].span-2, input[type=password].span-2, +select.span-2, textarea.span-2, +.span-10 input.vForeignKeyRawIdAdminField, +.span-10 input.vManyToManyRawIdAdminField, + +.span-6 label + input[type=text], .span-6 label + input[type=password], +.span-6 label + select, .span-6 label + textarea { + width: 38px; +} + +.container-grid .span-flexible input[type=text], .container-grid .span-flexible input[type=password], +.container-grid .span-flexible textarea, .container-grid .span-flexible select { + width: 100% !important; +} + + + +/* Form Elements: Basic Widths & Heights +------------------------------------------------------------------------------------------------------ */ + +input[type=text], +input[type=password], +.vDateField, +.vTimeField, +.vIntegerField, +.vPositiveSmallIntegerField, +.vManyToManyRawIdAdminField, +.vForeignKeyRawIdAdminField, +.vAutocompleteSearchField, +.vAutocompleteRawIdAdminField { + width: 118px; +} + +input.vTextField, +input.vURLField, +input.vFileBrowseField, +textarea, +.vLargeTextField, +.vXMLLargeTextField, +input.vM2MAutocompleteSearchField { + width: 278px; +} + +.row select { + min-width: 118px; +} + +.vLargeTextField { + height: 118px; +} + + + +/* Large Form Elements in Change-Form: Widths & Heights +------------------------------------------------------------------------------------------------------ */ + +.row .vTextField, +.row .vURLField, +.row .vFileBrowseField, +.row textarea, +.row .vLargeTextField, +.row .vXMLLargeTextField, +.row .vAutocompleteSearchField, +.row .vM2MAutocompleteSearchField { + width: 758px; +} +.row textarea { + height:200px; +} +.row select { + max-width: 758px; +} + + + +/* Form Elements in Changelist-Results Table & Tabular Modules: Widths & Heights +------------------------------------------------------------------------------------------------------ */ + +.changelist-results table select, +.module.table select { + max-width: 278px; +} + diff --git a/assets/css/grappelli-skin-basic.css b/assets/css/grappelli-skin-basic.css new file mode 100644 index 0000000..9b5b7aa --- /dev/null +++ b/assets/css/grappelli-skin-basic.css @@ -0,0 +1,1284 @@ + + + +/* TYPOGRAPHY +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + + + +/* Paragraphs +------------------------------------------------------------------------------------------------------ */ + +.module p.help, +p.help { + color: #999; +} + +.fb_show + p.help a { + border: 1px solid #309bbf; +} +.fb_show + p.help a:link, .fb_show + p.help a:visited { + border: 1px solid #309bbf; +} +.fb_show + p.help a:hover, .fb_show + p.help a:active { + border: 1px solid #444; +} + + + +/* Links +------------------------------------------------------------------------------------------------------ */ + +a:link, a:visited { + color: #309bbf; +} +a:hover, a:active, a.selected { + color: #444; +} + +.dashboard h2 a:link, .dashboard h2 a:visited, +.dashboard h3 a:link, .dashboard h3 a:visited { + color: #444; +} +.dashboard h2 a:hover, .dashboard h2 a:active, +.dashboard h3 a:hover, .dashboard h3 a:active { + color: #309bbf; +} + +#header a:link, #header a:visited { + color: #59AFCC; +} +#header a:hover, #header a:active { + color: #444; +} + + + +/* Blockquote, Pre, Code +------------------------------------------------------------------------------------------------------ */ + +blockquote { + color: #777; + border-left: 5px solid #ddd; +} + +code, pre { + color: #666; + background: inherit; +} + +pre.literal-block { + background: #eee; +} + +code strong { + color: #930; +} + +hr { + color: #eee; + border: 0; + background-color: #eee; +} + + + +/* RTE (Rich Text Edited) +------------------------------------------------------------------------------------------------------ */ + +.rte h3 { + border-top: 1px solid #d4d4d4; + border-bottom: 1px solid #d4d4d4; +} +.rte .group h3 { + border-top: 0; +} +.rte h3:last-child, +.rte h4:last-child { + border-bottom: 0; +} +.rte td { + border-left: 1px solid #f4f4f4; +} +.rte td:first-of-type { + border-left: 0; +} +.delete-confirmation ul.rte>li { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} +.delete-confirmation ul.rte>li:first-child { + border-top: 0; +} +.delete-confirmation ul.rte>li:last-child { + border-bottom: 0; +} +.delete-confirmation ul.rte>li>ul>li { + border-top: 1px dashed #e0e0e0; +} +.rte blockquote table { + border: 1px solid #d4d4d4; +} + + + +/* Other Styles +------------------------------------------------------------------------------------------------------ */ + +.warning { + color: #bf3030; +} +.quiet { + color: #999; +} + + + +/* STRUCTURES +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +body { + color: #444; + background: #fff; +} + + + +/* Header +------------------------------------------------------------------------------------------------------ */ + +#header { + color: #eee; + background: #333; +} +#header a:hover, #header a:active { + color: #ddd; +} + + + +/* Branding, Bookmarks & User-Tools +------------------------------------------------------------------------------------------------------ */ + +.branding { + border-left: 1px solid #343434; + background-color: #262626; +} +.admin-title { + border-left: 1px solid #404040; + border-right: 1px solid #303030; +} + + +/* User Tools ................................................... */ + +#user-tools { + border-left: 1px solid #303030; +} +#user-tools>li { + border-left: 1px solid #404040; + border-right: 1px solid #303030; +} +li.user-options-container.open a.user-options-handler { + color: #eee !important; +} +li.user-options-container.open ul.user-options { + border-top: 1px solid #262626; + background: #333; +} +ul.user-options li { + border-top: 1px solid #404040; + border-bottom: 1px solid #292929; +} +ul.user-options li:last-child { + border-bottom: 0; +} + + + +/* Breadcrumbs +------------------------------------------------------------------------------------------------------ */ + +div#breadcrumbs { + color: #666; + border-top: 1px solid #ccc; + border-bottom: 1px solid #ccc; + background: #e6e6e6; +} + + + +/* Messages +------------------------------------------------------------------------------------------------------ */ + +ul.messagelist li { + border-bottom: 1px solid #ccc; + background-color: #e8f2da; +} +ul.messagelist.success li { + background-color: #e8f2da; +} +ul.messagelist.error li { + background-color: #f2e6e6; +} + + + +/* Login Form +------------------------------------------------------------------------------------------------------ */ + +.login .module { + border: 0; + background: #333; +} +.login .module .row { + border-top: 1px solid #444; + border-bottom: 1px solid #222; +} +.login .module label { + color: #eee; +} + + + +/* COMPONENTS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + + + +/* Modules +------------------------------------------------------------------------------------------------------ */ + +.module { + border: 1px solid #bdbdbd; + background: #eee; +} +.rte .module { + background: transparent; +} + + +/* Nested Modules Basics ......................................... */ + +.module .module, +.module fielset.module { + border: 0; +} + + + +/* Groups +------------------------------------------------------------------------------------------------------ */ + +.group.collapse.closed { + border: 2px solid #e0e0e0; +} +.group, +.group.collapse.closed:hover { + border: 2px solid #c7c7c7; +} + + + +/* Elements in Modules & Groups +------------------------------------------------------------------------------------------------------ */ + + +/* 1st Level Borders Top (Dark/Bright) ......................................... */ + +.group h2, +.module h2 { + border-bottom: 1px solid #bdbdbd; + background: #d6d6d6; +} +.group h2 { + border: 1px solid #bdbdbd; +} +.module h2+*, +.module h2+.tools+* { + border-top: 1px solid #fff; +} +.module h2+.module, +.module h2+.tools, +.module h2+.tools+.module { + border-top: 0 !important; +} + + +/* 2nd Level Borders Top (Dark/Bright) ......................................... */ + +.module .module { + border-top: 1px solid #c7c7c7; +} +.module .module>*:first-child { + border-top: 1px solid #eee; +} +#changelist .span-flexible .module .module:first-child { + border-top: 0; +} + +.group h3, +.module h3 { + border-bottom: 1px solid #c7c7c7; + background: #e0e0e0; +} +.module h3+*, +.module h3+.tools+* { + border-top: 1px solid #fff; +} +.module h3+.module, +.module h3+.tools, +.module h3+.tools+.module { + border-top: 0 !important; +} + + +/* 3rd Level Borders Top (Dark/Bright) ......................................... */ + +.group .module .module, +.module .module .module { + border-top: 1px solid #d4d4d4; +} +.group .module .module>*:first-child, +.module .module .module>*:first-child { + border-top: 1px solid #f4f4f4; +} + +.group h4, +.module h4 { + border-bottom: 1px solid #d4d4d4; + background: #e8e8e8; +} +.module h4+*, +.module h4+.tools+* { + border-top: 1px solid #fff; +} +.module h4+.tools { + border-top: 0 !important; +} +.module .description { + border-bottom: 1px solid #d4d4d4; +} + + + +/* Collapsible Structures +------------------------------------------------------------------------------------------------------ */ + +.module.collapse.closed h2.collapse-handler, +.module.collapse.closed h3.collapse-handler, +.module.collapse.closed h4.collapse-handler { + border-bottom: 0; +} + + +/* 1st Level Collapsible-Handler ......................................... */ + +.collapse h2.collapse-handler { + background: #a1d4e5; +} +.collapse h2.collapse-handler:hover, +.collapse.open h2.collapse-handler { + background: #bcdfeb; +} + + +/* 2nd Level Collapsible-Handler ......................................... */ + +.group .collapse h3.collapse-handler, +.module .collapse h3.collapse-handler { + background: #cee9f2; +} +.group .collapse h3.collapse-handler:hover, +.module .collapse h3.collapse-handler:hover, +.group .collapse.open h3.collapse-handler, +.module .collapse.open h3.collapse-handler { + background: #e1f0f5; +} +.module .collapse h3.collapse-handler { + border-top: 1px solid #e1f0f5; +} + + +/* 3rd Level Collapsible-Handler ......................................... */ + +.group .module .collapse h4.collapse-handler, +.module .module .collapse h4.collapse-handler { + border-top: 1px solid #f0f7fa; + background: #e1f0f5; +} +.group .collapse h4.collapse-handler:hover, +.module .collapse h4.collapse-handler:hover, +.group .collapse.open h4.collapse-handler, +.module .collapse.open h4.collapse-handler { + background: #ebf2f5; +} + + + +/* Row +------------------------------------------------------------------------------------------------------ */ + +.row { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} +.row.first, +.row:first-child, +.module input[type=hidden] + .row { + border-top: 0 !important; +} +.row.last, +.row:last-child, +.row:last-of-type, +fieldset.module > .row.last, +fieldset.module > .row:last-child { + border-bottom: 0 !important; +} + + + +/* Cell +------------------------------------------------------------------------------------------------------ */ + +.cell { + border-right: 1px solid #e0e0e0; + border-left: 1px solid #fff; +} + + + +/* Fieldset Cell +------------------------------------------------------------------------------------------------------ */ + +fieldset.module .cell:first-child { + border-left: 0 !important; +} +fieldset.module .cell:last-child, +fieldset.module .cell.last { + border-right: 0 !important; +} +fieldset.module .cell.last + fieldset.module .cell { + border-left: 0 !important; +} + + +/* Tabular Modules +------------------------------------------------------------------------------------------------------ */ + +.module.table { + border: 0; + border-collapse: separate; + border-spacing: 0 2px; + background: transparent; +} +.module.thead, +.module.tfoot { + color: #aaa; + background: transparent; +} +.module.table .tr, +.module.tbody { + background: transparent; +} +.module.table .th, +.module.table .td { + border-left: 1px solid #fff; + border-right: 1px solid #e0e0e0; +} +.module.thead .th:last-of-type, +.module.thead .td:last-of-type, +.module.tfoot .td:last-of-type { + border-right: 0; +} +.module.table .module.thead .th, +.module.table .module.thead .td { + border-top: 0; + background: none; +} +.module.tbody .th, +.module.tbody .td { + border-top: 1px solid #d4d4d4; + border-bottom: 1px solid #d4d4d4; + background: #eee; +} +.module.tbody .th:first-of-type, +.module.tbody .td:first-of-type { + border-left: 1px solid #ccc; +} + + + +/* Add Items +------------------------------------------------------------------------------------------------------ */ + +.module.add-item { + border: 1px solid transparent; + background: #fff; +} + + + +/* Predelete +------------------------------------------------------------------------------------------------------ */ + +.predelete h2, .predelete h2.collapse-handler, +.predelete h3, .predelete h3.collapse-handler, +.predelete h4, .predelete h4.collapse-handler { + background: #f2e6e6 !important; +} +.predelete h2.collapse-handler:hover, +.predelete h3.collapse-handler:hover, +.predelete h4.collapse-handler:hover, +.collapse.open .predelete h2.collapse-handler, +.collapse.open .predelete h3.collapse-handler, +.collapse.open .predelete h4.collapse-handler { + background: #f2e6e6 !important; +} +.predelete, +.predelete .module, +.predelete .th, +.predelete .td { + background: #f2e6e6 !important; +} + + + +/* Selectors +------------------------------------------------------------------------------------------------------ */ + +.selector-available, .selector-chosen { + border: 1px solid #ccc; + background: #ddd; +} +.selector h2, .inline-group .selector h2, +.inline-related fieldset .selector-available h2, .inline-related fieldset .selector-chosen h2 { + border: 0; + border-bottom: 1px solid #d0d0d0; + background: transparent; +} +.selector .selector-filter { + color: #666; + border-top: 1px solid #e4e4e4; + border-bottom: 1px solid #e4e4e4; +} +.selector select[multiple=multiple] { + border-left: 0; + border-top: 1px solid #d0d0d0; + border-bottom: 1px solid #d0d0d0; +} + +a.selector-chooseall, a.selector-clearall { + border-top: 1px solid #e4e4e4; +} + +.selector h2 + select { + border-top: 0; +} + +a.selector-chooseall, a.selector-clearall { + border-top: 1px solid #e4e4e4; +} + + + +/* Link-List, Actions, Feed, Table of Contents +------------------------------------------------------------------------------------------------------ */ + +.module.link-list, +.module.link-list .module, +.module.actions, +.module.actions .module, +.module.feed, +.module.feed .module { + background: #fff; +} +.link-list ul li, +.feed ul li, +.actions ul li, +.table-of-contents ul li { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} +.actions ul li { + color: #999; +} +.actions ul li:first-child, +.link-list ul li:first-child, +.feed ul li:first-child, +.table-of-contents ul li:first-child { + border-top: 0; +} +.actions ul li:last-child, +.link-list ul li:last-child, +.feed ul li:last-child, +.table-of-contents ul li:last-child { + border-bottom: 0; +} +.link-list ul li.selected a, +.table-of-contents ul li.selected a { + color: #444; +} +a.internal:link, a.internal:visited {} +a.internal:hover, a.internal:active, +.actions li.delete-link { + color: #666; +} +a.external:link, a.external:visited { + color: #83c3d9; +} +a.external:hover, a.external:active { + color: #666; +} + + + +/* Module Changelist Filters +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-filters { + color: #666; + border: 1px solid #d4d4d4; +} + + + +/* Module Search & Module Filter +------------------------------------------------------------------------------------------------------ */ + +.module.search, +.module.filter { + border: 0; +} +.module.filter .pulldown-container { + border: 1px solid #fff; +} +.module.filter.open .pulldown-container { + border-color: #ccc; + box-shadow: 0 0 10px #444; -moz-box-shadow: 0 0 10px #444; -webkit-box-shadow: 0 0 10px #444; +} + +.open a.button.toggle-filters, +.open.selected a.button.toggle-filters { + border-color: transparent !important; +} +a.button.toggle-filters:link, a.button.toggle-filters:visited { + color: #309bbf; + border-color: #ddd; +} +.selected a.button.toggle-filters:link, .selected a.button.toggle-filters:visited { + color: #444; + background-color: #e1f0f5; +} +.open a.button.toggle-filters, .selected a.button.toggle-filters, +.selected a.button.toggle-filters:hover, .selected a.button.toggle-filters:active, +a.button.toggle-filters:hover, a.button.toggle-filters:active { + color: #666; + border-color: #ccc; + background-color: #e1f0f5; +} +.selected a.button.toggle-filters:link, .selected a.button.toggle-filters:visited { + color: #666; + border-color: #ddd; + background-color: #e1f0f5; +} +.open a.button.toggle-filters, +.open.selected a.button.toggle-filters, +.selected a.button.toggle-filters:hover, .selected a.button.toggle-filters:active, +a.button.toggle-filters:hover, a.button.toggle-filters:active { + color: #666; + border-color: #ccc; + background-color: #e1f0f5; +} + +.filter-pulldown { + border: 1px solid transparent; + border-top: 0; + background: #e1f0f5; +} +.filter-pulldown label { + color: #999; +} + + + +/* Module Date Hierarchy +------------------------------------------------------------------------------------------------------ */ + +.module.date-hierarchy { + border: 1px solid #d9d9d9; + background: #eee; +} +.module + .module.date-hierarchy .row { + border-top: 1px solid #fff !important; +} +.date-hierarchy a:link, .date-hierarchy a:visited { + color: #59afcc; +} +.date-hierarchy a:hover, .date-hierarchy a:active { + color: #444; +} +.date-hierarchy a.date-hierarchy-back:hover, .date-hierarchy a.date-hierarchy-back:active { + color: #666; +} + + + +/* Pagination +------------------------------------------------------------------------------------------------------ */ + +.module.pagination { + border: 1px solid #d9d9d9; +} +.module .module.pagination { + border: 0; +} +ul.pagination { + border-top: 0 !important; +} +ul.pagination li { + border: 1px solid #fff; +} + +ul.pagination span, +ul.pagination a { + border: 1px solid; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; +} +ul.pagination a:link, .pagination a:visited { + color: #59afcc; + border-color: #d9d9d9; +} +ul.pagination a:hover, .pagination a:active { + color: #444; + border-color: #bdbdbd; + background: #e0e0e0; +} +ul.pagination span { + color: #444; + border-color: #bdbdbd; + background: #e0e0e0; +} +ul.pagination li.separator span { + border-color: transparent; + background: transparent; +} + + + +/* Module Changelist-Results +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-results { + background-color: #eee !important; +} + + + +/* Module Changelist Actions +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-actions { + color: #ccc; + background: #eee; +} +.module.changelist-actions.all-selected, +.module.changelist-actions.all-selected + .module.changelist-results { + background: #ffffe6 !important; +} +.module.changelist-actions ul li { + border: 1px solid #444; +} +.module.changelist-actions ul a, +.module.changelist-actions ul span { + border: 1px solid; +} +.module.changelist-actions ul a:link, .module.changelist-actions ul a:visited { + color: #59afcc; + border-color: #333; + background: #333; +} +.module.changelist-actions ul a:hover, .module.changelist-actions ul a:active { + color: #ccc; + border-color: #333; + background: #555; +} +.module.changelist-actions ul span { + color: #ccc; + border-color: #333; +} +.module.changelist-actions ul span span { + border: 0; +} + + + +/* Module Footer +------------------------------------------------------------------------------------------------------ */ + +.module.footer { + border: 0; + border-top: 1px solid #bdbdbd; + background: #333; +} + + + +/* Submit Row +------------------------------------------------------------------------------------------------------ */ + +.module.submit-row { + border: 0; + background: transparent; +} + + + +/* TOOLS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +ul.tools li { + border-top: 0 !important; + border-bottom: 0 !important; +} + + + +/* H1 + Tools +------------------------------------------------------------------------------------------------------ */ + +h1 + .tools a { + color: #fff; + border-radius: 15px; -moz-border-radius: 15px; -webkit-border-radius: 15px; +} +h1 + .tools a:link, h1 + .tools a:visited { + background: #444; +} +h1 + .tools a:hover, h1 + .tools a:active { + border-color: transparent; + background: #309bbf; +} +h1 + .tools a.add-handler:link, h1 + .tools a.add-handler:visited { + background-color: #444; +} +h1 + .tools a.add-handler:hover, h1 + .tools a.add-handler:active { + background-color: #309bbf; +} + + + +/* FORMS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + + + +/* Errors +------------------------------------------------------------------------------------------------------ */ + +.errornote { + color: #f7f7f7; + background: #bf3030; +} +ul.errorlist { + color: #bf3030; +} +.error input, .error select, .errors input, .errors select { + border: 1px solid #bf3030 !important; +} + + + +/* Labels & Other Typographic Elements in Forms +------------------------------------------------------------------------------------------------------ */ + +label { + color: #444; +} + + + +/* Form Elements +------------------------------------------------------------------------------------------------------ */ + +input, textarea, select, button { + color: #666; + border: 1px solid #bbb; + border-color: #ccc #ddd #ddd #ccc; + outline: 0; +} +input, textarea, select { + box-shadow: 0 1px 3px #eaeaea inset; -moz-box-shadow: 0 1px 3px #eaeaea inset; -webkit-box-shadow: 0 1px 3px #eaeaea inset; +} + +*:focus, input:focus, textarea:focus, select:focus { + border-color: #999 #bbb #bbb #999; +} +select:focus * { + border: 0 !important; + outline: 0 !important; +} + + +/* Searchbar ................................................... */ + +form#changelist-search { + border: 1px solid #fff; + border-radius: 15px; -moz-border-radius: 15px; -webkit-border-radius: 15px; +} +input#searchbar { + border-radius: 14px; -moz-border-radius: 14px; -webkit-border-radius: 14px; +} + + +/* Select ................................................... */ + +option, +select[multiple=multiple] option { + border-bottom: 1px dotted #ddd !important; +} +option:last-child { + border-bottom: 0; +} + + +/* Autocomplete Fields ................................................... */ + +.vAutocompleteSearchField, +.vM2MAutocompleteSearchField { + background: #eaf5f8; +} + + +/* Read Only ................................................... */ + +input[readonly], +textarea[readonly], +select[readonly] { + background: #f4f4f4; +} + + + +/* BUTTONS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +input[type=submit], input[type=reset], input[type=button], button { + color: #fff; + border: 0; + background: #acd7e5; +} + + +/* Button Containers ................................................... */ + +.submit-row>*[class*="-container"] { + box-shadow: 0 0 5px #666; -moz-box-shadow: 0 0 5px #666; -webkit-box-shadow: 0 0 5px #666; + background: #d6d6d6; +} +.submit-row>*[class*="-container"]:hover { + box-shadow: 0 0 5px #777; -moz-box-shadow: 0 0 5px #777; -webkit-box-shadow: 0 0 5px #777; + background: #d6d6d6; +} +.submit-row>*[class*="cancel-button-container"] { + box-shadow: 0 0 5px #aaa; -moz-box-shadow: 0 0 5px #aaa; -webkit-box-shadow: 0 0 5px #aaa; +} +.footer .submit-row>*[class*="-container"], +.footer .submit-row>*[class*="cancel-button-container"] { + border: 1px solid #666; + box-shadow: 0 0 5px #666; -moz-box-shadow: 0 0 5px #666; -webkit-box-shadow: 0 0 5px #666; + background: #666; +} +.submit-row>*[class*="cancel-button-container"] { + box-shadow: 0 0 5px #aaa; -moz-box-shadow: 0 0 5px #aaa; -webkit-box-shadow: 0 0 5px #aaa; +} +.footer .submit-row>*[class*="-container"]:hover, +.footer .submit-row>*[class*="cancel-button-container"]:hover { + border: 1px solid #777; + box-shadow: 0 0 5px #777; -moz-box-shadow: 0 0 5px #777; -webkit-box-shadow: 0 0 5px #777; + background: #777; +} + + + +/* Buttons & Buttonlike Links +------------------------------------------------------------------------------------------------------ */ + +.submit-row input[type=submit] { + border: 1px solid #267c99; +} + +input[type=submit], +#bookmark-add-cancel, +.submit-row a.delete-link:link, .submit-row a.delete-link:visited, +.submit-row a.cancel-link:link, .submit-row a.cancel-link:visited, +.submit-row input[type=button] { + box-shadow: none !important; -moz-box-shadow: none !important; -webkit-box-shadow: none !important; +} + +.submit-row a.delete-link:link, .submit-row a.delete-link:visited { + color: #fff; + border: 1px solid #992626; + background: #bf3030; +} +#bookmark-add-cancel, +.submit-row a.cancel-link:link, .submit-row a.cancel-link:visited, +.submit-row input.cancel:hover { + color: #fff; + border: 1px solid #444; + background: #666; +} + +input[type=submit] { + background: #309bbf; +} +input[type=submit]:hover, +#bookmark-add-cancel:hover, +.submit-row a.delete-link:hover, .submit-row a.delete-link:active, +.submit-row a.cancel-link:hover, .submit-row a.cancel-link:active, +.submit-row input.cancel { + color: #444; + border: 1px solid #aaa; + background: #d6d6d6; +} +.footer input[type=submit]:hover, +.footer #bookmark-add-cancel:hover, +.footer .submit-row a.delete-link:hover, .footer .submit-row a.delete-link:active, +.footer .submit-row a.cancel-link:hover, .footer .submit-row a.cancel-link:active { + border: 1px solid #666; +} + +button { + background: #309bbf; +} +button:hover { + background: #666; +} + +button.fb_show, +button.ui-gAutocomplete-browse, +button.ui-gFacelist-browse, +button.ui-gAutoSlugField-toggle, +button.ui-datepicker-trigger, +button.ui-timepicker-trigger, +.tinyMCE .browse span { + border: 1px solid #ccc; + background-color: #e1f0f5; +} +button.fb_show:hover, +button.ui-gAutocomplete-browse:hover, +button.ui-gFacelist-browse:hover, +button.ui-gAutoSlugField-toggle:hover, +button.ui-datepicker-trigger:hover, +button.ui-timepicker-trigger:hover, +.tinyMCE .browse span:hover { + background-color: #e1e1e1; +} +button.fb_show[disabled], +button.ui-gAutocomplete-browse[disabled], +button.ui-gFacelist-browse[disabled], +button.ui-gAutoSlugField-toggle[disabled], +button.ui-datepicker-trigger[disabled], +button.ui-timepicker-trigger[disabled], +input[disabled] + a { + background-color: transparent !important; + opacity: 0.3; + cursor: auto !important; +} + + +/* Search Button ......................................... */ + +button.search { + border-color: transparent !important; + background-color: transparent; +} + + + +/* Links as Buttons +------------------------------------------------------------------------------------------------------ */ + +a.button, +.datecrumbs a, +.datecrumbs span { + border: 1px solid #e0e0e0; +} + + +/* Drop-Down Button ......................................... */ + +a.button.drop-down[class*="selected"] { + color: #444 !important; + border-color: #b0b0b0; + border-bottom-width: 0 !important; + box-shadow: 0 -2px 3px #bbb, -2px -2px 3px #bbb, 2px -2px 3px #bbb; + -moz-box-shadow: 0 -2px 3px #bbb, -2px -2px 3px #bbb, 2px -2px 3px #bbb; + -webkit-box-shadow: 0 -2px 3px #bbb, -2px -2px 3px #bbb, 2px -2px 3px #bbb; +} +a.button.drop-down:link, a.button.drop-down:visited { + color: #309bbf; + background-color: #fff; +} +a.button.drop-down[class*="selected"], +a.button.drop-down:hover, a.button.drop-down:active { + color: #666; + background-color: #e1f0f5; +} + + +/* Filebrowser & Related Lookup ......................................... */ + +a.fb_show, +a.related-lookup { + border: 1px solid #ccc; +} +a.fb_show:link, a.fb_show:visited, +a.related-lookup:link, a.related-lookup:visited { + background-color: #e1f0f5; +} +a.fb_show:hover, a.fb_show:active, +a.related-lookup:hover, a.related-lookup:active { + background-color: #e1e1e1; +} +a.related-lookup + strong { + color: #555; +} + + +/* Buttons & Button Links in Errors ......................................... */ + +.error input + button, +.error .vDateField + button, +.error .vTimeField + button, +.error input + a.fb_show, +.error input + a.related-lookup, +.error input + a.add-another, +.errors input + button, +.errors .vDateField + button, +.errors .vTimeField + button, +.errors input + a.fb_show, +.errors input + a.related-lookup, +.errors input + a.add-another { + border-color: #bf3030; +} + + +/* Focused Buttons & Button Links ......................................... */ + +input:focus + button, +.vDateField:focus + span a, +.vTimeField:focus + span a, +input:focus + a.fb_show, +input:focus + a.related-lookup, +input:focus + a.add-another { + border-color: #bbb; + border-left-color: #ccc; +} + + + +/* TABLES +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +tr.alt th, tr.alt td { + background: #f4f4f4; +} +.row1 th, .row1 td { + background: #f4f4f4; +} +.row2 th, .row2 td { + background: #fff; +} +.selected th, .selected td { + background: #ffd; +} + + +/* Thead ................................................... */ + +thead th, +tfoot td { + color: #aaa; + border-left: 1px solid #d4d4d4; + border-bottom: 1px solid #d4d4d4; + background: #eee; +} +thead th.sorted { + border-bottom: 1px solid #ccc; + background: #e0e0e0; +} + +thead th a:link, thead th a:visited { + color: #59afcc; + border-top: 1px solid #fff; +} +thead th a:hover, thead th a:active, +thead th.sorted a { + color: #444; +} +thead th.sorted a { + border-top: 1px solid #ececec; +} + + +/* Tbody ................................................... */ + +tbody th, tbody td { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} + +tfoot td { + border-bottom: 0; + border-top: 1px solid #d4d4d4; +} + +thead th:first-child, +tfoot td:first-child { + border-left: 0; +} + +fieldset table { + border-right: 1px solid #eee; +} + +tr.row-label td { + border-bottom: 0; + color: #666; +} + + + +/* Changelist Table +------------------------------------------------------------------------------------------------------ */ + +#changelist table { + border: 1px solid #bdbdbd; +} +#changelist tbody th, #changelist tbody td { + border: 0; + border-top: 1px solid #e8e8e8; + border-left: 1px solid #e0e0e0; +} +#changelist tbody tr:first-child th, #changelist tbody tr:first-child td { + border-top: 1px solid #fff; +} +#changelist tbody tr th:first-child, #changelist tbody tr td:first-child { + border-left: 0; +} +#changelist thead *[style^="display: none"] + *, +#changelist tbody tr *[style^="display: none"] + * { + border-left: 0; +} + + + +/* Overrides +------------------------------------------------------------------------------------------------------ */ + +tbody th:first-child, tbody td:first-child { + border-left: 0; +} +tbody tr:last-child td, tbody tr:last-child th { + border-bottom: 0; +} diff --git a/assets/css/grappelli-skin-default.css b/assets/css/grappelli-skin-default.css new file mode 100644 index 0000000..2cc8f07 --- /dev/null +++ b/assets/css/grappelli-skin-default.css @@ -0,0 +1,1657 @@ + + + +/* TYPOGRAPHY +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + + + +/* Paragraphs +------------------------------------------------------------------------------------------------------ */ + +.module p.help, +p.help { + color: #999; +} + +.fb_show + p.help a { + border: 1px solid #309bbf; + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; +} +.fb_show + p.help a:link, .fb_show + p.help a:visited { + border: 1px solid #309bbf; +} +.fb_show + p.help a:hover, .fb_show + p.help a:active { + border: 1px solid #444; +} + + + +/* Links +------------------------------------------------------------------------------------------------------ */ + +a:link, a:visited { + color: #309bbf; +} +a:hover, a:active, a.selected { + color: #444; +} + +.dashboard h2 a:link, .dashboard h2 a:visited, +.dashboard h3 a:link, .dashboard h3 a:visited { + color: #444; +} +.dashboard h2 a:hover, .dashboard h2 a:active, +.dashboard h3 a:hover, .dashboard h3 a:active { + color: #309bbf; +} + +#header a:link, #header a:visited { + color: #59AFCC; +} +#header a:hover, #header a:active { + color: #444; +} + + + +/* Blockquote, Pre, Code +------------------------------------------------------------------------------------------------------ */ + +blockquote { + color: #777; + border-left: 5px solid #ddd; +} + +code, pre { + color: #666; + background: inherit; +} + +pre.literal-block { + background: #eee; +} + +code strong { + color: #930; +} + +hr { + color: #eee; + border: 0; + background-color: #eee; +} + + + +/* RTE (Rich Text Edited) +------------------------------------------------------------------------------------------------------ */ + +.rte h3 { + border-top: 1px solid #d4d4d4; + border-bottom: 1px solid #d4d4d4; +} +.rte .group h3 { + border-top: 0; +} +.rte h3:last-child, +.rte h4:last-child { + border-bottom: 0; + border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} +.rte td { + border-left: 1px solid #f4f4f4; +} +.rte td:first-of-type { + border-left: 0; +} +.delete-confirmation ul.rte>li { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} +.delete-confirmation ul.rte>li:first-child { + border-top: 0; +} +.delete-confirmation ul.rte>li:last-child { + border-bottom: 0; +} +.delete-confirmation ul.rte>li>ul>li { + border-top: 1px dashed #e0e0e0; +} +.rte blockquote table { + border: 1px solid #d4d4d4; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} + + + +/* Other Styles +------------------------------------------------------------------------------------------------------ */ + +.warning { + color: #bf3030; +} +.quiet { + color: #999; +} + + + +/* STRUCTURES +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +body { + color: #444; + background: #fff; +} + + + +/* Header +------------------------------------------------------------------------------------------------------ */ + +#header { + color: #eee; + background: #333; + background: -moz-linear-gradient(top, #444, #333); + background: -webkit-gradient(linear, left top, left bottom, from(#444), to(#333)); +} +#header a:hover, #header a:active { + color: #ddd; +} + + + +/* Branding, Bookmarks & User-Tools +------------------------------------------------------------------------------------------------------ */ + +.branding { + border-left: 1px solid #343434; + background-color: #262626; +} +.admin-title { + border-left: 1px solid #404040; + border-right: 1px solid #303030; +} + + +/* User Tools ................................................... */ + +#user-tools { + border-left: 1px solid #303030; +} +#user-tools>li { + border-left: 1px solid #404040; + border-right: 1px solid #303030; +} +li.user-options-container.open a.user-options-handler { + color: #eee !important; +} +li.user-options-container.open ul.user-options { + border-top: 1px solid #262626; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + background: #333; +} +ul.user-options li { + border-top: 1px solid #404040; + border-bottom: 1px solid #292929; +} +ul.user-options li:last-child { + border-bottom: 0; +} + + + +/* Breadcrumbs +------------------------------------------------------------------------------------------------------ */ + +div#breadcrumbs { + color: #666; + border-top: 1px solid #ccc; + border-bottom: 1px solid #ccc; + background: #e6e6e6; +} + + + +/* Messages +------------------------------------------------------------------------------------------------------ */ + +ul.messagelist li { + border-bottom: 1px solid #ccc; + background-color: #e8f2da; +} +ul.messagelist.success li { + background-color: #e8f2da; +} +ul.messagelist.error li { + background-color: #f2e6e6; +} + + + +/* Login Form +------------------------------------------------------------------------------------------------------ */ + +.login .module { + border: 0; + border-top-left-radius: 0; -moz-border-radius-topleft: 0; -webkit-border-top-left-radius: 0; + border-top-right-radius: 0; -moz-border-radius-topright: 0; -webkit-border-top-right-radius: 0; + background: #333; +} +.login .module .row { + border-top: 1px solid #444; + border-bottom: 1px solid #222; +} +.login .module label { + color: #eee; +} + + + +/* COMPONENTS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + + + +/* Modules +------------------------------------------------------------------------------------------------------ */ + +.module { + border: 1px solid #bdbdbd; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; + background: #eee; +} +.rte .module { + background: transparent; +} + + +/* Nested Modules Basics ......................................... */ + +.module .module, +.module fielset.module { + border: 0; + border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0; +} +.module .module:first-child { + border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} + + + +/* Groups +------------------------------------------------------------------------------------------------------ */ + +.group { + border-radius: 7px; -moz-border-radius: 7px; -webkit-border-radius: 7px; +} + +.group.collapse.closed { + border: 2px solid #e0e0e0; +} +.group, +.group.collapse.closed:hover { + border: 2px solid #c7c7c7; +} + + + +/* Elements in Modules & Groups +------------------------------------------------------------------------------------------------------ */ + + +/* 1st Level Borders Top (Dark/Bright) ......................................... */ + +.group h2, +.module h2 { + border-bottom: 1px solid #bdbdbd; + border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; + background: #d6d6d6; + background: -moz-linear-gradient(top, #e3e3e3, #d6d6d6); + background: -webkit-gradient(linear, left top, left bottom, from(#e3e3e3), to(#d6d6d6)); +} +.group h2 { + border: 1px solid #bdbdbd; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} +.module h2+*, +.module h2+.tools+* { + border-top: 1px solid #fff; +} +.module h2+.module, +.module h2+.tools, +.module h2+.tools+.module { + border-top: 0 !important; +} + + +/* 2nd Level Borders Top (Dark/Bright) ......................................... */ + +.module .module { + border-top: 1px solid #c7c7c7; +} +.module .module>*:first-child { + border-top: 1px solid #eee; +} +#changelist .span-flexible .module .module:first-child { + border-top: 0; +} + +.group h3, +.module h3 { + border-bottom: 1px solid #c7c7c7; + background: #e0e0e0; + background: -moz-linear-gradient(top, #e9e9e9, #e0e0e0); + background: -webkit-gradient(linear, left top, left bottom, from(#e9e9e9), to(#e0e0e0)); +} +.group h3 { + border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} +.module h3+*, +.module h3+.tools+* { + border-top: 1px solid #fff; +} +.module h3+.module, +.module h3+.tools, +.module h3+.tools+.module { + border-top: 0 !important; +} + + +/* 3rd Level Borders Top (Dark/Bright) ......................................... */ + +.group .module .module, +.module .module .module { + border-top: 1px solid #d4d4d4; +} +.group .module .module>*:first-child, +.module .module .module>*:first-child { + border-top: 1px solid #f4f4f4; +} + +.group h4, +.module h4 { + border-bottom: 1px solid #d4d4d4; + background: #e8e8e8; + background: -moz-linear-gradient(top, #ededed, #e8e8e8); + background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#e8e8e8)); +} +.module h4+*, +.module h4+.tools+* { + border-top: 1px solid #fff; +} +.module h4+.tools { + border-top: 0 !important; +} +.module .description { + border-bottom: 1px solid #d4d4d4; +} + + + +/* Modules & Groups Overrides +------------------------------------------------------------------------------------------------------ */ + +.module .module:last-of-type { + border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} + + + +/* Collapsible Structures +------------------------------------------------------------------------------------------------------ */ + +.group .module.collapse.closed h3.collapse-handler, +.group .module.collapse.closed h4.collapse-handler, +.collapse.closed h2.collapse-handler, +.module .module.collapse.closed.last .collapse-handler, +.module .module.collapse.closed:last-child .collapse-handler { + border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} +.module.collapse.closed h2.collapse-handler, +.module.collapse.closed h3.collapse-handler, +.module.collapse.closed h4.collapse-handler { + border-bottom: 0; +} + + +/* 1st Level Collapsible-Handler ......................................... */ + +.collapse h2.collapse-handler { + background: #a1d4e5; + background: -moz-linear-gradient(top, #bcdfeb, #a1d4e5); + background: -webkit-gradient(linear, left top, left bottom, from(#bcdfeb), to(#a1d4e5)); +} +.collapse h2.collapse-handler:hover, +.collapse.open h2.collapse-handler { + background: #bcdfeb; + background: -moz-linear-gradient(top, #a1d4e5, #bcdfeb); + background: -webkit-gradient(linear, left top, left bottom, from(#a1d4e5), to(#bcdfeb)); +} + + +/* 2nd Level Collapsible-Handler ......................................... */ + +.group .collapse h3.collapse-handler, +.module .collapse h3.collapse-handler { + background: #cee9f2; + background: -moz-linear-gradient(top, #e1f0f5, #cee9f2); + background: -webkit-gradient(linear, left top, left bottom, from(#e1f0f5), to(#cee9f2)); +} +.group .collapse h3.collapse-handler:hover, +.module .collapse h3.collapse-handler:hover, +.group .collapse.open h3.collapse-handler, +.module .collapse.open h3.collapse-handler { + background: #e1f0f5; + background: -moz-linear-gradient(top, #cee9f2, #e1f0f5); + background: -webkit-gradient(linear, left top, left bottom, from(#cee9f2), to(#e1f0f5)); +} +.module .collapse h3.collapse-handler { + border-top: 1px solid #e1f0f5; +} + + +/* 3rd Level Collapsible-Handler ......................................... */ + +.group .module .collapse h4.collapse-handler, +.module .module .collapse h4.collapse-handler { + border-top: 1px solid #f0f7fa; + background: #e1f0f5; + background: -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background: -webkit-gradient(linear, left top, left bottom, from(#ebf2f5), to(#e1f0f5)); +} +.group .collapse h4.collapse-handler:hover, +.module .collapse h4.collapse-handler:hover, +.group .collapse.open h4.collapse-handler, +.module .collapse.open h4.collapse-handler { + background: #ebf2f5; + background: -moz-linear-gradient(top, #e1f0f5, #ebf2f5); + background: -webkit-gradient(linear, left top, left bottom, from(#e1f0f5), to(#ebf2f5)); +} + + + +/* Row +------------------------------------------------------------------------------------------------------ */ + +.row { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} +.row.first, +.row:first-child, +.module input[type=hidden] + .row { + border-top: 0 !important; + border-top-left-radius: 5px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; +} +.row.last, +.row:last-child, +.row:last-of-type, +fieldset.module > .row.last, +fieldset.module > .row:last-child { + border-bottom: 0 !important; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; +} + + + +/* Cell +------------------------------------------------------------------------------------------------------ */ + +.cell { + border-right: 1px solid #e0e0e0; + border-left: 1px solid #fff; +} + + + +/* Fieldset Cell +------------------------------------------------------------------------------------------------------ */ + +fieldset.module .cell:first-child { + border-left: 0 !important; +} +fieldset.module .cell:last-child, +fieldset.module .cell.last { + border-right: 0 !important; +} +fieldset.module .cell.last + fieldset.module .cell { + border-left: 0 !important; +} + + +/* Tabular Modules +------------------------------------------------------------------------------------------------------ */ + +.module.table { + border: 0; + border-collapse: separate; + border-spacing: 0 2px; + background: transparent; +} +.module.thead, +.module.tfoot { + color: #aaa; + background: transparent; +} +.module.table .tr, +.module.tbody { + background: transparent; +} +.module.table .th, +.module.table .td { + border-left: 1px solid #fff; + border-right: 1px solid #e0e0e0; +} +.module.thead .th:last-of-type, +.module.thead .td:last-of-type, +.module.tfoot .td:last-of-type { + border-right: 0; +} +.module.table .module.thead .th, +.module.table .module.thead .td { + border-top: 0; + background: none; +} +.module.tbody .th, +.module.tbody .td { + border-top: 1px solid #d4d4d4; + border-bottom: 1px solid #d4d4d4; + background: #eee; +} +.module.tbody .th:first-of-type, +.module.tbody .td:first-of-type { + border-left: 1px solid #ccc; + border-top-left-radius: 5px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; + border-top-right-radius: 0; -moz-border-radius-topright: 0; -webkit-border-top-right-radius: 0; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; +} +.module.tbody .th:last-of-type, +.module.tbody .td:last-of-type { + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; +} + + + +/* Add Items +------------------------------------------------------------------------------------------------------ */ + +.module.add-item { + border: 1px solid transparent; + background: #fff; +} + + + +/* Predelete +------------------------------------------------------------------------------------------------------ */ + +.predelete h2, .predelete h2.collapse-handler, +.predelete h3, .predelete h3.collapse-handler, +.predelete h4, .predelete h4.collapse-handler { + background: #f2e6e6 !important; + background: -moz-linear-gradient(top, #fff2f2, #f2e6e6) !important; + background: -webkit-gradient(linear, left top, left bottom, from(#fff2f2), to(#f2e6e6)) !important; +} +.predelete h2.collapse-handler:hover, +.predelete h3.collapse-handler:hover, +.predelete h4.collapse-handler:hover, +.collapse.open .predelete h2.collapse-handler, +.collapse.open .predelete h3.collapse-handler, +.collapse.open .predelete h4.collapse-handler { + background: #f2e6e6 !important; + background: -moz-linear-gradient(top, #f2e6e6, #fff2f2) !important; + background: -webkit-gradient(linear, left top, left bottom, from(#fff2f2), to(#f2e6e6)) !important; +} +.predelete, +.predelete .module, +.predelete .th, +.predelete .td { + background: #f2e6e6 !important; +} + + + +/* Selectors +------------------------------------------------------------------------------------------------------ */ + +.selector-available, .selector-chosen { + border: 1px solid #ccc; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; + background: #ddd; +} +.selector h2, .inline-group .selector h2, +.inline-related fieldset .selector-available h2, .inline-related fieldset .selector-chosen h2 { + border: 0; + border-bottom: 1px solid #d0d0d0; + background: transparent; +} +.selector .selector-filter { + color: #666; + border-top: 1px solid #e4e4e4; + border-bottom: 1px solid #e4e4e4; + border-top-left-radius: 5px;-moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; +} +.selector h2 + .selector-filter { + border-radius-topleft: 0; -moz-border-radius-topleft: 0; -webkit-border-top-left-radius: 0; + border-radius-topright: 0; -moz-border-radius-topright: 0; -webkit-border-top-right-radius: 0; +} +.selector select[multiple=multiple] { + border-left: 0; + border-top: 1px solid #d0d0d0; + border-bottom: 1px solid #d0d0d0; + border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0; +} + +a.selector-chooseall, a.selector-clearall { + border-top: 1px solid #e4e4e4; +} + +.selector h2 + select { + border-top: 0; +} + +a.selector-chooseall, a.selector-clearall { + border-top: 1px solid #e4e4e4; +} + + + +/* Link-List, Actions, Feed, Table of Contents +------------------------------------------------------------------------------------------------------ */ + +.module.link-list, +.module.link-list .module, +.module.actions, +.module.actions .module, +.module.feed, +.module.feed .module { + background: #fff; +} +.link-list ul li, +.feed ul li, +.actions ul li, +.table-of-contents ul li { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} +.actions ul li { + color: #999; +} +.actions ul li:first-child, +.link-list ul li:first-child, +.feed ul li:first-child, +.table-of-contents ul li:first-child { + border-top: 0; +} +.actions ul li:last-child, +.link-list ul li:last-child, +.feed ul li:last-child, +.table-of-contents ul li:last-child { + border-bottom: 0; +} +.link-list ul li.selected a, +.table-of-contents ul li.selected a { + color: #444; +} +a.internal:link, a.internal:visited {} +a.internal:hover, a.internal:active, +.actions li.delete-link { + color: #666; +} +a.external:link, a.external:visited { + color: #83c3d9; +} +a.external:hover, a.external:active { + color: #666; +} + + + +/* Module Changelist Filters +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-filters { + color: #666; + border: 1px solid #d4d4d4; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; +} +.module.changelist-filters:last-of-type, +body.filebrowser .module.changelist-filters { + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; +} + + + +/* Module Search & Module Filter +------------------------------------------------------------------------------------------------------ */ + +.module.search, +.module.filter { + border: 0; + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; +} +.module.filter .pulldown-container { + border: 1px solid #fff; + border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px; +} +.module.filter.open .pulldown-container { + border-color: #ccc; + box-shadow: 0 0 10px #444; -moz-box-shadow: 0 0 10px #444; -webkit-box-shadow: 0 0 10px #444; +} + +.open a.button.toggle-filters, +.open.selected a.button.toggle-filters { + border-color: transparent !important; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0 !important; -webkit-border-bottom-left-radius: 0; + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0 !important; -webkit-border-bottom-right-radius: 0; +} +a.button.toggle-filters:link, a.button.toggle-filters:visited { + color: #309bbf; + border-color: #ddd; +} +.selected a.button.toggle-filters:link, .selected a.button.toggle-filters:visited { + color: #444; + background-color: #e1f0f5; + background: #e1f0f5 url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -moz-linear-gradient(top, #eee, #e0e0e0); + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -webkit-gradient(linear, left top, left bottom, from(#eee), to(#e0e0e0)); +} +.open a.button.toggle-filters, .selected a.button.toggle-filters, +.selected a.button.toggle-filters:hover, .selected a.button.toggle-filters:active, +a.button.toggle-filters:hover, a.button.toggle-filters:active { + color: #666; + border-color: #ccc; + background-color: #e1f0f5; + background: #e1f0f5 url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -moz-linear-gradient(top, #f0f7fa, #e1f0f5); + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -webkit-gradient(linear, left top, left bottom, from(#f0f7fa), to(#e1f0f5)); +} +.selected a.button.toggle-filters:link, .selected a.button.toggle-filters:visited { + color: #666; + border-color: #ddd; + background-color: #e1f0f5; + background: #e1f0f5 url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -moz-linear-gradient(top, #f0f7fa, #e1f0f5); + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -webkit-gradient(linear, left top, left bottom, from(#f0f7fa), to(#e1f0f5)); +} +.open a.button.toggle-filters, +.open.selected a.button.toggle-filters, +.selected a.button.toggle-filters:hover, .selected a.button.toggle-filters:active, +a.button.toggle-filters:hover, a.button.toggle-filters:active { + color: #666; + border-color: #ccc; + background-color: #e1f0f5; + background: #e1f0f5 url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat; + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -moz-linear-gradient(top, #f0f7fa, #e1f0f5); + background: url('../img/icons/icon-dropdown-hover.png') 100% 3px no-repeat, -webkit-gradient(linear, left top, left bottom, from(#f0f7fa), to(#e1f0f5)); +} + +.filter-pulldown { + border: 1px solid transparent; + border-top: 0; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + background: #e1f0f5; +} +.filter-pulldown label { + color: #999; +} + + + +/* Module Date Hierarchy +------------------------------------------------------------------------------------------------------ */ + +.module.date-hierarchy { + border: 1px solid #d9d9d9; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + background: #eee; + background: -moz-linear-gradient(top, #eee, #e7e7e7); + background: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#e7e7e7)); +} +.module + .module.date-hierarchy { + border-top-left-radius: 0; -moz-border-radius-topleft: 0; -webkit-border-top-left-radius: 0; + border-top-right-radius: 0; -moz-border-radius-topright: 0; -webkit-border-top-right-radius: 0; +} +.module + .module.date-hierarchy .row { + border-top: 1px solid #fff !important; + border-top-left-radius: 0; -moz-border-radius-topleft: 0; -webkit-border-top-left-radius: 0; + border-top-right-radius: 0; -moz-border-radius-topright: 0; -webkit-border-top-right-radius: 0; +} +.date-hierarchy a:link, .date-hierarchy a:visited { + color: #59afcc; +} +.date-hierarchy a:hover, .date-hierarchy a:active { + color: #444; +} +.date-hierarchy a.date-hierarchy-back:hover, .date-hierarchy a.date-hierarchy-back:active { + color: #666; +} + + + +/* Pagination +------------------------------------------------------------------------------------------------------ */ + +.module.pagination { + border: 1px solid #d9d9d9; +} +.module .module.pagination { + border: 0; +} +ul.pagination { + border-top: 0 !important; +} +ul.pagination li { + border: 1px solid #fff; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} + +ul.pagination span, +ul.pagination a { + border: 1px solid; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; +} +ul.pagination a:link, .pagination a:visited { + color: #59afcc; + border-color: #d9d9d9; +} +ul.pagination a:hover, .pagination a:active { + color: #444; + border-color: #bdbdbd; + background: #e0e0e0; + background: -moz-linear-gradient(top, #eee, #e0e0e0); + background: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#e0e0e0)); +} +ul.pagination span { + color: #444; + border-color: #bdbdbd; + background: #e0e0e0; + background: -moz-linear-gradient(top, #eee, #e0e0e0); + background: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#e0e0e0)); +} +ul.pagination li.separator span { + border-color: transparent; + background: transparent; +} + + + +/* Module Changelist-Results +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-results { + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; + background-color: #eee !important; +} + + + +/* Module Changelist Actions +------------------------------------------------------------------------------------------------------ */ + +.module.changelist-actions { + color: #ccc; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; + background: #eee; + background: -moz-linear-gradient(top, #eee, #e0e0e0); + background: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#e0e0e0)); +} +.module.changelist-actions.all-selected, +.module.changelist-actions.all-selected + .module.changelist-results { + background: #ffffe6 !important; +} +.module.changelist-actions ul li { + border: 1px solid #444; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} +.module.changelist-actions ul a, +.module.changelist-actions ul span { + border: 1px solid; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} +.module.changelist-actions ul a:link, .module.changelist-actions ul a:visited { + color: #59afcc; + border-color: #333; + background: #333; + background: -moz-linear-gradient(top, #444, #333); + background: -webkit-gradient(linear, left top, left bottom, from(#444), to(#333)); +} +.module.changelist-actions ul a:hover, .module.changelist-actions ul a:active { + color: #ccc; + border-color: #333; + background: #555; + background: -moz-linear-gradient(top, #666, #555); + background: -webkit-gradient(linear, left top, left bottom, from(#666), to(#555)); +} +.module.changelist-actions ul span { + color: #ccc; + border-color: #333; +} +.module.changelist-actions ul span span { + border: 0; +} + + + +/* Module Footer +------------------------------------------------------------------------------------------------------ */ + +.module.footer { + border: 0; + border-top: 1px solid #bdbdbd; + border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0; + background: #333; + background: -moz-linear-gradient(top, #444, #333); + background: -webkit-gradient(linear, left top, left bottom, from(#444), to(#333)); +} + + + +/* Submit Row +------------------------------------------------------------------------------------------------------ */ + +.module.submit-row { + border: 0; + background: transparent; +} + + + +/* TOOLS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +ul.tools li { + border-top: 0 !important; + border-bottom: 0 !important; +} + + + +/* H1 + Tools +------------------------------------------------------------------------------------------------------ */ + +h1 + .tools a { + color: #fff; + border-radius: 15px; -moz-border-radius: 15px; -webkit-border-radius: 15px; +} +h1 + .tools a:link, h1 + .tools a:visited { + background: #444; + background: -moz-linear-gradient(top, #666, #444); + background: -webkit-gradient(linear, left top, left bottom, from(#666), to(#444)); +} +h1 + .tools a:hover, h1 + .tools a:active { + border-color: transparent; + background: #309bbf; + background: -moz-linear-gradient(top, #39bae5, #309bbf); + background: -webkit-gradient(linear, left top, left bottom, from(#39bae5), to(#309bbf)); +} +h1 + .tools a.add-handler:link, h1 + .tools a.add-handler:visited { + background-color: #444; + background: #444 0 50% no-repeat scroll; + background-image: url('../img/icons/icon-object-tools-add-handler.png'), -moz-linear-gradient(top, #666, #444); + background-image: url('../img/icons/icon-object-tools-add-handler.png'), -webkit-gradient(linear, left top, left bottom, from(#666), to(#444)); +} +h1 + .tools a.add-handler:hover, h1 + .tools a.add-handler:active { + background-color: #309bbf; + background: #309bbf 0 50% no-repeat scroll; + background-image: url('../img/icons/icon-object-tools-add-handler.png'), -moz-linear-gradient(top, #39bae5, #309bbf); + background-image: url('../img/icons/icon-object-tools-add-handler.png'), -webkit-gradient(linear, left top, left bottom, from(#39bae5), to(#309bbf)); +} + + +/* 1st Level H2 + Tools ......................................... */ + +.group h2+.tools, +.module h2+.tools { + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} + +.module h2+.tools li { + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} +.group h2+.tools, +.module.collapse.closed h2+.tools { + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} + + +/* 2nd Level H3 + Tools ......................................... */ + +.group .module.collapse.closed h3+.tools, +.group .module.collapse.closed h3+.tools li, +.module.collapse.closed:last-child h3+.tools, +.module.collapse.closed:last-child h3+.tools li { + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} +.group h3+.tools, +.group h3+.tools li { + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} + + +/* 3rd Level H4 + Tools ......................................... */ + +.module.collapse.closed:last-child h4+.tools, +.module.collapse.closed:last-child h4+.tools li { + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} + + + +/* FORMS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + + + +/* Errors +------------------------------------------------------------------------------------------------------ */ + +.errornote { + color: #f7f7f7; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; + background: #bf3030; +} +/* little fix to accomodate the top aligned login form .. */ +.errornote.login-errors { + border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px; +} +ul.errorlist { + color: #bf3030; +} +.error input, .error select, .errors input, .errors select { + border: 1px solid #bf3030 !important; +} + + + +/* Labels & Other Typographic Elements in Forms +------------------------------------------------------------------------------------------------------ */ + +label { + color: #444; +} + + + +/* Form Elements +------------------------------------------------------------------------------------------------------ */ + +input, textarea, select, button { + color: #666; + border: 1px solid #bbb; + border-color: #ccc #ddd #ddd #ccc; + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; + outline: 0; +} +input, textarea, select { + box-shadow: 0 1px 3px #eaeaea inset; -moz-box-shadow: 0 1px 3px #eaeaea inset; -webkit-box-shadow: 0 1px 3px #eaeaea inset; +} + +*:focus, input:focus, textarea:focus, select:focus { + border-color: #999 #bbb #bbb #999; +} +select:focus * { + border: 0 !important; + outline: 0 !important; +} + + +/* Searchbar ................................................... */ + +form#changelist-search { + border: 1px solid #fff; + border-radius: 15px; -moz-border-radius: 15px; -webkit-border-radius: 15px; +} +input#searchbar { + border-radius: 14px; -moz-border-radius: 14px; -webkit-border-radius: 14px; +} + + +/* Select ................................................... */ + +option, +select[multiple=multiple] option { + border-bottom: 1px dotted #ddd !important; +} +option:last-child { + border-bottom: 0; +} + + +/* Autocomplete Fields ................................................... */ + +.vAutocompleteSearchField, +.vM2MAutocompleteSearchField { + background: #eaf5f8; +} + + +/* Read Only ................................................... */ + +input[readonly], +textarea[readonly], +select[readonly] { + background: #f4f4f4; +} + + + +/* BUTTONS +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +input[type=submit], input[type=reset], input[type=button], button { + color: #fff; + border: 0; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; + background: #acd7e5; +} + + +/* Button Containers ................................................... */ + +.submit-row>*[class*="-container"] { + border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px; + box-shadow: 0 0 5px #666; -moz-box-shadow: 0 0 5px #666; -webkit-box-shadow: 0 0 5px #666; + background: #d6d6d6; +} +.submit-row>*[class*="-container"]:hover { + box-shadow: 0 0 5px #777; -moz-box-shadow: 0 0 5px #777; -webkit-box-shadow: 0 0 5px #777; + background: #d6d6d6; +} +.submit-row>*[class*="cancel-button-container"] { + box-shadow: 0 0 5px #aaa; -moz-box-shadow: 0 0 5px #aaa; -webkit-box-shadow: 0 0 5px #aaa; +} +.footer .submit-row>*[class*="-container"], +.footer .submit-row>*[class*="cancel-button-container"] { + border: 1px solid #666; + box-shadow: 0 0 5px #666; -moz-box-shadow: 0 0 5px #666; -webkit-box-shadow: 0 0 5px #666; + background: #666; +} +.submit-row>*[class*="cancel-button-container"] { + box-shadow: 0 0 5px #aaa; -moz-box-shadow: 0 0 5px #aaa; -webkit-box-shadow: 0 0 5px #aaa; +} +.footer .submit-row>*[class*="-container"]:hover, +.footer .submit-row>*[class*="cancel-button-container"]:hover { + border: 1px solid #777; + box-shadow: 0 0 5px #777; -moz-box-shadow: 0 0 5px #777; -webkit-box-shadow: 0 0 5px #777; + background: #777; +} + + +/* Buttons & Buttonlike Links +------------------------------------------------------------------------------------------------------ */ + +.submit-row a.delete-link, +.submit-row a.cancel-link { + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} +.submit-row input[type=submit] { + border: 1px solid #267c99; +} + +input[type=submit], +#bookmark-add-cancel, +.submit-row a.delete-link:link, .submit-row a.delete-link:visited, +.submit-row a.cancel-link:link, .submit-row a.cancel-link:visited, +.submit-row input[type=button] { + box-shadow: none !important; -moz-box-shadow: none !important; -webkit-box-shadow: none !important; +} + +.submit-row a.delete-link:link, .submit-row a.delete-link:visited { + color: #fff; + border: 1px solid #992626; + background: #bf3030; + background: -webkit-gradient(linear, left top, left bottom, from(#d93636), to(#bf3030)); + background: -moz-linear-gradient(top, #d93636, #bf3030); +} +#bookmark-add-cancel, +.submit-row a.cancel-link:link, .submit-row a.cancel-link:visited, +.submit-row input.cancel:hover { + color: #fff; + border: 1px solid #444; + background: #666; + background: -webkit-gradient(linear, left top, left bottom, from(#666), to(#444)); + background: -moz-linear-gradient(top, #666, #444); +} + +input[type=submit] { + background: #309bbf; + background: -webkit-gradient(linear, left top, left bottom, from(#39bae5), to(#309bbf)); + background: -moz-linear-gradient(top, #39bae5, #309bbf); +} +input[type=submit]:hover, +#bookmark-add-cancel:hover, +.submit-row a.delete-link:hover, .submit-row a.delete-link:active, +.submit-row a.cancel-link:hover, .submit-row a.cancel-link:active, +.submit-row input.cancel { + color: #444; + border: 1px solid #aaa; + background: #d6d6d6; + background: -moz-linear-gradient(top, #e3e3e3, #d6d6d6); + background: -webkit-gradient(linear, left top, left bottom, from(#e3e3e3), to(#d6d6d6)); +} +.footer input[type=submit]:hover, +.footer #bookmark-add-cancel:hover, +.footer .submit-row a.delete-link:hover, .footer .submit-row a.delete-link:active, +.footer .submit-row a.cancel-link:hover, .footer .submit-row a.cancel-link:active { + border: 1px solid #666; +} + +button.fb_show, +button.ui-datepicker-trigger, +button.ui-timepicker-trigger, +button.ui-gAutocomplete-browse, +button.ui-gAutoSlugField-toggle, +button.ui-gFacelist-browse, +a.button, +.vDateField + span a, +.vTimeField + span a, +a.fb_show, +a.related-lookup, +a.add-another, +.tinyMCE .browse span { + border-top-left-radius: 0; -moz-border-radius-topleft: 0; -webkit-border-top-left-radius: 0; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} + +button { + background: #309bbf; + background-image: -moz-linear-gradient(top, #33a6cc, #309bbf); + background-image: -webkit-gradient(linear, left top, left bottom, from(#33a6cc), to(#309bbf)); +} +button:hover { + background: #666; + background-image: -moz-linear-gradient(top, #555, #444); + background-image: -webkit-gradient(linear, left top, left bottom, from(#555), to(#444)); +} + +button.fb_show, +button.ui-gAutocomplete-browse, +button.ui-gFacelist-browse, +button.ui-gAutoSlugField-toggle, +button.ui-datepicker-trigger, +button.ui-timepicker-trigger, +.tinyMCE .browse span { + border: 1px solid #ccc; + background-color: #e1f0f5; +} +button.fb_show:hover, +button.ui-gAutocomplete-browse:hover, +button.ui-gFacelist-browse:hover, +button.ui-gAutoSlugField-toggle:hover, +button.ui-datepicker-trigger:hover, +button.ui-timepicker-trigger:hover, +.tinyMCE .browse span:hover { + background-color: #e1e1e1; +} +button.fb_show[disabled], +button.ui-gAutocomplete-browse[disabled], +button.ui-gFacelist-browse[disabled], +button.ui-gAutoSlugField-toggle[disabled], +button.ui-datepicker-trigger[disabled], +button.ui-timepicker-trigger[disabled], +input[disabled] + a { + background-color: transparent !important; + opacity: 0.3; + cursor: auto !important; +} + + +/* Autocomplete Button ......................................... */ + +button.ui-gAutocomplete-browse, +button.ui-gFacelist-browse { + background-image: url('../img/icons/icon-related-lookup.png'), -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background-image: url('../img/icons/icon-related-lookup.png'), -webkit-gradient(linear, left top, left bottom, from(#ebf2f5), to(#e1f0f5)); +} +button.ui-gAutocomplete-browse:hover, +button.ui-gFacelist-browse:hover { + background-image: url('../img/icons/icon-related-lookup-hover.png'), -moz-linear-gradient(top, #e1e1e1, #eee); + background-image: url('../img/icons/icon-related-lookup-hover.png'), -webkit-gradient(linear, left top, left bottom, from(#e1e1e1), to(#eee)); +} + +.errors button.ui-gAutocomplete-browse, +.errors button.ui-gFacelist-browse { + border-color: #bf3030 #bf3030 #bf3030 #ccc; +} + + +/* AutoSlugField Button ......................................... */ + +/* TODO: lock/unlock icons .. */ + +button.ui-gAutoSlugField-toggle { + background-image: url('../img/icons/icon-related-lookup.png'), -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background-image: url('../img/icons/icon-related-lookup.png'), -webkit-gradient(linear, left top, left bottom, from(#ebf2f5), to(#e1f0f5)); +} +button.ui-gAutoSlugField-toggle:hover { + background-image: url('../img/icons/icon-related-lookup-hover.png'), -moz-linear-gradient(top, #e1e1e1, #eee); + background-image: url('../img/icons/icon-related-lookup-hover.png'), -webkit-gradient(linear, left top, left bottom, from(#e1e1e1), to(#eee)); +} +.errors button.ui-gAutoSlugField-toggle { + border-color: #bf3030 #bf3030 #bf3030 #ccc; +} + + +/* Datepicker Button ......................................... */ + +button.ui-datepicker-trigger { + background-image: url('../img/icons/icon-datepicker.png'), -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background-image: url('../img/icons/icon-datepicker.png'), -webkit-gradient(linear, left top, left bottom, from(#ebf2f5), to(#e1f0f5)); +} +button.ui-datepicker-trigger:hover { + background-image: url('../img/icons/icon-datepicker-hover.png'), -moz-linear-gradient(top, #e1e1e1, #eee); + background-image: url('../img/icons/icon-datepicker-hover.png'), -webkit-gradient(linear, left top, left bottom, from(#e1e1e1), to(#eee)); +} + + +/* Timepicker Button ......................................... */ + +button.ui-timepicker-trigger { + background-image: url('../img/icons/icon-timepicker.png'), -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background-image: url('../img/icons/icon-timepicker.png'), -webkit-gradient(linear, left top, left bottom, from(#ebf2f5), to(#e1f0f5)); +} +button.ui-timepicker-trigger:hover { + background-image: url('../img/icons/icon-timepicker-hover.png'), -moz-linear-gradient(top, #e1e1e1, #eee); + background-image: url('../img/icons/icon-timepicker-hover.png'), -webkit-gradient(linear, left top, left bottom, from(#e1e1e1), to(#eee)); +} + + +/* Search Button ......................................... */ + +button.search { + border-color: transparent !important; + background-color: transparent; +} + + + +/* Links as Buttons +------------------------------------------------------------------------------------------------------ */ + +a.button, +.datecrumbs a, +.datecrumbs span { + border: 1px solid #e0e0e0; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} + + +/* Drop-Down Button ......................................... */ + +a.button.drop-down[class*="selected"] { + color: #444 !important; + border-color: #b0b0b0; + border-bottom-width: 0 !important; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0 !important; -webkit-border-bottom-left-radius: 0; + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0 !important; -webkit-border-bottom-right-radius: 0; + box-shadow: 0 -2px 3px #bbb, -2px -2px 3px #bbb, 2px -2px 3px #bbb; + -moz-box-shadow: 0 -2px 3px #bbb, -2px -2px 3px #bbb, 2px -2px 3px #bbb; + -webkit-box-shadow: 0 -2px 3px #bbb, -2px -2px 3px #bbb, 2px -2px 3px #bbb; +} +a.button.drop-down:link, a.button.drop-down:visited { + color: #309bbf; + background-color: #fff; +} +a.button.drop-down[class*="selected"], +a.button.drop-down:hover, a.button.drop-down:active { + color: #666; + background-color: #e1f0f5; + background: #e1f0f5 url('../img/icons/icon-dropdown-hover.png') 3px 3px no-repeat; + background: url('../img/icons/icon-dropdown-hover.png') 3px 3px no-repeat, -moz-linear-gradient(top, #f0f7fa, #e1f0f5) !important; + background: url('../img/icons/icon-dropdown-hover.png') 3px 3px no-repeat, -webkit-gradient(linear, left top, left bottom, from(#f0f7fa), to(#e1f0f5)); +} + + +/* Filebrowser & Related Lookup ......................................... */ + +a.fb_show, +a.related-lookup { + border: 1px solid #ccc; +} +a.fb_show:link, a.fb_show:visited, +a.related-lookup:link, a.related-lookup:visited { + background-color: #e1f0f5; +} +a.fb_show:hover, a.fb_show:active, +a.related-lookup:hover, a.related-lookup:active { + background-color: #e1e1e1; +} + +a.fb_show:link, a.fb_show:visited, +.tinyMCE .browse span { + background-image: url('../img/icons/icon-fb-show.png'), -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background-image: url('../img/icons/icon-fb-show.png'), -webkit-gradient(linear, left top, left bottom, from(#ebf2f5), to(#e1f0f5)); +} +a.fb_show:hover, a.fb_show:active, +.tinyMCE .browse span:hover { + background-image: url('../img/icons/icon-fb-show-hover.png'), -moz-linear-gradient(top, #e1e1e1, #eee); + background-image: url('../img/icons/icon-fb-show-hover.png'), -webkit-gradient(linear, left top, left bottom, from(#e1e1e1), to(#eee)); +} +a.related-lookup:link, a.related-lookup:visited { + background-image: url('../img/icons/icon-related-lookup.png'), -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background-image: url('../img/icons/icon-related-lookup.png'), -webkit-gradient(linear, left top, left bottom, from(#ebf2f5), to(#e1f0f5)); +} +a.related-lookup:hover, a.related-lookup:active { + background-image: url('../img/icons/icon-related-lookup-hover.png'), -moz-linear-gradient(top, #e1e1e1, #eee); + background-image: url('../img/icons/icon-related-lookup-hover.png'), -webkit-gradient(linear, left top, left bottom, from(#e1e1e1), to(#eee)); +} + +a.related-lookup + strong { + color: #555; +} + + +/* Add Another ......................................... */ + +a.add-another { + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; +} + + +/* Buttons & Button Links in Errors ......................................... */ + +.error input + button, +.error .vDateField + button, +.error .vTimeField + button, +.error input + a.fb_show, +.error input + a.related-lookup, +.error input + a.add-another, +.errors input + button, +.errors .vDateField + button, +.errors .vTimeField + button, +.errors input + a.fb_show, +.errors input + a.related-lookup, +.errors input + a.add-another { + border-color: #bf3030; +} + + +/* Focused Buttons & Button Links ......................................... */ + +input:focus + button, +.vDateField:focus + span a, +.vTimeField:focus + span a, +input:focus + a.fb_show, +input:focus + a.related-lookup, +input:focus + a.add-another { + border-color: #bbb; + border-left-color: #ccc; +} + + + +/* TABLES +–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */ + +tr.alt th, tr.alt td { + background: #f4f4f4; +} +.row1 th, .row1 td { + background: #f4f4f4; +} +.row2 th, .row2 td { + background: #fff; +} +.selected th, .selected td { + background: #ffd; +} + + +/* Thead ................................................... */ + +thead th, +tfoot td { + color: #aaa; + border-left: 1px solid #d4d4d4; + border-bottom: 1px solid #d4d4d4; + background: #eee; + background: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#e0e0e0)); + background: -moz-linear-gradient(top, #eee, #e0e0e0); +} +thead th:first-of-type { + border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; +} +thead th:last-of-type { + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} +thead th.sorted { + border-bottom: 1px solid #ccc; + background: #e0e0e0; + background: -webkit-gradient(linear, left top, left bottom, from(#e0e0e0), to(#eee)); + background: -moz-linear-gradient(top, #e0e0e0, #eee); +} + +thead th a:link, thead th a:visited { + color: #59afcc; + border-top: 1px solid #fff; +} +thead th a:hover, thead th a:active, +thead th.sorted a { + color: #444; +} +thead th.sorted a { + border-top: 1px solid #ececec; +} + + +/* Tbody ................................................... */ + +tbody th, tbody td { + border-top: 1px solid #fff; + border-bottom: 1px solid #e0e0e0; +} + +tfoot td { + border-bottom: 0; + border-top: 1px solid #d4d4d4; +} + +thead th:first-child, +tfoot td:first-child { + border-left: 0; +} + +fieldset table { + border-right: 1px solid #eee; +} + +tr.row-label td { + border-bottom: 0; + color: #666; +} + + + +/* Changelist Table +------------------------------------------------------------------------------------------------------ */ + +#changelist table { + border: 1px solid #bdbdbd; +} +#changelist tbody th, #changelist tbody td { + border: 0; + border-top: 1px solid #e8e8e8; + border-left: 1px solid #e0e0e0; +} +#changelist tbody tr:first-child th, #changelist tbody tr:first-child td { + border-top: 1px solid #fff; +} +#changelist tbody tr th:first-child, #changelist tbody tr td:first-child { + border-left: 0; +} + +#changelist .changelist-results, +#changelist table { + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} + +#changelist thead th:first-of-type, +#changelist thead th:first-of-type a, +#changelist thead *:first-child[style^="display: none"] + *, +#changelist thead *:first-child[style^="display: none"] + * a { + border-top-left-radius: 5px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; +} +#changelist thead th:last-of-type, +#changelist thead th:last-of-type a { + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; +} +#changelist tbody tr:last-of-type>*:first-child, +#changelist tbody tr:last-of-type>*:first-child[style^="display: none"] + * { + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; +} +#changelist tbody tr:last-of-type>*:last-child, +#changelist.editable tbody tr:last-of-type td:nth-last-child(-n+2) { + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; +} + +#changelist thead *[style^="display: none"] + *, +#changelist tbody tr *[style^="display: none"] + * { + border-left: 0; +} + + + +/* Change History +------------------------------------------------------------------------------------------------------ */ + +table#change-history thead th:first-child { + border-top-left-radius: 5px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; +} +table#change-history thead th:last-child { + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; +} + + + +/* Overrides +------------------------------------------------------------------------------------------------------ */ + +tbody th:first-child, tbody td:first-child { + border-left: 0; +} +tbody tr:last-child td, tbody tr:last-child th { + border-bottom: 0; +} diff --git a/assets/css/jquery-ui-grappelli-extensions.css b/assets/css/jquery-ui-grappelli-extensions.css new file mode 100755 index 0000000..06eacff --- /dev/null +++ b/assets/css/jquery-ui-grappelli-extensions.css @@ -0,0 +1,499 @@ + + + +/* Widget Basics +------------------------------------------------------------------------------------------------------ */ + +.module.ui-widget { + border: none; + background: #fff; +} +.ui-widget-content { + border: 1px solid #ccc; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + background: #eee; +} + + + +/* Accordion +------------------------------------------------------------------------------------------------------ */ + + +/* Overlays */ +.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } +.ui-accordion .ui-accordion-li-fix { display: inline; } +.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } +.ui-accordion .ui-accordion-header a { + display: block; + font-size: 1em; + padding: 0 0 0 12px; +} +.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } +.ui-accordion .ui-accordion-content { + top: 0; + margin-top: 0; + margin-bottom: 0; + padding: 5px 15px; + border-top: 1px solid #fff; +} +.ui-accordion .ui-accordion-content-active { display: block; } + + + +/* Datepicker +----------------------------------*/ +.datetime br { + display: none; +} +.datetimeshortcuts { + width: 40px; + position: relative; + margin-left: 10px; +} +.datetimeshortcuts a { + margin-left: 0 !important; +} + +.ui-accordion-header { + margin-top: 2px !important; + cursor: pointer; + outline: none; +} +.ui-accordion .ui-accordion-header a { + padding: 0 0 0 12px; + color: #444; + outline: none; +} + +.ui-accordion-header.ui-state-default { + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; +} +.ui-accordion-header.ui-state-active { + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; +} + + +/* Accordion Module ......................................... */ + +.module .ui-accordion-header.ui-state-default { + border: 1px solid #bdbdbd; + background-color: #a1d4e5; +} +.module .ui-accordion-header.ui-state-default:hover { + background-color: #d6d6d6; +} +.module .ui-accordion-header.ui-state-active { + border: 1px solid #bdbdbd; + background-color: #d6d6d6; +} + + + +/* Accordion Module in Group......................................... */ + +.group .module .ui-accordion-header.ui-state-default { + border: 1px solid #c7c7c7; + background-color: #cee9f2; +} +.group .module .ui-accordion-header.ui-state-default:hover { + background-color: #e0e0e0; +} +.group .module .ui-accordion-header.ui-state-active { + border: 1px solid #c7c7c7; + background-color: #e0e0e0; +} +.group .module .ui-accordion-header { + border-top: 1px solid #4ef; +} + + + +/* Datepicker +------------------------------------------------------------------------------------------------------ */ + +.ui-datepicker { + width: auto !important; padding: 3px 3px 0; + border-color: #bdbdbd; + box-shadow: 0 10px 50px #333; -moz-box-shadow: 0 10px 50px #333; -webkit-box-shadow: 0 10px 50px #333; +} +.ui-datepicker .ui-datepicker-header { + padding: 2px 0; + height: 25px; +} +.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next, +.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { + position: absolute; + top: 4px; + width: 20px; + height: 30px; + background-color: transparent; + background-position: 50% 50%; + background-repeat: no-repeat; + cursor: pointer; +} +.ui-datepicker .ui-datepicker-prev { + left: 3px; + background-image: url('../img/icons/ui-datepicker-prev.png'); +} +.ui-datepicker .ui-datepicker-prev-hover { + left: 3px; + border: none; + background-image: url('../img/icons/ui-datepicker-prev-hover.png'); +} +.ui-datepicker .ui-datepicker-next { + right: 3px; + background-image: url('../img/icons/ui-datepicker-next.png'); +} +.ui-datepicker .ui-datepicker-next-hover { + right: 3px; + border: none; + background-image: url('../img/icons/ui-datepicker-next-hover.png'); +} +.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { + display: none !important; +} + + +.ui-datepicker .ui-datepicker-title { + margin: 3px 25px 2px; + line-height: 1.8em; + text-align: center; +} +.ui-datepicker .ui-datepicker-title select { + float:left; + font-size:1em; + margin: -3px 0 -1px !important; + min-width: 30px; +} +.ui-datepicker select.ui-datepicker-month-year {width: 100%;} +.ui-datepicker select.ui-datepicker-month, +.ui-datepicker select.ui-datepicker-year { width: 49%;} +.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { + float: right; +} +.ui-datepicker table { + width: 100%; + font-size: 12px; + margin: 0 0 2px; +} +.ui-datepicker th { + padding: 5px 0; + text-align: center; + font-weight: bold; + border: 0; + background: transparent; +} +.ui-datepicker td { + min-width: 25px; + border: 0; padding: 1px; +} +.ui-datepicker td span, .ui-datepicker td a { + padding: 4px 0 3px; + margin:0!important; + text-align: center; + display:block; + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; +} +.ui-datepicker td a.ui-state-hover { + color: #fff !important; + border-color: transparent !important; + background: #444 !important; +} +.ui-datepicker td a.ui-state-active { + background: #fff; +} +.ui-datepicker td a.ui-state-highlight { + border-color: #bababa; + background: #D6D6D6; +} +.ui-datepicker .ui-datepicker-buttonpane { + background-image: none; + margin: 5px 0 0; + padding: 0; + border: 0; +} +.ui-datepicker .ui-datepicker-buttonpane button { + float: right; + margin: 3px 0; + padding: 4px 5px 5px; + height: 25px; + color: #aaa; font-size: 11px; + border: 1px solid #c7c7c7; + background: transparent; + cursor: pointer; +} +@media screen and (-webkit-min-device-pixel-ratio:0) { + .ui-datepicker .ui-datepicker-buttonpane button { + padding: 5px 8px 4px; + } +} +.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { + opacity: 1 !important; + color: #444; font-weight: bold; + background: #cee9f2; +} +.ui-datepicker .ui-datepicker-buttonpane button.ui-state-hover { + color: #fff !important; + border-color: #444 !important; + background: #444 !important; +} + +.ui-datepicker-multi .ui-datepicker-group-first .ui-datepicker-title, +.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-title { + margin-right: 5px !important; +} +.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-title, +.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-title { + margin-left: 5px !important; +} + +.ui-datepicker-multi .ui-datepicker-group table { + width: 95%; +} +.ui-datepicker-multi .ui-datepicker-group-first table, +.ui-datepicker-multi .ui-datepicker-group-middle table { + margin-right: 5px !important; +} +.ui-datepicker-multi .ui-datepicker-group-middle table, +.ui-datepicker-multi .ui-datepicker-group-last table { + margin-left: 5px !important; +} +.ui-datepicker-multi .ui-datepicker-group-middle table { + margin-left: 3px !important; +} +.ui-datepicker-multi .ui-datepicker-buttonpane { + border: none; +} + +.ui-datepicker-append { + margin-left: 6px; color: #999; font-size: 10px; +} + +.ui-datepicker td.ui-state-disabled { + padding:1px; + text-align: center; +} +.ui-datepicker td.ui-state-disabled span { + background: #ccc; + color: #555 !important; + font-weight: bold; + font-size: 11px; + border-radius: 3px; -moz-border-radius: 3px; -webkit-borderradius: 3px; +} +button.ui-datepicker-close { + margin-right: 4px !important; +} + + + +/* Timepicker +------------------------------------------------------------------------------------------------------ */ + +#ui-timepicker { + padding: 5px 3px 3px 5px; + width: 216px; + border: 1px solid #bdbdbd; + box-shadow: 0 10px 50px #333; -moz-box-shadow: 0 10px 50px #333; -webkit-box-shadow: 0 10px 50px #333; +} +#ui-timepicker ul { + position: relative; + float: left; + clear: both; + width: auto; +} +#ui-timepicker ul li.row { + position: relative; + float: left; + display: block; + margin: 0 2px 2px 0; + padding: 2px 10px 1px; + width: 30px; + font-size: 11px; + text-align: center; + border: 0; + border-radius: 3px; -moz-border-radius: 3px; -webkit-borderradius: 3px; + cursor: pointer; +} +#ui-timepicker .row.ui-state-default { + border: 1px solid #c7c7c7 !important; + background: #e1f0f5; +} +#ui-timepicker .row.ui-state-active { + border: 1px solid #bababa !important; + background: #d6d6d6; +} +#ui-timepicker .row.ui-state-default:hover { + color: #fff; + border: 1px solid #666 !important; + background: #444; +} + + + +/* Tabs +------------------------------------------------------------------------------------------------------ */ + +.ui-tabs { + padding: 0; zoom: 1; +} +.ui-tabs .ui-tabs-nav { + padding: 0; + color: #444; font-size: 12px; + border: none; + border-bottom: 1px solid #bdbdbd; + border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; -webkit-border-bottom-left-radius: 0; + background: none; +} +.ui-tabs .ui-tabs-nav li { + position: relative; float: left; + border-bottom-width: 1px !important; + margin: 0 .2em -1px 0; + padding: 0; +} +.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; } +.ui-tabs .ui-tabs-nav li.ui-tabs-selected { + padding-bottom: 0px; border-bottom-width: 1px; +} +.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } +.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ +.ui-tabs .ui-tabs-panel { + padding: 0; + display: block; + border: 1px solid #bdbdbd; + border-top: 1px solid #fff; + border-top-right-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; + background: #eee; +} +.ui-tabs .ui-tabs-hide { display: none !important; } + + + +/* gAutocomplete +------------------------------------------------------------------------------------------------------ */ + +.ui-gAutocomplete-wrapper { + position: absolute; + z-index: 400; +} +ul.ui-gAutocomplete-results { + margin-top: 4px; + padding: 5px; + border: 1px solid #ddd; + border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; + box-shadow: 0 0 3px #444; -moz-box-shadow: 0 0 3px #444; -webkit-box-shadow: 0 0 3px #444; + background: #fff; +} +/* inline bug fix */ +.group ul.ui-gAutocomplete-results { + margin-left:171px; + width:745px; +} +ul.ui-gAutocomplete-results li { + padding: 2px 5px; + color: #666; + cursor: pointer; +} +/* hover and selected must bear a slight style + * difference since they have a slight behevior + * difference + **/ +ul.ui-gAutocomplete-results li:hover { + background: #dfe7e9; +} +ul.ui-gAutocomplete-results li.selected { + background: #e1f0f5; + font-weight:bold; +} +ul.ui-gAutocomplete-results li:first-child { + border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; + border-top-right-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; +} +ul.ui-gAutocomplete-results li:last-child { + border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; +} +ul.ui-gAutocomplete-results li + li { + border-top: 1px solid #eee; +} + +ul.ui-gAutocomplete-results li b { + margin: 0 1px; + color: #444; +} + + + +/* Facelist +------------------------------------------------------------------------------------------------------ */ +.ui-gFacelist-wrapper { + margin-left:160px; + width:758px; +} + +.ui-gFacelist-wrapper.focus { + border-color: #999 #BBB #BBB #999; +} + +.ui-gFacelist-toolbar button { + border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; -webkit-border-bottom-right-radius: 0; +} + +ul.ui-gFacelist-facelist { + clear:both; + padding: 5px 5px 5px 0; + position: relative; float: left; clear: both; + width:758px; + box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; +} + +li.ui-gFacelist-item { + cursor: pointer; + background:#ddd; + background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ebf2f5), to(#e1f0f5)); + background-image: -moz-linear-gradient(top, #ebf2f5, #e1f0f5); + background-repeat:no-repeat; + border:1px solid #ccc; + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; + -webkit-box-sizing: border-box; + float: left; + font-weight: bold; + margin-top: 5px; + margin-right: 5px; + padding: 4px 7px 3px 4px; + opacity: 1; + position: relative; + width: auto; +} + +li.ui-gFacelist-item:hover { + background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#e1e1e1), to(#eee)); + background-image: -moz-linear-gradient(top, #e1e1e1, #eee); +} + +li.ui-gFacelist-item span { + background:transparent url('../img/icons/icon-bookmark_remove-inactive.png') no-repeat 2px 2px; + padding:0 0 0 18px; +} + +li.ui-gFacelist-item:hover span { + background:transparent url('../img/icons/icon-bookmark_remove.png') no-repeat 2px 2px; +} + + + +/* AutoSlugField +------------------------------------------------------------------------------------------------------ */ + +.ui-gAutoSlugField-preview { + display:block; + color:#999; + padding:2px 6px; + background:#eee; + border:1px solid #ddd; + border-width:0 1px 1px 1px; + margin-left:160px; + width:744px; +} diff --git a/assets/css/reset.css b/assets/css/reset.css new file mode 100755 index 0000000..fc0788c --- /dev/null +++ b/assets/css/reset.css @@ -0,0 +1,38 @@ +/* -------------------------------------------------------------- + + reset.css + * Resets default browser CSS. + +-------------------------------------------------------------- */ + +html, body, div, span, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, code, +del, dfn, em, img, q, dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td { + margin: 0; + padding: 0; + border: 0; + font-weight: inherit; + font-style: inherit; + font-size: 100%; + font-family: inherit; + vertical-align: baseline; +} + +body { + line-height: 1.5; +} + +/* Tables still need 'cellspacing="0"' in the markup. */ +table { border-collapse: separate; border-spacing: 0; } +caption, th, td { text-align: left; font-weight: normal; } +table, td, th { vertical-align: middle; } + +/* Remove possible quote marks (") from ,
. */ +blockquote:before, blockquote:after, q:before, q:after { content: ""; } +blockquote, q { quotes: "" ""; } + +/* Remove annoying border on linked images. */ +a img { border: none; } diff --git a/assets/css/structures.css b/assets/css/structures.css new file mode 100644 index 0000000..867da58 --- /dev/null +++ b/assets/css/structures.css @@ -0,0 +1,607 @@ + + + +/* Body +------------------------------------------------------------------------------------------------------ */ + +body { + padding: 58px 20px 0; + font-family: Arial, sans-serif; + font-size: 12px; + line-height: 16px; +} +body.popup { + padding-top: 0; +} + + + +/* Container +------------------------------------------------------------------------------------------------------ */ + +#container { + z-index: 0; + position: relative; + float: left; + clear: both; + margin: 0; + padding: 0; + width: 100%; +} + + + +/* Header +------------------------------------------------------------------------------------------------------ */ + +#header { + position: fixed; + top: 0; + left: 0; + z-index: 1100; + padding: 0 20px; + width: 100%; + height: 30px; + font-size: 11px; + line-height: 14px; + font-weight: bold; +} +body.filebrowser.popup #header { + display: none; +} + + + +/* Branding, Bookmarks & User-Tools +------------------------------------------------------------------------------------------------------ */ + +.branding, .admin-title, +#bookmarks li, #user-tools li { + margin: 0; + padding: 8px 10px; +} +.branding { + display: none; + position: relative; + float: right; + width: 10px; + background: url('../img/grappelli-icon.png') 50% 50% no-repeat; +} +.admin-title { + position: relative; + float: left; + margin: 0 0 0 -20px; + padding-left: 20px; + padding-right: 20px; +} +#header ul li { + position: relative; + float: left; +} + + +/* Bookmarks ................................................... */ + +/*ul#bookmarks { + position: relative; float: left; + border-left: 1px solid #404040; + border-right: 1px solid #404040; +} +ul#bookmarks li { + padding: 8px 10px; +} +ul#bookmarks li.action.bookmark-manage { + border-right: 1px solid #303030; +} +ul#bookmarks li#toggle-bookmarks-listing { + width: 175px; + cursor: pointer; +} +ul#bookmarks li#toggle-bookmarks-listing:hover>a { + color: #eee; +} +ul#bookmarks li.action { + padding: 3px 0 2px; +} +ul#bookmarks li.action:last-child { + padding-right: 5px; +}*/ + + +/* Bookmarks Actions ................................................... */ + +/*ul#bookmarks li.action a { + position: relative; display: block; + margin: 0; + width: 18px; height: 22px; + border: 1px solid transparent; + border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; + background-position: 50% 50%; + background-repeat: no-repeat; +} +ul#bookmarks li.action { + width: 20px; height: 24px; + background-position: 50% 9px; + background-repeat: no-repeat; +} +ul#bookmarks li.action.bookmark-add { + background-image: url('../img/icons/icon-bookmark_add-inactive.png'); +} +ul#bookmarks li.action.bookmark-remove { + background-image: url('../img/icons/icon-bookmark_remove-inactive.png'); +} +ul#bookmarks li.action.active { + background-image: none; +} +.bookmark-add.active a, .bookmark-add.active a:visited { + background-image: url('../img/icons/icon-bookmark_add.png'); +} +.bookmark-add.active a:hover, .bookmark-add.active a:active { + background-image: url('../img/icons/icon-bookmark_add-hover.png'); +} +.bookmark-remove.active a, .bookmark-remove.active a:visited { + background-image: url('../img/icons/icon-bookmark_remove.png'); +} +.bookmark-remove.active a:hover, .bookmark-remove.active a:active { + background-image: url('../img/icons/icon-bookmark_remove-hover.png'); +} +a.bookmark-manage, a.bookmark-manage:visited { + background-image: url('../img/icons/icon-bookmark_manage.png'); +} +a.bookmark-manage:hover, a.bookmark-manage:active { + background-image: url('../img/icons/icon-bookmark_manage-hover.png'); +} +*/ + +/* Bookmarks Listing ................................................... */ + +/*ul#bookmarks-listing { + display: none; + position: absolute; z-index: 1000; top: 30px; left: -1px; float: none; + margin: 0; + width: 260px; + border: 1px solid #404040; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + background: #333; + -moz-box-shadow: 0 0 10px #333; -webkit-box-shadow: 0 0 10px #333; +} +ul#bookmarks-listing li { + float: none; + padding: 0; + border-bottom: 1px solid #404040; +} +ul#bookmarks-listing li:last-child { + border: none; +} +ul#bookmarks li p { + padding: 5px 10px; +} +ul#bookmarks-listing a, ul#bookmarks-listing a:visited { + display: block; + padding: 5px 30px 5px 10px; + background: #333; +} +ul#bookmarks-listing a:hover, ul#bookmarks-listing a:active { + color: #eee; + background: #309bbf; +} +ul#bookmarks-listing li:last-child a { + border-bottom-left-radius: 3px; -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; -moz-border-radius-bottomright: 3px; -webkit-border-bottom-right-radius: 3px; +} +*/ + +/* Add Bookmark ................................................... */ + +/*#bookmark-add { + display: none; + position: absolute; z-index: 1000; top: 30px; left: -196px; + margin: 0; padding: 10px; + width: 240px; + border: 1px solid #404040; + border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; + background: #333; + box-shadow: 0 0 10px #333; -moz-box-shadow: 0 0 10px #333; -webkit-box-shadow: 0 0 10px #333; +} +#bookmark-add input[type=text] { + margin-bottom: 10px; + width: 240px; + border: none; +} +#bookmark-add input[type=submit], +#bookmark-add-cancel { + position: relative; + width: auto; + height: 24px; + font-size: 11px; +} +#bookmark-add input[type=submit] { + float: right; +} +#bookmark-add-cancel { + float: left; +}*/ + + +/* User Tools ................................................... */ + +#user-tools { + position: absolute; + right: 40px; +} +#user-tools>li:last-child { + padding-right: 20px; +} + +#user-tools li.user-options-container { + position: relative; + width: 200px; +} + +li.user-options-container.open a.user-options-handler { + display: block; +} +ul.user-options { + display: none; +} +li.user-options-container.open ul.user-options { + display: block; + position: absolute; + float: none; + clear: both; + z-index: 1000; + margin: 7px -10px 0; + width: 221px; +} +ul.user-options li { + float: none !important; + clear: both; +} +ul.user-options li a { + display: block; +} + + + +/* Breadcrumbs +------------------------------------------------------------------------------------------------------ */ + +div#breadcrumbs { + position: fixed; + top: 30px; + left: 0; + z-index: 1000; + padding: 5px 10px 5px 20px; + width: 100%; + font-size: 11px; +/* font-weight: bold;*/ + text-align: left; +} +div#breadcrumbs a { + padding: 10px 2px; +} +body.popup div#breadcrumbs { + top: 0; +} + + + +/* Messages +------------------------------------------------------------------------------------------------------ */ + +ul.messagelist { + position: relative; + top: 0; + z-index: 1001; + margin: 0 -20px; +} +ul.messagelist li { + display: block; + padding: 3px 10px 4px 35px; + font-size: 11px; + font-weight: bold; + background: url('../img/icons/icon-yes.png') 20px 50% no-repeat; +} +ul.messagelist.success li { + background: url('../img/icons/icon-yes.png') 20px 50% no-repeat; +} +ul.messagelist.error li { + background: url('../img/icons/icon-yes.png') 20px 50% no-repeat; +} +body.popup .breadcrumbs + ul.messagelist { + top: 24px; +} +body.filebrowser.popup ul.messagelist { + top: 28px; +} + + +/* Masthead +------------------------------------------------------------------------------------------------------ */ + +#masthead { + position: relative; + float: left; + clear: both; + z-index: 900; + padding: 60px 0 10px; + width: 100%; +} + + + +/* Login Form +------------------------------------------------------------------------------------------------------ */ + +div.login { + top: -30px; +} +#login-form { + margin: 0 auto; +} + + + +/* Content +------------------------------------------------------------------------------------------------------ */ + +#content { + position: relative; + float: left; + clear: both; + margin: 0 0 80px; + padding: 0; + width: auto; +} +#content.content-flexible { + width: 100%; +} +body.filebrowser.popup #content { + top: 28px; +} + + + +/* Container +------------------------------------------------------------------------------------------------------ */ + +.container, +.container-grid { + position: relative; + float: left; + clear: both; + width: 940px; +} +.container-flexible { + position: relative; + float: none; + clear: both; + width: auto; + height: 100%; +} + + + +/* Blueprint Grid Columns & Spans +------------------------------------------------------------------------------------------------------ */ + +.column { + position: relative; + float: left; +} +.column.centered { + position: relative; + float: none !important; + margin: 0 auto !important; +} +.span-flexible { + position: relative; + width: 100%; +} +.container-flexible.layout-flexible-grid .span-flexible { + float: left; + margin-right: 20px; + width: 100%; +} +.container-flexible.layout-flexible-grid .span-flexible + .column { + float: left !important; +} +.container-flexible.layout-grid-flexible .column { + float: left; +} +.container-flexible.layout-grid-flexible .span-flexible { + float: left; + width: 100%; +} +fieldset.module .row .column:first-child { + margin-left: 0 !important; +} +fieldset.module .row .column:last-child { + margin-right: -20px !important; +} +fieldset.module .row .column.span-flexible:last-child { + margin-right: 0 !important; +} +.row .span-flexible, +.row .span-flexible:last-child { + float: none; + width: auto; + margin-right: 0 !important; +} + + +/* Basic Float & Margin ......................................... */ + +.span-1, .span-2, .span-3, .span-4, .span-5, .span-6, +.span-7, .span-8, .span-9, .span-10, .span-11, .span-12, +.span-13, .span-14, .span-15, .span-16, .span-17, .span-18, +.span-19, .span-20, .span-21, .span-22, .span-23, .span-24 { +/* float: left;*/ + margin-right: 20px; +} +.column.last { margin-right: 0; } + + +/* Column Widths ......................................... */ + +.span-1 { width: 20px; } +.span-2 { width: 60px; } +.span-3 { width: 100px; } +.span-4 { width: 140px; } +.span-5 { width: 180px; } +.span-6 { width: 220px; } +.span-7 { width: 260px; } +.span-8 { width: 300px; } +.span-9 { width: 340px; } +.span-10 { width: 380px; } +.span-11 { width: 420px; } +.span-12 { width: 460px; } +.span-13 { width: 500px; } +.span-14 { width: 540px; } +.span-15 { width: 580px; } +.span-16 { width: 620px; } +.span-17 { width: 660px; } +.span-18 { width: 700px; } +.span-19 { width: 740px; } +.span-20 { width: 780px; } +.span-21 { width: 820px; } +.span-22 { width: 860px; } +.span-23 { width: 900px; } +.span-24 { width: 940px; margin: 0; } + + +/* Append empty columns ......................................... */ + +.append-1 { padding-right: 40px; } +.append-2 { padding-right: 80px; } +.append-3 { padding-right: 120px; } +.append-4 { padding-right: 160px; } +.append-5 { padding-right: 200px; } +.append-6 { padding-right: 240px; } +.append-7 { padding-right: 280px; } +.append-8 { padding-right: 320px; } +.append-9 { padding-right: 360px; } +.append-10 { padding-right: 400px; } +.append-11 { padding-right: 440px; } +.append-12 { padding-right: 480px; } +.append-13 { padding-right: 520px; } +.append-14 { padding-right: 560px; } +.append-15 { padding-right: 600px; } +.append-16 { padding-right: 640px; } +.append-17 { padding-right: 680px; } +.append-18 { padding-right: 720px; } +.append-19 { padding-right: 760px; } +.append-20 { padding-right: 800px; } +.append-21 { padding-right: 840px; } +.append-22 { padding-right: 880px; } +.append-23 { padding-right: 920px; } + + +/* Prepend empty columns ......................................... */ + +.prepend-1 { padding-left: 40px; } +.prepend-2 { padding-left: 80px; } +.prepend-3 { padding-left: 120px; } +.prepend-4 { padding-left: 160px; } +.prepend-5 { padding-left: 200px; } +.prepend-6 { padding-left: 240px; } +.prepend-7 { padding-left: 280px; } +.prepend-8 { padding-left: 320px; } +.prepend-9 { padding-left: 360px; } +.prepend-10 { padding-left: 400px; } +.prepend-11 { padding-left: 440px; } +.prepend-12 { padding-left: 480px; } +.prepend-13 { padding-left: 520px; } +.prepend-14 { padding-left: 560px; } +.prepend-15 { padding-left: 600px; } +.prepend-16 { padding-left: 640px; } +.prepend-17 { padding-left: 680px; } +.prepend-18 { padding-left: 720px; } +.prepend-19 { padding-left: 760px; } +.prepend-20 { padding-left: 800px; } +.prepend-21 { padding-left: 840px; } +.prepend-22 { padding-left: 880px; } +.prepend-23 { padding-left: 920px; } + + +/* Span-X + Span-Flexible ......................................... */ + +.span-1 + .span-flexible { margin-left: 40px; } +.span-2 + .span-flexible { margin-left: 80px; } +.span-3 + .span-flexible { margin-left: 120px; } +.span-4 + .span-flexible { margin-left: 160px; } +.span-5 + .span-flexible { margin-left: 200px; } +.span-6 + .span-flexible { margin-left: 240px; } +.span-7 + .span-flexible { margin-left: 280px; } +.span-8 + .span-flexible { margin-left: 320px; } +.span-9 + .span-flexible { margin-left: 360px; } +.span-10 + .span-flexible { margin-left: 400px; } +.span-11 + .span-flexible { margin-left: 440px; } +.span-12 + .span-flexible { margin-left: 480px; } +.span-13 + .span-flexible { margin-left: 520px; } +.span-14 + .span-flexible { margin-left: 560px; } +.span-15 + .span-flexible { margin-left: 600px; } +.span-16 + .span-flexible { margin-left: 640px; } +.span-17 + .span-flexible { margin-left: 680px; } +.span-18 + .span-flexible { margin-left: 720px; } +.span-19 + .span-flexible { margin-left: 760px; } +.span-20 + .span-flexible { margin-left: 800px; } +.span-21 + .span-flexible { margin-left: 840px; } +.span-22 + .span-flexible { margin-left: 880px; } +.span-23 + .span-flexible { margin-left: 920px; } +.span-24 + .span-flexible { margin-left: 960px; } + + +/* Columns in Cells ......................................... */ + +.cell.span-1 { width: 0px; } +.cell.span-2 { width: 40px; } +.cell.span-3 { width: 80px; } +.cell.span-4 { width: 120px; } +.cell.span-5 { width: 160px; } +.cell.span-6 { width: 200px; } +.cell.span-7 { width: 240px; } +.cell.span-8 { width: 280px; } +.cell.span-9 { width: 330px; } +.cell.span-10 { width: 360px; } +.cell.span-11 { width: 400px; } +.cell.span-12 { width: 440px; } +.cell.span-13 { width: 480px; } +.cell.span-14 { width: 520px; } +.cell.span-15 { width: 560px; } +.cell.span-16 { width: 600px; } +.cell.span-17 { width: 640px; } +.cell.span-18 { width: 680px; } +.cell.span-19 { width: 720px; } +.cell.span-20 { width: 760px; } +.cell.span-21 { width: 800px; } +.cell.span-22 { width: 840px; } +.cell.span-23 { width: 880px; } +.cell.span-24 { width: 920px; margin: 0; } + + +/* Clearing floats without extra markup + Based on How To Clear Floats Without Structural Markup by PiE + [http://www.positioniseverything.net/easyclearing.html] */ + +.clearfix:after, .container:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} +.clearfix, .container { display: inline-block; } +* html .clearfix, +* html .container { height: 1%; } +.clearfix, .container { display: block; } + +/* Regular clearing + apply to column that should drop below previous ones. */ + +.clear { clear: both; } + + + diff --git a/assets/css/tables.css b/assets/css/tables.css new file mode 100644 index 0000000..8bc7dde --- /dev/null +++ b/assets/css/tables.css @@ -0,0 +1,141 @@ + + + +/* Basic Table Settings +------------------------------------------------------------------------------------------------------ */ + +table { + margin: 0; + padding: 0; + border-spacing: none; +} +td, th { + vertical-align: top; + padding: 10px 10px 9px; + font-size: 11px; + line-height: 15px; +} +th { + text-align: left; + font-size: 12px; + font-weight: bold; +} + + +/* Thead ................................................... */ + +thead th, +tfoot td { + padding: 5px 10px; + font-size: 11px; + line-height: 12px; + font-weight: normal; +} +thead th.sorted { + font-weight: bold; +} +thead th a { + position: relative; + display: block; + margin: -5px -10px -4px; + padding: 4px 10px 4px; + height: 100% !important; + white-space: nowrap; +} +thead th a.asc:after { + content: url('../img/icons/icon-th-ascending.png'); + color:red; +} +thead th a.desc:after { + content: url('../img/icons/icon-th-descending.png'); +} + + +/* Tbody ................................................... */ + +thead th.optional { + font-weight: normal !important; +} +tr.row-label td { + margin-top: -1px; + padding-top: 2px; + padding-bottom: 0; + font-size: 9px; +} + + + +/* Table XFull +------------------------------------------------------------------------------------------------------ */ + +table.xfull { + width: 100%; +} + + + +/* Changelist Table +------------------------------------------------------------------------------------------------------ */ + +#changelist table { + position: relative; + margin: -1px !important; +} + +#changelist form table tbody td, #changelist form table tbody th { + padding-top: 10px; + padding-bottom: 9px; + line-height: 16px; +} + + + +/* Orderable Tables +------------------------------------------------------------------------------------------------------ */ + +table.orderable tbody tr td:hover { + cursor: move; +} + +table.orderable tbody tr td:first-child { + padding-left: 14px; + background-image: url(../img/admin/nav-bg-grabber.gif); + background-repeat: repeat-y; +} + +table.orderable-initalized .order-cell, body>tr>td.order-cell { + display: none; +} + + + +/* Change History +------------------------------------------------------------------------------------------------------ */ + +table#change-history { + width: 100%; +} +table#change-history tbody th { + width: 150px; +} + + + +/* Documentation +------------------------------------------------------------------------------------------------------ */ + +.model-index table { + width: 100%; +} +.model-index table th { + padding: 7px 10px 8px; +} + + + +/* Other Classes +------------------------------------------------------------------------------------------------------ */ + +table .nowrap { + white-space: nowrap; +} diff --git a/assets/css/tools.css b/assets/css/tools.css new file mode 100644 index 0000000..4aa7bcf --- /dev/null +++ b/assets/css/tools.css @@ -0,0 +1,266 @@ + + + +/* Tools Basics +------------------------------------------------------------------------------------------------------ */ + +.tools { + position: relative; + float: right; + clear: both; + padding: 6px 10px; + font-size: 11px; + font-weight: bold; +} +ul.tools { + padding: 0; + list-style-type: none; + white-space: nowrap; +} +ul.tools:empty { + display: none; +} +ul.tools li { + position: relative; + float: left; + display: block; + overflow: hidden; + margin-left: 5px; + padding: 6px 0; + min-width: 12px; +} +ul.tools li:last-child { + margin-right: 5px; +} + + + +/* H1 + Tools +------------------------------------------------------------------------------------------------------ */ + +h1 + .tools, +.grappelli-h1 + .tools { + position: relative; + float: right; + clear: right; + z-index: 900; + margin-top: -34px; + margin-bottom: -34px; + display: inline-block; +} + +h1 + .tools li, +h1 + .tools li:last-child { + float: left; + margin: 0 0 0 3px; + padding: 0; +} +h1 + .tools a { + display: block; + margin: 0; + padding: 4px 15px; + width: auto; + height: 17px; + font-size: 11px; + opacity: .6; +} +h1 + .tools a:hover, h1 + .tools a:active { + opacity: 1; +} + +h1 + .tools a.add-handler:link, h1 + .tools a.add-handler:visited { + padding-left: 30px; + background: url('../img/icons/icon-object-tools-add-handler.png') 0 50% no-repeat scroll; +} +h1 + .tools a.add-handler:hover, h1 + .tools a.add-handler:active { + background: url('../img/icons/icon-object-tools-add-handler.png') 0 50% no-repeat scroll; +} + + +/* Focused Buttons ................................................... */ + +h1 + .tools a.focus { + opacity: 1; +} + + + + +/* Tools +------------------------------------------------------------------------------------------------------ */ + +.group .tools, +.module .tools { + position: relative; + float: right; + clear: both; + padding: 6px 10px; + font-size: 11px; + font-weight: bold; +} +.group ul.tools, +.module ul.tools { + padding: 0 2px; + list-style-type: none; +} +.group ul.tools li, +.module ul.tools li { + position: relative; + float: left; + display: block; + overflow: hidden; + margin-left: 5px; + padding: 6px 2px; +} +.group ul.tools li:last-child, +.module ul.tools li:last-child { + margin-right: 5px; +} + + +/* 1st Level H2 + Tools ......................................... */ + +.group h2+.tools, +.module h2+.tools { + top: -29px; + right: 0; + margin-bottom: -29px; +} +.group h2+.tools { + right: 1px; +} +.module.collapse.closed h2+.tools { + top: -28px; +} + + +/* 2nd Level H3 + Tools ......................................... */ + +.module h3+.tools { + top: -27px; + right: 0; + margin-bottom: -27px; +} +.module h3+ul.tools li { + padding-top: 5px; + padding-bottom: 5px; +} + + +/* 3rd Level H4 + Tools ......................................... */ + +.module h4+.tools { + top: -24px; + right: 0; + margin-bottom: -24px; +} +.module h4+ul.tools li { + padding-top: 3px; + padding-bottom: 4px; +} + + +/* Tools in Tabular Groups ......................................... */ + +.module.table .th .tools, +.module.table .td .tools { + top: -5px; + right: -20px; + margin-left: -20px; + margin-bottom: -15px; +} +.module.table .th .tools li, +.module.table .td .tools li { + padding-top: 10px; + padding-bottom: 9px; +} + + +/* Links ................................................... */ + +.tools a { + position: relative; + display: block; + margin: -6px 0; + padding: 6px 0px; + width: 100%; + height: 100%; + background-position: 50% 50%; + background-repeat: no-repeat; +} + +.tools a.icon { + margin: -6px 0; + padding: 6px 0px; + width: 12px; + height: 16px; +} + +.module.table .th .tools a, +.module.table .td .tools a { + margin: -9px 0; + padding: 9px 0px; +} +.module.table .th .tools a.icon, +.module.table .td .tools a.icon { + margin: -9px 0; + padding: 9px 0px; +} + + +/* Icons ................................................... */ + +.tools a.drag-handler:link, .tools a.drag-handler:visited { + background-image: url('../img/icons/icon-tools-drag-handler.png'); +} +.tools a.drag-handler:hover, .tools a.drag-handler:active { + background-image: url('../img/icons/icon-tools-drag-handler-hover.png'); +} +.predelete-items a.drag-handler, .predelete-item a.drag-handler { + display: none; +} + +.tools a.viewsite-link:link, .tools a.viewsite-link:visited { + background-image: url('../img/icons/icon-tools-viewsite-link.png'); + opacity: .4; +} +.tools a.viewsite-link:hover, .tools a.viewsite-link:active { + background-image: url('../img/icons/icon-tools-viewsite-link-hover.png'); +} + +.tools a.delete-handler:link, .tools a.delete-handler:visited, +.predelete .tools a.delete-handler:hover, .predelete .tools a.delete-handler:active { + background-image: url('../img/icons/icon-tools-delete-handler.png'); +} +.tools a.delete-handler:hover, .tools a.delete-handler:active, +.predelete .tools a.delete-handler:link, .predelete .tools a.delete-handler:visited { + background-image: url('../img/icons/icon-tools-delete-handler-hover.png'); +} + +.tools a.remove-handler:link, .tools a.remove-handler:visited { + background-image: url('../img/icons/icon-tools-remove-handler.png'); +} +.tools a.remove-handler:hover, .tools a.remove-handler:active { + background-image: url('../img/icons/icon-tools-remove-handler-hover.png'); +} + +.tools a.add-handler:link, .tools a.add-handler:visited { + background-image: url('../img/icons/icon-tools-add-handler.png'); +} +.tools a.add-handler:hover, .tools a.add-handler:active { + background-image: url('../img/icons/icon-tools-add-handler-hover.png'); +} + +.tools a.open-handler:link, .tools a.open-handler:visited { + background-image: url('../img/icons/icon-tools-open-handler.png'); +} +.tools a.open-handler:hover, .tools a.open-handler:active { + background-image: url('../img/icons/icon-tools-open-handler-hover.png'); +} + +.tools a.close-handler:link, .tools a.close-handler:visited { + background-image: url('../img/icons/icon-tools-close-handler.png'); +} +.tools a.close-handler:hover, .tools a.close-handler:active { + background-image: url('../img/icons/icon-tools-close-handler-hover.png'); +} diff --git a/assets/css/typography.css b/assets/css/typography.css new file mode 100644 index 0000000..c396284 --- /dev/null +++ b/assets/css/typography.css @@ -0,0 +1,260 @@ + +/* typography.css: + 2009 / vonautomatisch werkstaetten / vonautomatisch.at +------------------------------------------------------------------------------------------------------ */ + + + +/* Headings +------------------------------------------------------------------------------------------------------ */ + +h1, h2, h3, h4 { + font-weight: bold; +} + +h1 { + position: relative; + z-index: 800; + margin: 26px 0 10px; + font-size: 16px; + line-height: 20px; +} +.pretitle + h1 { + margin-top: 0; +} +h2 { + font-size: 13px; +} +h3 { + font-size: 12px; +} +h4, h5 { + font-size: 11px; +} + + + +/* Paragraphs +------------------------------------------------------------------------------------------------------ */ + +.module p.help, +p.help { + padding: 5px 0; + font-size: 10px !important; + line-height: 12px; +} + +.fb_show + p.help a { + display: inline-block; + padding: 3px; + font-size: 0; + line-height: 0; +} +.fb_show + p.help a img { + margin: 0; + font-size: 0; + line-height: 0; +} +.container-grid > p:first-child, .container-flexible > p:first-child, +.container-grid .column > p:first-child, .container-flexible .column > p:first-child { + margin: 0 0 10px; +} + + + +/* Links +------------------------------------------------------------------------------------------------------ */ + +a { + text-decoration: none; + outline: none; + cursor: pointer; +} +a.back { + font-weight: bold; +} + + + +/* Listings +------------------------------------------------------------------------------------------------------ */ + +ul, li { + list-style-type: none; +} + + + +/* Blockquote, Pre, Code +------------------------------------------------------------------------------------------------------ */ + +blockquote { + margin-left: 2px; + padding-left: 4px; + font-size: 11px; +} + +code, pre { + font-size: 11px; + font-family: "Bitstream Vera Sans Mono", Monaco, "Courier New", Courier, monospace; +} + +pre.literal-block { + margin: 10px; + padding: 6px 8px; +} + +hr { + clear: both; + margin: 0; + padding: 0; + height: 1px; + font-size: 1px; + line-height: 1px; +} + + + +/* Table Typography +------------------------------------------------------------------------------------------------------ */ + +th.focus, +td.focus { + font-weight: bold; +} + + + +/* RTE (Rich Text Edited) +------------------------------------------------------------------------------------------------------ */ + +.rte h2.subhead { + margin: 0; + font-size: 12px; +} +.rte h3 { + margin: 10px -10px 10px; + padding: 7px 10px 6px; + font-size: 12px !important; +} +.rte h2 + h3 { + margin-top: -11px !important; +} +.rte h4 { + margin: 10px 0 0; + font-size: 12px; +} + +.rte p { + margin: 10px 0; +} +.rte .module p { + margin: 10px 0; + padding: 0 10px; +} +.rte > p:first-child { + margin-top: 0; +} + +.rte .group h2 + p, +.rte .module h2 + p { + margin: 5px 0; + padding: 0 10px; + font-size: 11px; +} + +.rte table p { + margin: 0 !important; + padding: 0 !important; +} + +/* Workaround for problem reported in django-ticket #11817 */ +.rte h2 p, +.rte h4 p { + margin: 0 !important; + padding: 0 !important; + font-weight: normal; +} +.rte h2 p { + font-weight: bold !important; +} +.rte h4:empty, +.rte p:empty, +.rte hr, +.rte br:first-child { + display: none !important; +} + +.rte ul, .rte ol { + margin: 10px 0 0 20px; + padding: 0 0 0 10px; + font-weight: normal !important; +} +ul.rte ul, ul.rte ol, +ol.rte ul, ol.rte ol { + margin: 0 0 0 20px; + font-size: 12px; + line-height: 14px; +} +.rte ul li, .rte ol li { + margin: 0; + padding: 0; +} +.rte ul li { + list-style-type: disc; +} +.rte ol li { + list-style-type: decimal; +} + +.delete-confirmation ul.rte>li { + padding-bottom: 9px; + font-weight: bold; +} +.delete-confirmation ul.rte>li:last-child { + padding-bottom: 0; +} +.delete-confirmation ul.rte>li+li { + padding-top: 8px !important; +} +.delete-confirmation ul.rte>li>ul { + margin-top: 2px; +} +.delete-confirmation ul.rte>li>ul>li { + list-style-type: none; + margin: 0 0 0 -30px !important; + padding: 5px 0; +} +.delete-confirmation ul.rte>li>ul>li:last-child { + padding-bottom: 0; +} +.delete-confirmation ul.rte>li>ul>li>ul>li { + font-size: 11px; +} + +.rte dd ul, .rte dd ol { + margin-top: 0; +} +.rte blockquote { + margin: 10px; +} +.rte dl, .rte dt, .rte dd { + margin: 0; +} +.rte dl { + padding: 5px 10px; +} +.rte dt { + font-weight: bold; +} +.rte dd + dt { + margin-top: 5px; +} + + + +/* Other Styles +------------------------------------------------------------------------------------------------------ */ + +.small { font-size: 10px; } +.fw-normal { font-weight: normal; } diff --git a/assets/img/admin/arrow-down.gif b/assets/img/admin/arrow-down.gif new file mode 100644 index 0000000000000000000000000000000000000000..a967b9fd5563a0fc2f5fde8ec0f7de3fc8fbc5a9 GIT binary patch literal 80 zcmZ?wbhEHb3wfn>L+1d2-{%jW1rjm^pLi|Ns9P7#I|PvM@3LmFNK3 i3?Q`(%%TyyyiA!oB04G)Te5yh$2@OMO7G-kum%ACMICAY literal 0 HcmV?d00001 diff --git a/assets/img/admin/arrow-up.gif b/assets/img/admin/arrow-up.gif new file mode 100644 index 0000000000000000000000000000000000000000..3fe4851399a37337891ccf5452ee5d59bbedeec7 GIT binary patch literal 838 zcmZ?wbhEHb3wfn>L+1d2-{%jW1rjm^pJM!zdUHfe{k|ia%Kx8GuSOX;Q=NFCLWFl0*@NH#f6pb?3n1_z+epkX4f1j literal 0 HcmV?d00001 diff --git a/assets/img/admin/browser-warning-bg.png b/assets/img/admin/browser-warning-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..62f232acf86b429f7f5cd1c6372f01f37a0b1439 GIT binary patch literal 18582 zcmXtgdpy(a|39+A?NXE+H{a(>oQf!2&kg}67TTM+Nib_RJGlY0Aowr)0++xid z9d2Y!>#j{I;x1N7I+D(+-{t;(et+Q6b{$^V>-Bscuh$hnWZjzSMm9z|Iy%z>1IS@I zI{I|*V`DG{d_q>d{RjM+ne0bR-mr5^@}8I^j*bs|CyO&DFg|80CyW!rPD||Ic!5FD zA;IB(fByU#8ykE7{{5#KY#xG`}glJU%q_(`t{eZU*Eoc`~Lm=#Kgqt=;)6h zKYsrF`SIh&4<9~EO#Gbq_3P&Z_%$*4>5re_1Muh9#IN7Ke}SLh|NR9YE&ILqgpSUd zyMbh%@YE-7|Lxt&Sc7vK5Z7mB8Sqay2c1s)bKQ2|lXs8&aTi^Md3W32+@7Ou{o~i7 zTRA%IZu;?tBeOo-XLs#{Ba@814QJFW@=!)uQ<+bCJsR4z zcC-ZM@>ia=k&T(y8_3~ssHQzrSGD{@T_XXn$U~{L{V_fXLpPh**ybl^*w>b6^FWJGT&VX_poWiH zU#_Ycp2acT<0qz$X$u6rz>Anm#twJzfp62Anv^#zQqE^DmbNtGe)DggT;&?MKQS~R z@H{2}il7=W>&F%O4RiFZhz$Rgw2%g~8aH9+v?^?@n^?*zJ3(8G$Ku_DX}Rr`BLiJ| zkTuOV#%I?MZm2zFv`KOaIfugDB?JSs^MV3hg~L7ntcXp(i*D>uMDlWGCLpm&ZFqS|87kDh%pl0mKW@n&S}DLJh@-gA~}Yf z%Yk2)5LD%=e4zxpA))CyXS`H74L#qOMEh;oiSkjs!>))mhHnc-FbRBk69?T+STU8H)wV+K1b|bsQjoeVIZxzj$IvYN- z3{RN@hbc3y<}zIi>Pb>^WAp3Ihi@MHT1{ix^m;g{vf!AS)eDl|x({n}1U&u)<$83i zCLy)-LP3J=bxyc_!ap2-MmDaD%Wg~mm)> z%H7KDXb9IWQ)&Q_Gv-h`k89nG&4^M$Ci+5GXo5nQQ@?l3wps?j;4)2R`M|QpPrmGd zuLITyMmE-d&Bh9~@`B^i7k=oXi0YmrKEkpA-)$-`jMax(%9B=jrfZ+aC3c51X`qJr z@P>`zd>P(pQnFG!<)&Li%KXhjnOfl-Q-As3xMEz+Ij_?5y7sLJzsWbXqcuA^ zK_tdRL2ue|Myie1@3bgA6x}jTS!uR|G_O2*bEm$Q2V-h3JXnG;L$5rIm?ga1l%0j{ zkm@%jNf=r}o#o;>AS%KP$Rncq*^SNyr-870Xs92W)sEA{7C1d#@M!fQ&W@SNn^}sn zhV<4am5J_1L`a$}OU1IG=|wwO5W1{wnVFOl0Wu)7C{{X1b?TE&?K#rAGl6MEykRUuYU#y)L?9S}$@hIl_z@*zXWf96YD}Cl1O6UcIBwgl* z21iuWh#LUIy4umuD737-bgF9cv+^dTtD?Jx6QaV+0^ojqIlp$kg+kwy7&mDqh?E?+ z$CgBrRj-z#x`a@sQLDF~N^oIO79r=Qseot9)Ieo+ALLBG#HlTWMK#RF-T}?$iDetRza6B@mq!7M+ni)cUF?h2J8n0;j*L(oV;oaL#C5J%DHI=T^dk6m~|& z(A-xBiSAfpeEiHhc18hE)BZWOnZ%P#*&5V;naiM#Lr>(x(e*!!tmNJ1S_jvmLFCOL!9Y3tsxRtx&)-ynykCxYU;Xne+P|n zr%?A~`eRSR4xIMcfTPWnAh)skezriW%~MospT#!&$$1yE*P%7-I33m6ucRhm&BJSy zeAGjFYz>qUv16+V)2ekKbBkahqA|^-vPW|;rAOf{a}r`|hGOM_tI>CS@j>U^Efnpj z?h09|3TH=)X4V(3^p4ET#AYEyyMS4ClcqK|@5sNlpcjlvrJJ$&E~G^@{bJ^P<|c~y zF=U;ryOgj*dcGk^u&1&i1Y@-gXui*3iPY8PcJ%YE9>A&#?8G;|(qN_Q9 z1(PiPj9I2I>nRPO5NLQu$};$RRa=2-TSDbF)uAgS4%=||5c(@KB`%h-iC|O5HgqQC z)%0(w7b~jD@nH-&&ail>jEt_P?zm!SOZ<44atXON)R2HQ+tx36BYyi{8|kWf6JN8y|@7Eb-07mZV4Gs#v~oBgew-I zPdqM-gk*T=zv_JYV<6cjB;VSt1dIG)J7jS_q%TfGi?alRYbupw zyUK63LjjDOc)JlN>|A)?ZAYb_+?Ir0&DA}sbe8Jhk#1c{W^Ou+Ekg`zIg82(PSUIf z>DIqPBD)S#(iu|^*lly5?1>0Ye!T+=G%7|UIRT=Ax7+P3i1EC{JY))97W~M;p4RLr zV7hl>V8ybY%t-!$vwqU^{!l%u3ZVA&cGZF_q_x2Ga-x256XIB^M?s5zN88a|fiO-c zzur#y-9I)TQK#gELIDJFtMY4NKb{kX> zw8;8RNG6<9g0VsWy<6VMS*ft7QF=@|JV${e9D26@eoc~nL9i=PIur{d4^l3jfun2Q zKKkJ9)%I<$>kfJ;Xwk4Q-uSbB60 zltAl>F+AsV!EyPZ9v9owpTy(Mj1x)n;dLd-^76LGdqY~5CG%UnAs?BtKxR=!Fh}j4 zG(88A+S{HAV7r{ybThRwmNHN_D}?XA zjvMDhnF`5qPAoz0$yQHCxYA{06pB+G7G@1JM^m;DY@$WVz0GS;f(>f-%15iW zMew=o1O*#tH&(1XZ>(&VKKJ%wJ_-swiySNG20(f3UHz7`B5N`!dl*v#?X*V;X6W6W zO);-Q6!S4YV4=nhk2IgbD4~l)#O6+ zX**)ry&Juc4``z)g*_lNu7@3J-j3J@0yWD3zI7{gcO+2vVG7hMlB$ttl za&AI4^jyRVgkBJnn-cFTdiq$)uFq*fL%n4>?PF#}DvTz*P7BOuSuMvY2OX0-Iic8w zYhB9O!X5I|F1@f^dS}-I%M;rcEgar-o$xnqrUn<5YozMxv%EG4!q?DpZXvoir9BY3 z*`5^ooW&^7CBBqfTqd_Y@TKMkfOI3Lp&dOLG(Hy@5GiFQx*hn4f)r5=MuwxcqM9&t zdlXIXkFIHA@db$qw3?xYYY11yt0whJoof`sVGp1iK^7EBz1nwK(b05Xma#Foh z-#b%++4aMT&P{%DSe+S}yPEC8hpp0g46aDdXu>=~?*bJf2|nL(m`Woy*pXcF_Xf8B zR~E%>sv@11+WvVqb}l;R4xt;p8^pF`Oby}2ISOzpc~n$EBVb%wEypYu1ozD3+r1je zam1^Zla-6U2li!PvlAnUr3$gjFCQA(T%-S7FPhR8v`Bn#zWE{<+^Gddx6_8WTVl|J z_VHIo*+J&J6Qt2c>5=gN+)vh^szI7*Gn9GjIL(ARp* zT)A<#8W)=Tk?ry>{|u49>$ptbT+1P6Lyex@tI>=!X|@>mUDIqqugZmH&`Q^!8T&gF zioVii*AIa#)RHdFfv~i&8LH@IsX$%bPcUj?RcDQmP!h#==C)V)w}`WzzT0NZq&CcQKlO{MK^U{zE0yELC<%weel(m%e9%>B{fVZC0izfr87ratUEi5e&A_--ZD zDv6{`2R+*HRGkE$YlN*Gbw`lH1X<5RQJAzK|M4B@chDj~%4TlhUnG�J2~* z<9)7>V?cm19a#D85pB}>(Ah+uNjzyEyNZvo#_j8`yNEY%znB!ol>XV3gq zEk#_)o#)C6)`_yCP|YWsC(ZT@|66K3U=A~sL#Lae(>*K_<(;QKUNxNV(8ST8((?9G z&@*)=J@@yI53lcWo62D+L5?FV5r-l&i+^C!^(=}5gUV7R7$aK^MHnj7nGU99qmsDT_}i-!4khN zkUPQkn`$wKp=X|pmdl(}_?7z;`0dDyT@+t}kwlr^g6T^jfSgH=;dZ3VPFnLyEe+2t zDj!hHVwMQloA>6=*$|8g~snd{Y8-14!N&T&~s_G-0WXzm2N z1ec*W)>BI3H^!=*?dZ5S#q7!$Y!tzlkIa@?XF(sPM}S3x890=AqQ}Eeu*aTdh|r_~ zxv9*X@q>lP)IzR>0g_4*u;bWR3L(D;nUd6!a$%AZ9)lXU{3)tgARFkwTXq4rxVbhv z4=tQk-KNIV*n+S9tWh1Cd?*`oqdQT27#0k9pGOagQU%ZdA`LjqV_u5SxJY=_v5?NK zr?kW3vkl0{T4h|joe@$QA7Ivwifaiu=ts3SWb$B!m&pUQoEeA_QtBsH^mZ+j8;__n zH|FYN-HB@^u=v;Id2aHXBB`8!_f<7d+mGV z&=jU8G-inHSLaTzC;cZ29mW$SM4~@B<3-w`0A$(j#D)_*Qh&cCQ!3S3YOWK-jUje5 zkK=tWf=+sOi%njiD~hL729-U@o6F5GKtg9#vrCZo?aypM*Cd`OZ{qx zBIq9e%=2oTr)-$C`403Z$ikMv%IVkOW#1k;bl@4q!v2%fCtjd$&a3FZSpK zVO#Q6II2k2$dA+qJ$f7XW;y-6{)?=CnsK<6IVLiP;c1+_zZ49!DF(4>KND)28^*k27a1o29vA z3$`m#p`NwMBhcH)jAPtK^zX(YD*oX$?XMiO{8TJmB9$O6)PXLW8cNib5(b*~-L zT_yjvM4Zu^n*fkp0vrrMWM25zJA8?3_|BD}a2Gjm2YHIr)Y1U?G5n=Adx>1JM7)tc zwx(Y_31#el9^Wo$samfux4@SYVAs_qFGED-Tnf);2l?BxDBzkL{26VrlD8}HFR&a>qvz9s?9x8KxTI-9ZI24rdfX+Ut-Sjb9w9(rfc zN95Nwi*YG#bcE#X`2Nwn`#-m4Ly`M=X?LK*ukI5`)jp0k?nh1!{wxj!%#=xyqqRdt z3*^>b2WDHOw>!%e^N}CLOXNf5uJRX4#i3VCmuEo_9W+uZ-!>M@b+k$UQS2+YSC9M0 z%gMDb&%fUL#mCeDp#HJEG@pFrbz%E)Ak0%Nf$~Y_OvaYDRe-4RVWoL=~$V z?g9`p=|;tc&Y94-_xNn&8Ck&1xWLgs2kFPZH~?Dnkbi76A@&~Nly{fN?;hM)9pPwm zK0QF>_jsXPy-2M4XP74PTVug6nqI$KW^s%z^%Z!RNtF)rgd@n5Tc$3uVGG91_)#vI zlpY`*4vtUz{CC}rO@#(|(BI~dX#i=2r5WnYWNf^B*Tv9Uze0m7=$N+?ExAb^vKT*${>^@+n{2pK32DKkUG_hIMtB1# z66GO_#Gw~Vhq9n_vl~x*Z5csottM9{8`j}|U&2uxj^!nC$&k!!EfOFbj=j{Q_aLva z6%~1(SBtMjF}m}( zXW#fze#u;-!9C8kpeJ)4LtSn6r?9q(-jaTNbCJK$Xw`WIZK&qD>A!$huUN__|M0_T z1Sf41SM#s{`74fgf{yzMglXa;w|$mZ+=@0WuA`<``icBkA*2ygjka}78 zFv$pMc-zzbG!Nwlo}!QaC}wL2t!Pc#{r4;0M<1t0pEiBHa31}bO(-b+8m&imr4OIr zYG|4<#hVrK0_g^Uub?{Bv3WLQEKc{QYc*F>p-K8wf}QY^0r$#@!|OEDf1Y{ zEXqH%L(}Nn)*(M54!!{*-5R8N>|5BLz-u~>`JuVyy+bN_`}~y`{o@6w@6{w#OA6c5 zcr*PjqDx7t$!*9ypV_^f%k2(w$ck*gVOf!^EgDTUU8FN9?5*B(#>AVe@fJ48PB&#HZ1{lIr|owIDX zJ5PQDc`rN3hfZm2pLDo6-sMT&1+I(d)G5c=$JimSVwyg*vnjqMrM0fr^a;AQFzwULd-m1Ni<^{_>79pAy?}ugD%cidv$;s~&Vz3-8ma>$- zY*YVZPW=p|A+s=VTieiCjM((`a{|L`R_I3hu}w^%W3T)zCi1x4ZRUt)A@U`bvXXvt z_R2SR2n@Y8NTXM;-L_5h(3YXz-T#lQ=BncU2&uul&>*?Zj-F^qPp&AuG*I-$PbJ}M z_z;dx)aCjx5~Irfo(Uh6$CJq`-mCN7=*geC^$=qAOj!o`@+!ZJTE|&2jpD&bv(^t@0Tjeh>LdDXCM*nG9crwHuTkMdiCW8xQVylLuJF(d-{)E zyze6$?!Cs{UUPFSsL-xx?wW*krjiivPF&@rzbCq6>uxgO8SL~pJ#T}ogKpQ(Or`p|G4ls z*BohBK>uw4u91dSiiW+FoQU_rJa9q{ABE}b7@DzzWFYHhzeaXVqi-&wCr@s!Qg|Mq z6Z3!LO2Bka4W1qyr&$y5O8wuwc>(k2UUAE3AfBhVy{r#rvr=)9)CL1oJlPLk)(##Og&Ggx1 zflbWbA192k#_ zGr+I^#0U=mROU6g)C?pDSseEr3@np*WQs%K3lcPgZD7-9yIp{M={FDZhu3Swhts~C{4M|l{C(!q z4CG-b=5b<5zs!~_Fr9=-^?YQ{ zx@Vu}uf>kd2eGv#dp#2QoB99QJ)XjhTu9&HhlP>7KdP>Ld0THXNj%^+bJEg7vu_8pKs%7$`5`CUX8u8=jCtd&?JC# z%|9-EDdlP&Y>lMRZ{Hp@^}e`jAJGpxZpDy2A2Hk1pA@yd=_29J>uWqsobsKYYU?C= zE=6s3LFuO#%ZJAg<>f;w(;vMae_K%wy;FGpr5L?`+K&Q(ZC|ad8$X-<^7SXHmH4j3 z%*4RcE1y3QU%c(l%JO7>HPgD zX%S+3Bo8o3re%4}8SxdgLXjnvlKF@YBe^s?eOsc~57;X}SR^wsF0MZP^PV$+H`V&c zbul3uz1VISAs;R}O4tf)^4S&DECCUbc|E97VB$1A;s@Q*)Fp@>-?e4NURf-O< z7SNd|m7IK3yrSBsr20)a?v@sSt}oAmk?brQ(!FLnq)q~!LoE5y&8pMdsGA?=L4SO! zc_r`&X-(Id2#@3=o?3MnOPO8{<=RCQ0+U(%qxen!8$ayZ9_f#Q0C@n2*|Tc3`H&Kd z+ys=_hQSuFHQmw*sBv=qMQ^qZT^rFKLhsH?9wBiy^~cfM+W==GA9(9~)Pei7UA$19 z#zm$MM$XDsFU9xbX+1weaLD4xL4bYQ?y;!|96QOPjp)8>>gJ_&I%;tA4fcAkNfok> z1<29D0Qs;nCoLQOGpjGx;{qB@U(gE3vEy+a&d?8tm0R18iEqHXqoqeqBN6@AxiR(( zlRv-QGPaRDtGs2?-jUD^;Lggm0GzgAUAi-88~*|)k!Ki320)rkzxl)LUbi+7yP8+O zVUp68wV-G)CUQj%fQv8oT0#vzQpS2A*9hRVa2Um0O!~O(g1T>A&66@DgXWy`>CPFbdj1Pn`EaAJYRWeI zBr#zhZ**dt>RMm18-uR$SfPFYfJABO2DKZTNjEq`8sfTdCj-HrS8E^Sx~lb_Oya=^ zk*9NKA>&8R>;lL$LdxT4#mW=tfd6=JjkybmfJ|u(<01=s(ZPwT9`Oe5@-V1s&HW3q zti|H94iSJ4r6R(XZQt#YiNXM2K^&ms4u44(bS0s_ zlwS@JvSAk2#Y=lT5S$616(I@M*n3=1o-?m7u76tVC+FT-Y>HfQ+_A$x|EyoF-$iw^ z6%r{N+Irq(oDjhoH5?X(CFoMU&cyesUMIrvfx z`~6fOksb0ru-iU~Be)j{^?Sb<8}2;~5O#|D{rmeb_jw{hIn)Vk_aqmuiIgYNMt`y$ zgH1`K<)P?!<Xa>-9?hk7fZ-mp;UvN}_p3&k1o$ltdEr1?_nCCYc2PouKp z#p1qazhf}HV#i`oSNKs5_4uN1TK>*L?BK0t4q(8;o&yPWC)@S@_=7R$XPt$;c*+8`S0Unoljfsud*^e^13`go}dB+PivBD6MZdkx~Pgs=y`8h zIT}2h>(+o(e73sq%ba5`T5e##}?z0P;mH3XE zF+0hfCE&%BNJ6-Qvl4f4X*>B&MhoM#ntDCqE)I{3z(BY-|*ZFjB zc^+~Auw?uw;krpl7J8k_|GkY8_8%Z`{A@T}NiuVM|C-0G5P?c}3DOBaO}Vs*J6WXk z*ROv;zmG^Ubf`^4IB;j}JJQZB?XnlXO0*})iJ{=QUnN@$l&iNfeiVma|fBz4FkP zDza2^6aHF~!hLXf>sj^K3}Byu=e0db+bkSfCmNbZ3*e3(L2`ecIA|3F4&3hf0-}rK z0%s;w0*;ixA3A((>9+p;d*b3ChVMmYubz_%QwCf5QjC$oTFxUhSKWhWMn{V-k-mwB zmdezvkSfSx)ler2NxwaE0M|ieY&b8ixdN!NCC!5VmaBUNaoRBH9(f{;BSN2ab%`aC z?OX>jXv}IRSVB8!23$}SKOtnk0^Ats7@Ldi*_Fb5oH|C@s9n!p#@qYR*hBk! zHAUG|O66bRnG-{6_D7Zv-Mej4ZiEPAEp6zPW0S~Jv5wMo-k1e*zh^)%dvHJXe*^%j zEQF8DkrwBm8|fbb7)#)zB?KzU5)D!5Pn2jlBMY<`JS#dnbYLyIMKlyizZ9#gLe6j~ zSKDzVG$~ux2=uV%Suj?+YDVP~F3dyGwWR=agSqG#?rVqv;w8!<#E2+ir%{U~>$$oj zOj5_no1^Pb|JtrPcLr%z>Y~MW!G#t}t^GZ*oYRs144wC^e{8KHx{>9eiaZM!&8q%z zbn6WIl2)`V=*8z_!&HU^^Aa8#yk)eC^i;%|f&|nmYj7ETc&64-Z~_jPRsA*ZryKH% zg>3-K8$jN)OC%LU4`X5X6H1YHY|&*>oCs9c16bH~1fv>1Mb(|8lknFf>9WTTGPRVC zUalo{LW6oHg6&&gL-YeAK@4yC+B{@qygBjH&VL{4(7e}lXuroVSE;3iQ2wN@QnK$h z&!!h}D0C#|wpJoVtTL5u($yW! z_Vfc3%D+8fO(?c0Yz^8h;e& zu%It_;EQ8~y+i{THp9~2P{kH>DfheWB3Vc_8o?Fuk=k9VQzEd60lJu`$U!furKiyI zJ*)^ma~Fk|0B8&?A%vlYDF%yVH~p~(c^wrD@nNuqAs;p%VQC;sSFVts--P#ObiQVd zowogRut{|pUVjvDNi?n=b45~X2^Vk}!1bgU+CBJ;=_8<0B87S^E)!fghTlW+4c51; zR%9*-KWpNn*4}t=yl;%q4GoqWsLZAPJ}Q=MFsIAcg5moLJ;w_)Bz89(yEW})$&ei_ zGY7g2G?UU*s$vQ3h*q~E-H*T;sZ+e7Nv1RDQOt$d4p92{B?%TI-159uh{7c9ZIGHn zb7|6%Vk@MgR#}Dn-jk$rJ)3ORC%pOk-`h*Sd4leZdnwLKWXB%(hV%R5JCvA{R&T6M zn9=5P1}jMiWOG{4OZ5aLw2MhRu8>-yu>i59ghZ~cA<$;F618BQw&Q)LpA=$q`$QZx zPlWN3-CRp)pThkbL@sCSo_*$~psSjfgV}&qdA_iu+j3(rlXc~X2J{*Q58jMrC@GNG z^92RFk(VePs?0|!ZhpIUenhIynY{W&`#tKF=EBq{W|V53)QP76!TIah!$B{$sixQw zLvN@4Z7`pzhf)sCD$)R6%&Gm0v?dpg5w~+f3KFg0`HW zvp{s>%~`&??3qiRe()>Envtd2`Qg3+^>iqw*Gsngk%JfAI2N0Y9DF_|6{{jJXg0CM z324ywB6O3y|JxHB#0>HmMjnHwMbUP6s>W6#qQ50vD*x^)G@7v~G4cBz4K=d12wo?( zHbMH{6o36d*l~fdQr=z1nJGNQ>@@*lrj(>Il_|UqT{y{jdJRKVgsYVUD-Cj#o6&yH zWR{D-61g;~2w3LsTakuGU<2u)Zqc4N7b-uM=ibD5{HQ#>rc6k1pr*DKnyMD1aXA8rt2D zW2p|D;bV>FNBu=h%!jE`o;`iehgETk?1+4&4{Hlxn9LDW$1KM+xn)&Ol#(dDH6u~G78(?=_ggJ|A>P<== zt5sr!XEMGAWp(bRp2l|SMdbnmn>=}Wd|EycnSXjXVKjfi(^X^M^QHPKU`3d|Dq}>- z*_*I@;;VhPZ!;(7*v^^fdAUR1m(jc_&`}GDP zBLzc?UeX^(*Nep#ARUUgd;a>6*j#=iK9V~VGW2F z$W={q2tNok9GsAPY#0~yMzAfk78QQT2>>0GZa_>)q3vDo>nO;DL+ggMMkG9b3uk_WZM4fAtTXs}fx`CoPiX`t5)DavY9I(?m%yK7t2c_H8QR0D zq@=+i3Y4K+o$jJ!k^+%OpTCYoRwHP@F@9%3=j1AfSoI{#(-OKiui` zr}FUFY`9XyDTjKsIh60?tk1rth9#2g@LU-?9RJ1zbgf?uU>-`V-N#?^J89uzIAg|+ z)!Z~8R8>#tM^6s0Dpj{E)F=GO8K&BLR7&^ z7o2|UNXdu0Q`(DA8~Fl#;g*KGw*!}zND5#^-1p}jb`vgdq395&)#D5(GimrY>Z$Z3 z*U%Kk%f#jFmQ$#m9i>sZx6cik4hLmz6}S=4EFDRj7a@&#jaNNVk1a){$|m&Ki?DEE z#Zqm@G^oSF4Mc4pUqbU3&4*R*c)ZGU%VfHsQ!5c8M-|DlH$%^| z88z+Ajsg<5myC@jT#i+_5_5B^z1H3d3xf`Mj$;wKc$yv4Hi7nN=wsiiIel}gdC5ux zG`m8Q0sm10+wQ@0HzH~jwm%-8oo7X5I#LwyXbRU2k!I@%pN)+jVt1U1VJ>%S!qbY* z`^g)7SeaPTe)qknu9srM(1UUASIAP1ov`oX$jz!fXXh`hwlx&6X;(>oakN5&xS{$4 zlBNhwzmwf8Jp8Yy8HB12vffzIf3Lx&5b!k|JuB6f3;Fi&5WAz2^z4CeB>!bRZNA^; zCM8`M9#s|9`DN(?V^reNGEc<@)=qK);WvS9NBcu*sh{hod$?BDq^?05q&EYxE&W=L zp@u$f9>AP~dFz{LfB%!E3`GkJA72I5pi2#HWu7+4HDkSh`okp1!^NORc2t=MO$3#3 z1e}D5rlBup31=NRn(}iowR!MN>7hrWGhB!3oS2=4(}^1t{l9ad>T*8VRWI9J?u1KnI@8#j77=@*ZWCAuigf^Ya= zeJ~CB+Fm-B5@NR(m^0Q)rd-RCV5{bDx%y%5bf{yj2)^2dqw2!Jzj+VbAAyGZFA_o4RYUIJW2js3hpG1}(Q)|74wmc~<5*#Jo zb1Zmfnts>>TMeT#-s6zfyRbKrD#e6J#r?dqjg4Up=#CmB!cwK9B6tvYR>eNXpJ>{_ zjH%_rrJ%p}cn|2kewkqS5c6?|PBg6uE@an=G5zSV0d0}0klB>OL8KqsS*rzcyu@F7 zu_ur&OuMBKZQ^e=YZm?KIf4wwdBO_M$0x)oRpa~ECW1XP$I1yeO=fn5J%gN>J6;&s z!0BvvaW;2{Pc6YfIIA8v4Xc3X9g^N$51t%_WvYyboHXFfs?8lKt7t`MF>#%dGUXga z>Ht2nl<9t$vsn5~^2>e`{mD$Bs0;^NgC}Vds z-6&I$k8lsK9fH=_o;U^xH0)TH41 zm5f|)p0gcVf6(LBrra#lk6~`Uld=RIe}1KI5P*TXj&SOnF~Z1_M5 zcLp*&KBG|?YBeqP=E0urMpP%&61w;z(}vNXnE04eSW$E4y^S7ZMDu2=w0;yj#@)jz zCt_m5*{5|Y;7uix)9`!Q$6mde%q@xasN44%G8x55dFLe;k<|*O$}$jWz8cjXf@BV}y&D)k8tnuzQK57@i>;uTxGF`hhh&^Z#>z96B3oP0UWE9hkQt z7>QKbKu>0&s)6{J1+pGo<=0`j>% zmI)r3SeH3?(B{Uyjt6h({2PkDu|Bh|CIS0}%8sqCcb6wOWBRP_M9_3WHO||=!(*+0 zH+n}IX08S+lMMo$BZ4!;>egj{x+BbL0-#m& z)cB4j%m%B4oXi93_C)x`RJy5bK*%*!xM1^==%ZsZ{<)q01q_@6On|$qUx4DpaAtA@ zyXIJ#$d;zVjgb@F6nCE|5h6~;WC-9EX;oL)Q^<-5CD-HJc2w)HLA6r&K`C4C&j7GV z+JyR2w~897A9SJu6M?4C6XN+M#0-MZne@E`R?!w=^;%fkAh`h{>B>h z?>;0s1TT@bgV-`SxqjRI&Mgr|xqeb7P3acFMwiYurN32BRKe!&1Pr{1W3U0d)4eJPx z=*oG5<;Xi8zgetgQjO4>I4g*68kqT(*oY;KrRFqi&ZtN@I!B3~_ zQ?0i^QM7)ps0K5|Y8F_t^SoPHO&O{@g0dN7nG`WmcAI)@e^f*g9(x5Yk|p%$9Trp& z*|&Rcz1>BmURG%XDejD82_l`=FGJ0Zc$ywJ@tOoCwl*~WVEyvA-*+c-o?t#Q#4~JE zGOe6ryf*hQHv@dghakquOkjzK4NlnSpG)sei3Zgogspo{`4r_b)yaldt)H^96s1!I zXJ7)im#3PypOKl6_)s~k;?S92w#KLz&D*C_yH0Qp`J8Ats9aZ}u;2ZA`d`zqm*L;C zZW+NuxH?jvaP-@TQ&WJQ@ZiQsmF8Aqk!s>SOH-<62hIoEd`wj&NTtPQW1%m)ON*g3 zjIhJ1EzI-STsKB^M*-X})z@T3W624$7KzJz!H3>nnxXh8aW-iV-@rGN9pe+hUg-img{g$Im>EF0Ki$BNRi%K*2ir#Eoh0XRr1@eJG zRyCHmz~t(9fi+qxZF!*O3Dzg@o0TLWkCU69&72LMh-I$T29OgqikFSEMC79JHlitYVH!8`(g|*su`SakF?7$14CEtt5 zOI|+1?Lf6oldl_P33zsrIu-nP1S3CKUw#iX;ml|Y*ntww25huQG0O8 z>dB~hwKQ6dV+r;oRJ1C6tZ-3Yo4>_b!-q;Rfsh&9ES}$@^s|bNxw-kh3k?5agO*^0 z0tmC<`4ulqSe)I88ZtK}kG>#OSig$cZ8OrjiAwL(Bdbm#4--Zo5qgdlN9=N?>TrC- zm~N1Mvyw;2bH^|z#do?kg2(ciJiY-j`2Pj&0}=eXSU{8X^MUTXJxbE?%z0z|vY4I9j4?3BqMv7x7}w%A6|!u#}PokCsVWD&rzv3|T1$ z3#u%Dv;f;OiHme$cV#;)k_C|#;UZpKSP?9uCC-*OT#R%%6)VB6guqfz7EoGdZ3zi3 z)3{ja(#RLHckCn%mbl0QEek3wfwpks(tsDk_X-=9nzF#sQWh6WUCR1m`W~GK7SY0F z%K|R8x}1s?7guIrkt`gvOxqHL3yv-|fH8khf?bJ(1z#3uT0(;hKQ7F^c)S?|u+)t# z@U(;mmvCHMbYTO=={-293=4%U=(G^nvV@D5E)2lP5EY%|m2Q9(DB?p%XUebt(d1T)7hvRs*lrKK#4v@F?@go~{%ZG16)*FNyU z!Yd0UEyAUNFZOSjU=b~_wk+b}pv#F^iEw2emcFvE(vpS?pe~hw@p*gFTxkpoF)eGh zB;w+v3%xI1Z_5W#SlDGDriB<6H(fY^aeOyE2o}*oWy?A)p1SY=N!GBPQkre-JF9CEJ!IT!?hZCMNJzX1lTqOA%T4 zX-N$(Hn>FU5^PNPEBlZRiy})MT5^Mn4KDGz_%W0BQaxFWrL-@8Z`wz}B3kloF~Y@Bmx8`{zF8k}V5u%kVOorEVbG-L1;Fyx1 zl&avFo0y&&l$w}QS$Hzl2B?TFz$e7@-Me>t_wHp3_{R?v5%P3#45_%4l#n99dYHw4 biA92ec@_in=Zy6afU*ppu6{1-oD!MgwL!-o?em>+9>|Z^cI%w0000@NklPkVk! k{|7<#s3wQ2(a9yi060|wscg1)3;+NC07*qoM6N<$g0Y@#h5!Hn literal 0 HcmV?d00001 diff --git a/assets/img/admin/browser-warning-box-top.png b/assets/img/admin/browser-warning-box-top.png new file mode 100644 index 0000000000000000000000000000000000000000..0de196ea6df6dfe37351507f33964a2a1cee15d0 GIT binary patch literal 348 zcmV-i0i*tjP)gwa;+9S1>$?B|0HH}lK~#9!?Ayr|!Y~j7(E-T@vq|#8mVcl?1|02r^+V`7 zcVuBi&SR@d8&})-i`mUZ0M9x?-F!kDa> zXF(W~74sqpW3poQf-oj4W+w<^vSMBZVN6!cy&#NfOszELNf5?l#XJbYn5>vbK^T)2 uQy7ta!clx&CsfqFeY$sSgcbz$H&S2_~RH>sE49w_vn`Y`@v_YEuEk~Eqb8%biuve_@XpE-XSnj!Idzywx@bzY$glIyix^4oHmvS|JN`}5s+ucTG(%(ci? zHR-vq0+ZxQP;^{&LyD+L%U4QThCi~yja7p{lBjjh-|TdnJNM|LW{ybP;?nfnSmUdg zgSzaTvWWlmq+)rvM`p1}RgY&*Lea``G)IY*tAz5`M^k}5q`G@BS~RGWZ-}K@enm9L zvq;izV*rKM9Z8#)n4N@(h82L&?9yo^c*Zw3IC+i5v&E8;tY_VjiTUiZTwPrJ@0NL< zJiW}0dzx!Djo0qYB`8&;`}EXOo8E1aSJHY>@XsFZ+k$eGV(#c}SX(=AtoK;+bX zxVXL|J&&EQcCw~n%Vj)TPe{f~Fnyh2tiXhCmORqk#-zMwZj?#r;F74gmjC&&eW5y@ zwpzlMf5^LH*uOV*h*t6S@Y#ZT+RTaM(L!8UPi>H4?8+we-g%pnjews|?9*C_zweZ< zT1-qi?zso)q-ACf=BDkBk|HDz%L-b zFCg&ICIA2bA^8LW00930EC2ui07d{q000R80RIUbNU)$mgR)3G(X~kok%te(xOwtp zn~sARGiuyeaGNeM9QYL|z@el`lOqcd+4Mse$Coe**3v~}BnL$$ao$wK(}&NWIu(g& z8M7$HTAM{6Rlfc z5)oMd(XSaCo}xv2b}wJQXh-%`#E%GxxEud830dIRj~+J)=ncCUtX{Hb&qf;y)eT(4 z1C_Ob6hN|q9z9s(jY`>aU#Lw1qb=KyNG;F;H5nSf#DS*=91uO(!&Elk*OQ}WX5Ejr zqQi)9En+gjff_Z`B0DV$Hn#W6eq-R=^=s$2ExH2 zGR?iF0F5`S@<0PvX88aLGx&&4USZKDUSIue@{%KT=)nXMOHS~D17$E14hr6Jz|ICY zD1apxU|5mJpL}BZ05mIp^-YQP~+ zF1bwM>=bLbkU^?g61u@2{apszQ%_`c3pRS_v4t>^ig4l=l|lf40*VydKqAR%um%+p zNKit(_)-yVB49LNEw+h{CGcLfVkCkeek5~55sM%J2{$Jo(FiSN_=3!xdcrHu8h6-R zLK+8z9P+&qP@#b*{jT!F28ft7WM4fTGz=Y|h$~1DMZECB00RWjNC4#!0s#xFysL%* zRFLuUJG@{3!_zRFF|q`A$z zkyJ)jd``$r1=(7xXZB6yVZ85fK&3Iq^hc@j`y9dTm!cl%NpSC_^OwMnHi+41xivFasQpah+p`!V> z8sHx*1kf~Il){DyNFxpf(1Km~4G2IWLlD%^4k=V%1bpDbEJ(o#W0+xDWgtgAPO%Or z{395C5C=A|Iouns$3fDhn&sY_!iODD7<2CcwGMS(ZZv~iIQ zZIDA4MFzmSdGdxhwB|?aP|!KXV-hlO!ZozI)o+4R3%?9&BOQ6s6gFaoTu?$PsvrR% z9N-LfAch$Wh|~kJaTgeXgfPk(EJ^@yWZh^2` z?AgzH$^|(XqY7jI!WeYRTLHGfZY|&iX8m@6&1Uctc)e;?oofd>?86nRXvH+%8Bem} zteBRg2W?F;gjDcv4333C9rQ+wUF?Dws*75CRXN8GjGzKC&_YY+>(bHMp&H**#UjN4 zPuR+Dr;TVtPit$4FiN0@V>p9?n?d6`JZ)-nJO((>@L7a5SD~ZzFo;!)ifK#(6~a6M zF)^CrM%Zr|%NRn7vB1objrR;#mfD0VEUHUL;j>!6YB);^WIzmA3n`dJGEm_=>}s+9 za!r=Q3hiN!At0d);ALhB_T1h**Xy`*JjNm7AcG2Am9OFiXEi_pP8+B|8RE!CFX+(7 z6Q06hKxJm)%X3%=0(sy#z=%g2@cK$@&o{_g1;sZ5frGE5 zK$ux*g$WCrwiIhx4wQ(vDcn7WdyE4D$y0*^K7fFBTp<)v!0Ts6z}(UHHPJ!;hVDLW zKne<6s1Hma_N zg=JUoO4xb;G9fe2y4e-jz@qe=U2&B4S-M#fk1*K z_!5860TVDCC$I=`wg6pV3&(H?02qaAXM+I<3V`5#IIx4#7k@ARF${Rvg^(}`kU%M2 zAPs8p0fX3vvKD}C2wko~dsirZJFo-{$Pth@0eN@=tf&Nn@P{?LZywsQEjh`dMv)fX3kU@ofI2E+J$ zWat3qXNXGYSJhBofDnhWWCALH1~?E3Ru~GVh#NY94inG@^hl3i;DP$r-S>BxvXU=FVU z3v-7X1n~#xP>&D!2(PG1P1t%aX#=1T2pfq5R|pI0*p6tpumsgek_O=jT;Px?=?&6g z3vj>#T3`Z5ISWX+kxt+Qq|gnpkbu$`3f*9ky*QFQc@R3_lMk5#k6;RZC=Ej34i|6% zu)vP5kd`}$2JFa-1xW!|nUxu#1K+?1DG37i*acl61UxVZWod;wz>eL327xJkBk%@s zDVH4a2MoXnmGB54kOSV(f(!5gmvEM8NsxW81aA-l38|Pd@dw|)0QUd_rg;uSa1K`x R32*QQ+Mo@dDVG5O06Sn0stqPU-?eF;$p3mp`JpO@xPR=|10B_)%3Rrv^HaapId;6(C zKC*BYH=Sh;JMNA+eQ)tGw5)RY`SZt8bGX|6Yn;-a7m1c9i;EH-41S*l7soIG8P^sY zu**vUKiiV;YLJ{#>Rx3NUL@*dw7ncp(S4CZ`1^d=&!_gw-!Y_sd}W5&QVaI)XU(_q zU{l)4E$1IXnt`h~oD3B;E&q77$9I)|UQ2%G_*AB0uM2MZyVNe>O!B^@_p|T*<^mvO zJO4a>B!So?m*+*T9w=NjnP#9;oqKv})9)!k;?!Nif|AdlKVLm`sLz*(H;sG|2&tCS zsK~(^%6C!KUCrXnb$`CyZKJK+f}K8tYinzJlV?AAg{%5rU~ZXXzH!ejU-jSf_oXKA zy37fG{q8pVQqC>BJu>)awjQb&Q7U&57ltk_&mL;Nd~%_N(QJj8$<-L<(TgbH*{75H zHv7Iw(wx1UWnq<8TU$GxLerq_^VygdS|@*h2cscuZz^2(x>tI&Jht5)`y`V1HW!My z*1!DIXjj9dx|O(^@>11L{!+W+c(Ru8{_CYCi;0Pe#dEImQ>UVDJ~|n1H{h#%Eg+zN zm(IjN?K3CZm#2ANqK3%$)Pu>_m1*<`O#GjjkV9}pf6KKmVu%!3xruu|LeiGc^P9@h zT&neqZjiS~ANTjX?%k@j_=?#C08KF_!#v}{3nzE{Uf1uc^-sE4RO9n=4z$@+#y?d_ zrEZ+JHSECP;CiOcc&f&1I`iFKPx|j>h#|k^>KwDHZ9V0I5#@A!d3DA8 zUk)Gr`t|G1*obXm@waM@F!Yf1M#e>oS8Lr1xHo#gzs{aGps!M?*o#;Y091e#@E`x* z1OTf5711C-D(T1q-vquQ)Uyp%os$Ul4oR!zh0N7MfN3DFAcSQLxXOUII>y*>=h-S& z_2aXIcR~&A6`GKX8k(#xtEopf%k=Ce5q90{6SwnM$(^1Ku0NlOUVEjiO8Wgu;1H$J zB>>=5m3z$$F_JDvio(_oR(2IP7J3TG`JtUYtD~=*7wDnYmhU3VD(x@J-)Uc;v^j9Y z&ekpQMValtjZBLn?#8BvxR&i^@S5(Z+tIocp%rh))7$I+3Al`tY%$axcvT|*aWV(@ z%lTg7GG#!XGa(bwW&}=8W&a?Xmh%`RRt@`7<@gIF-J~ za)R;a9Ya^by^m%ZANaGCkHmWWOJR-nbZK+syE8bl)rJ6_O=I1%(4ea+PaIwY2Rbdk zHE4!g(`SB}%wDo;RT2pXk^!yY;SSiOOl<4LF`3h#9tyfSna|DvDuY8EFOP`0YHw1q z2|#Rem^C!B77_o3a8SUjMY0mlD?@q+C$BbB*gz(ylhd`p&BLtu)hCPn#wWQD@@3LH z%UOm2y>71QQ~j7ErVQ}#rsl(jDU_Bi+^554>VI6#pEkzte$ zvi#?4MY^=%ShBD7-Kpd11&NadgoU?PvI#crgZ<=(Wn8)WpK0U{vvex4qmx1wd$pES z^1au__@Kab^&({|?!=+ta^3 zrw~_SSWUSaYknXd2C&4bh`AB@^a&v)e!|e2?T7LnZzWqhP5LN3yJ<-D2G>>NtSP5A z;M*R9`WRaov0}Q#LryT*tcdy6)+-E@Ks3LyvzirLXfqF^ zbLvX;%LSn@nyhdnQ8PtM+_dx4OK_EG>mwsZW+@T^NQ^vvXDV_&(DuLDLTO<8Mu?zp=~9@ z|LP{7<$8Tr&9X(-+PGGA=G~>%1XdoDl5y8#l}gUFl?BEvz4iV9_d?y zN$M)xn)wZSqP$v1$h_ioR>Nbp@aMx5C%SKettuO=PffnkdfL&$h@iM3@M3 zgs8Q*$Z$Tnpqbg=(W;xham1ujZgMfC6fG27I8f$mp}BH>;0CP_7Tliq)GkAjbujgW z;XzpT>jx>6(vI$TOBb@XF-HuG}huZbr}F z8Ngx+%e-g+0+PfXItTu&)(&CA@9$Rv#mXzn7#7JxGTD+S^Ve#m=Le|xveT_!-Vj@r zV>j1p8(S!Fcn+ON>f6hh!2oAqFiNWqTj>j{?`E}%CGg-%l3qo707e+m9^78(&>?G(LX0>GJz58=n z#uwR;mQz_3{evi=PhlJofx!K2afXZ923hJC5k^*)(pBE!I%!x zSBSzBV+emN^h9$#PwdYe{SsSt-x2XN0045D)od3F05KeO7yvwvnT6p@mup{W7p~|a zS$pg9>1x4zK8Al04c{LUZ>W#nNBqE`DQ=-ZU8#EV%{Gd|Vdq2*puTAmtlM(-i+}E; zFmcq*Xbym)d`zgj)S9bo>Bs#ZD<7{yFoNfMvR1%ZPuzJ7kPh5|x%>v#yo<;ORw3ga zFX@GEuJI#IB2$LK1~bQ@VYJwvc6M;>oSf>$%61)K;XK8uznR8E`W#3<8TO&ULgI8v z6b9Sc!3Yui3mH{R9Wfq(>R;(Jy&B%26c{)i9+U#X~&0=b(J` zdt(dZ{-h7;c}xJ%G+znd<*8x0sQmoXz)7o#?x`o%SwL3BUptIC{ z&3rY%O7`vkUTN`>58i6VsyyNOvxioYUh|uIV;>Q!Cy9`#q@3=HSEdVc1cm!E!<1kl zp}#5ie@c9)?9NbDJ8hL<3i40K>RND%|7vL=NL$x>Vz`)yG7SDgdKU_<>%v*j8CK;r z+Ba_7zW4j|+pB%Oj&C2N>MN_&zDo&OA>0$#5-512q37=mPPU;{F{|IgZKTS`;N zDfX_+A{6hz^JM7twc~x*q!sPe#MB$E4-QU}9cE&$y^SiV0+3C%D>0;uAH8g)aH=AF zv%pP>QaWVc9hBg0-q$Wk(Kbc{qkn3-7I*w0^3Iy_Hp;LDe!xdl&U*w0tJ2$C3ed&`@HQ&Ct`pEm@d(_t#y}umrS1F#CYM^I#E))JKZ}q!JiteQzaVxgmbyo&4rDpD+6~jy62|Cl zg8Vjdjy#8A#XX)WhvH@A@HuSAZHzw<8$&;!bBe<2JF<)rMGB&q4iaU;g?Y)tEVx@h z8Bo#%lFV)iILzNJd=6&_ib@fD1RZ)7XI&&n*SUG51|jN6;1c>~8x{tvb$H!e?Bbs@ ztRPWYq*^{nPeE!#ibQLPrCj1}2|fYk)NR(P4j#aF{G)wcWPrJ7` zZ8qR;_YELhWjR1!@qZEUL8;ikSfF+_B%0B%=Te@}Bt7qgcE*xsqz4 zY&V1^t!~DLNq^IzXA4X~rINyZtKqB?fX@@Lk^DR=-K^w4H$Z?5z}=>aG)wj>hC(+e zNigP*PtqBsaSh9C@e<+TH zNr}weggtDti1j-ir%tE997>WBKUB@=7oX(s!tN-~rb=+52&o33&2ZgUpw!C(ymPCV z^3vU!h}V@lGY$uJAfSuXFu|63yd1|7l-2Ons0eBU(+YJQ>cph{*6cl7x39~CO6Rb_ zePayH- zbB-MxO1z3*(J9iEmsd0_mJZy#_<=}ML|(Y=hxHK?4x^AEm-u=S8^a+4EnxK|_|AS& zJR5tAMegq}Gv#7Fyu7Fb(5OjjqjO3BMqc__4lX(qVmSH7oGWg9qRj(1UfxAgo8tL>o|AVnLz^T~v**H~7;*-1SI;C~=$My*T literal 0 HcmV?d00001 diff --git a/assets/img/admin/browser_safari.gif b/assets/img/admin/browser_safari.gif new file mode 100644 index 0000000000000000000000000000000000000000..6a44c965f20a1b5e806e492bc8c0b6bae5195481 GIT binary patch literal 4876 zcmWlc`9IW&WYBI!*MlHSIV(lO|ewtb9BsZ~v~o3>-$Gmdp;NRm`< zsgPAeViKBhrbE-AP%(56+MUv;)v-I@zRy44^~>w={NcHDS%|k!j2KuB{9^>fRj-y_ z?2k^qKL7Y%6B844Pv1Ry^k`kj$Em5Qd27DLny5;kt!IQik9u&}TcviX#% zd+^1J?Ma3I{`;@}mU9lfu2ygV5ijYrimlcXzbrk{5Onf(Sk`DnL_}g%bpVdLZYYc2 zwX06^_|1B!;o;$k!`FYR>a$o{?kpp7FSNM?A1trBntr_U(CHiX#}0+;D0{TYV`O;n zWOc{s>h6L5{yhcPCdc2n9DKAVr}TkD>z9iK=dWk{smm{^ICbuFWBZfL zYrU((r2k3bt;tvV`<@1@ONlPNJwEz!RYG-m&5PUJU0yL~)@OJ0^ze_~=vlFVGm;Fy3)n9Mwc=4A`r)$v- zdmrie^y!nixw%|BX)qW{w9kTe*52%X_VU#$>*y1us@u<>4-olR>jpoLj*eYv>-+UY z!;>dZG#bsfFQ3=k{JW*O+3L4(r81AmIe+AQTUkZzC13uRuU|Fo-77B-9WOeyt%u?doXo4dR&w(6mEI+}nk9LUz8?09jg5`lzTGdrxoi0A(}9;?{`sgMc+$}Q z@b};aH}3WtjYiwg2nYa1z!mt;|2qNDjewCcD^x{lf1mGvoO!%kP@at1FE0t@$2e`F z|F`#x=VVMru4u{3tVl!TS*26t%oJswNFj0Aa*^GepbtCgy`<3Yb8f%$wzJYVvu5UT zOIOcu4YsOrr9UXAC8L+Rw2H-|B2;Iqxn^E&FUjy-w4He9w!EBOkn?KJF)!Xp|4MpR zzNXTjMPK3idXciOa!f#Ky>Lw_uMgr`iVX%5!=&GZ0;r0vqY~*pB5t{mM^Hp|Nfp z3dhL(opyI0j1~Hh?jSEk75JqaVUO5W#1+mhi{R}fD1Jfqu8I1X%$%tghnkv(3slJG2-I+>C)-zUbl z2ZGE4|8VOKdXS9vOE6pKJT^>aItk=rEVV$KkzxkC9OMb(U^aqO03eroD`*+}#lOj# zxz9AZKr5>8~Y&V`xm}VwaiAg*v}PeL_ut{WGWkMm{znca}NK&wlL0m zz?|8?0;Bj+mH8R`?4%fE(SoR$bjD|WOeG`DNz_4$w-B@D+5;dg^~Q-*igy%|@8)gx zJ~yl2n^70IxKO!S&W~qqZe>`-lYpCA0A;CWnEk9^95HC$Sd#6`cAwYZBsp%+ze(Al zQLbfo_?mZ65YJ)EgdvFUNpN)yA{8|LJ^jP9^J(pKuBg_9)^yQW-ilRbbCdLJMtR&6 z>}bBX_O4q_rG|r=CdqDB|MWN_zR4<-Sne)}C+?tEqheBRguhSHZl#rI-(pAO;AC&% z<71qnC1VTt*lUq2$aQd4DaY}dXK}a6_LMuqw?eetj2Nf+AE-w@4pc!c9{&=S+KQT- zJH37rEMIr2UAT>Vdjeu{V~xAqixvN}gO--=S8KlQ)k6yZ`eUrkdeihJ%^>rxapWJW zs(t<)>Wd_~Vy4C8ZEI zSjWVLSfxwTyv$VJEg_M<8pWJjICWB)X7^EQzqe!y5}wrQCX+Ff0oXdxN#S+I7TG-p z&3Jh#b;kK{jYT~uS4cuE?-C#-v6SN-L?RA)1+68J<~0^F*C>o)%qX%4gVWnT7it|@ z?V^P>fY>1#1QQ>Zt!>00%?XroK{EBbs75sr(~QseupEgB(LkO=Q{j<{C0> zr;>m>%Gy1Ay_Nj*WPmCN@FMVx!=wn@B&G4$d7blpBeG5CV$=akv0V{JJzf;zD9~|4 z`5+};4O@kDr|s|~nB`GHUVfS&dVCoLb`JT1>Oqq=!?_m>3NyqVSyHE^9A{s|{y?b= zsh+N;2MSyQ8W&+C!&j#@*SrTJYDyKd_;E#moA|A9g%=)Kyj(~XXHb+ zMV(z>XSfzJktlY&8YvTToI~4y^dIRkJYR$G*g0oI?Znt5znjxlqi)CFbZlN)VbEkdw_3Gku7+=9l$H zO`d?WBr0u8bacCtoK-yy9k};3ed_XhU=f`(K6TeaDQmz2UTF3nDA5>v0JyI`Ep*hOw(jykn^9MNY*eIpPD z6%qbX0_`g*Ys(b`B3t=#dUjI#Dx6}e#NVt`3p(4U3D6+}WFw#vRws4Lae4pJb-VAt$`^F@qZx8wqSjpADm zXvLT9LoqqHe#Ho9W1raZuNsPrWY}bnnl>|2m6JfX-NyT0yYsj^lqhNCN9c%im4>*` zrM?|o*VW7cw1}Ih*rrn&!WmIz_Emc@U z!CAX-k;zuHwe74y@x!#9YD$woJbs4h?Y-&clc*q9Cvvx-0-%QjJTycjk0c@ zJo&XpVMP#zMFus1%cpnVT55?`v_hA;Y@TSgDgA#6s)1nnm*C(`DP)?DA0E#Yiwbm| zZXWODy+Z_bsRlQ~yOl>1U5CGgB|$9Tn&buOe;l?1wr~Zron7rs@N~J?HVNVZHt($g@iai@21tOzum6#cjZ%NsANkop zO(v;laIk2KjY=rJ2DXuadq~cJ)Y6dzH>zkJ1jBH!sE=dJh|prw)2IEj}j2Ju5c%)k?Tw5U(q|7~3##-<66z}u{dg^HvwNeFFq8!Ai+5Re=i;e4{41`_GBjsZ*rXIW@4ZwW7Un%9U?=98S0 zYR=d;24qO)#3@B2#b}glbtLwiouv710F79lKLfCo6a>EoEcJl3hIvlMs8ms{aGHx0 za6oNFFwoT8NeqB4C}ph_G}F@yq|{|7{fRnpw+x=A;>|+od>O~zr{DkpC{d(d2Lj3y zmO56*h5}FrzSQKM*3oz3z!@onX+r72K*SDp0FXtI04GHs zyAVBbz^53Hvg+~TgWV?%F#u}}n8JYFN~WO#;!|vxwQPjXT1?C|l~5j*Li>jiTcR*p zPnYUr-%5_2KY4?D#)`3$P@3c(OAVCHbgt$?~JmiVqm+*qI z+%e3$24!rM&?@!tZVmJU#^H--fy;{Ty#<_gpdUaP(sN+V*~iOHFF$$O8Y^m$v7)5F z`WZGK<4_kBSE%8<2SGE5ZJv&jpr<~S(pojgJ~MzW)mdjHZBWmVU|hf#u#^GVZ(z5Q z*6+g$BN-poTfGKts!&Jj14t}oxa;7xDpnrKYLqfsCA1up!s}vsV#Qy(zmGtt^&E2@ z667rUo8VvZco5r#JfoIWj0N8exg%7#_eAqWQEM);PfKmk85-Wk!kI zc8Pefl535fc)+MwJHT=_(0<3b(*$FlvZ7lFHRG_yZ77;3+p!Y}-05VhV!p!o?ii?1 zu@__DsFYDaP~ud8m5%;ByH;Zt6 zxxN>jZxFgmd3U1iSvV_L3Yf|0tFaUJ4zT5o)dS3`KQS(>fx7{Qv!*y&&(oGc92f38 zUvNSPFRpNytpkuu!QdVEDxs=r{V|x-T z7XpYbrMl=@xQc5C7gniQRkd7GloF1Cfh_hT_gYd@N7e8yYnU7zi~X!YDP>*6n8i5l z3(1V;i^ni15tRJ}_8BlC`Jq>4L%x#W?oV3gH>14jX-PQ@#hK|c^o<{QRQT>VAD zPJ6~&bwunq?FiMrIUbbk?Yn%~GP#RD_X%(;a4y#FqbZ%rf=>?Za>{Fv- zH~@bl)s0HiO9Wh{QXBGah;`8H^H8FWNq=h)%*Ws+3A;lhpweRusB*xaKMvYOc5BJNxq@|y%#ycc?-?c#Wpu4irA(vGRvBT9~C rN`gHO-NA*CdiHZ2bNvcFouHyP^i4qVysO0wu!iI`lAS($6j=0s**o*? literal 0 HcmV?d00001 diff --git a/assets/img/admin/browser_title_bg.gif b/assets/img/admin/browser_title_bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..10d80c4c0018b7a892a51136295151a069048221 GIT binary patch literal 1749 zcmdUt{W}wi0>_svbP-Q=RI|Kfgs`276+Jm2rdOTMR0M^bkr0OWwL zF&GSDu~;M$O-@cuOiYZAj|+vuv9Yny(b18S5rIH3JUl!!G{oog2L}fS1_pRM9+%7I za5(+_{cJY7r>BR-VlkP_uCA`m&Q3a=-qF!Pp-{+VGKoa0tE`wza<{kty#ws5E*fqpSNplhxD9aE3b8W506-ySjS_Mn=bk;}er2@rS8t$&6Gs zJ13u4C{=2WR_^ZV0MucDVDQmnAGh_NJ{thQza8)+)OP2X?uAD55neKLtsMNT{fW7qp5`+cU%qAx zkz|6bVUjFUFiw(f?xm3ASouO`9`233l?56+NbufuCQUJuYlntN|8OjaN%J6BoHXB! zq>vVP^g?8hJ;z|O!jnmvJ9h4NO9mKyv0|3|WDTEv;sNwh3st@Ltt4WG_8H$CJm9>$cYEyE4P^KBi9hx zx8t!*T9WvVT1%FoT^A^`<%orM3T)FthlV6tFgX(h&^CFGAQtJH@}|X3{knRQ0Wfh} z>H_UgSn4))ZeDtCep0i(xaQ^F19vscY`a{yl|ILcgq40see(*( zjjUPWdaw_)vGy^bx`9*k&AP#}8yX$o+ob0BfUeSIb;!@TWp()SNo_mtr%?Us$kouq zwb8IRddi3wLc1osm3w4;Je(cg-V;;bvObwWKG!z!Gxf-ZI88|R68ef-Hl~mpg`QKe z?IW9#hx?O`OVG~vP3c32!A)7oMLbFNG&E^z?#eGkTk`6=_%=Bv*ZrfyDJSTo5?7b> zyQ-O7w57tc-KkOnKWSTgUs$xgK%2I>E2NtoMNW2D-qtS%?Jw4^@PI8y-G44xt}WgR zxczDElyZh6jet+2|ioTZ#)AsE?Y%4Al10#%Gj%Rdhb%(|L)(-bM*vA55gd4!NZ7&$EB+ zDXm~RojC^o2lB6dr>%Qj{;st|IVfu(tB)o>*Lr}ds_jH`FG+F zItf{4E`wa$Kipabr8yi5#Ieui6N*t9J3HX>Zl68GZ1mX}(B6hVE}Zoz#4_dgPEc+=CnWz(9v&3!8r@I7K0J&h&|ZI& S*btyxCRV6&!tDTn@Ba&8jbM}j literal 0 HcmV?d00001 diff --git a/assets/img/admin/changelist-bg.gif b/assets/img/admin/changelist-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..7f4699470adc8c021740023dcd4f0a1bd5f50b84 GIT binary patch literal 58 zcmZ?wbhEHbT*$!0(7?d({{8#Acke3xWMKdS9S{MMVPF#E>05dFE&t*vt?bv=6id7ONcO70{{r%8=U|E literal 0 HcmV?d00001 diff --git a/assets/img/admin/chooser-bg.gif b/assets/img/admin/chooser-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..30e83c2518b0e5ee5f4bda6ce790b47f6dbdbfbb GIT binary patch literal 199 zcmZ?wbhEHb6l2h5*v!E2@87@o@85s?`0?-Gzu&)q|NQy$j~_oiefsp_!-t2MMY9TZUv9~%Sp!>_)cW&ci3#* zUhC5m*S~nZz=*>R=VoO!-wlwA$Z`-01 q@~q#j3=%veq*@rvq^WHhU}-`1SSm{{H^+^Yi-p`uF$u@bK{c{r&s< z`||Sg^z`)c@$vTd_5c6?A^8LV00000EC2ui05AX-000DmFvuy15jgA3yCGB Oo}Zwd4gw#T5db^5xM#Bf literal 0 HcmV?d00001 diff --git a/assets/img/admin/default-bg-reverse.gif b/assets/img/admin/default-bg-reverse.gif new file mode 100644 index 0000000000000000000000000000000000000000..0873281e51bdcfd1e7eb5bbfbde3a09c4cbc943e GIT binary patch literal 843 zcmV-R1GM}{Nk%w1VG#fy0OkMyywd5g$>Wc((SfDPyV2;h%;kux&VHiEgQv@Yq{*Sa z+l{W!qQ2X>&*yuf#)zuThN#S(y4aey*L$GHimcC{yxF9{+^)ysgs01&yxO+S=DE=5 zq`=*$!rrpW%Ia#o)Ef<&3V-tHt57%Hx^1)~CYVyVB@=p~tMo;ew{h zv&!VG#o?8+)Qqmrnz+`6sm*|+$&#|ts>I*7&E~4Z;GetNkg(B_veJR3%8#$nw9VzU z&E=W6*PXi9oVwYCsLX|_%&NoRhN#WD(ddt_(zwp%xX$ON!QH9E;Dn~jv&-bS&gP%H z*|yE)hN;YZp~kn*=6s;Xx6kLIz1xql(y__nrNG^btIvL;$&0MdA^8LV00000EC2ui z01*Hm000O7fOifPgAR3s6N!Zm4lp*4BuykFJTOf*l}$X9EG!3~2cDpzoqh=-BB!UR zRtX8Ms!u=zUbD1M1G%=j2p9;zy>Gw17{$G1Xb@%)%w}{DRc2LX%n%O-*9O`T+}qs- z6yY>9I~3y-JAD*?=sPhn3-R$WM@RDTQ%3>JcA0syKJpvRw!9yxMc>2a`&3xzov zx=8UshKv*xrBwWoF@=l|HCC*s;bR3396o&D2#Io}gqKQ&P@xj@r5G_1lt>sdX2ggH z5q<(4L&hf=pb;u$$grh?Ql=T4R*EFeIr5KLGLmcd%i6bbUe36dy_8@~t=1<8vdNG`N! zQKH3#5}!MR)_mbYfB-X2r#`*swCdC*JV5b~Bz9~MxJ{UV0|gEkBL#wo0UoA+5ir4% zYY4HNd5A1o;>^)NJp}VL4YJ!gaiT$Y@80pSX|Q3#jTWc((SfDPyV2;h%;kux&VHiEgQv@Yq{*Sa z+l{W!qQ2X>&*yuf#)zuThN#S(y4aey*L$GHimcC{yxF9{+^)ysgs01&yxO+S=DE=5 zq`=*$!rrpW%Ia#o)Ef<&3V-tHt57%Hx^1)~CYVyVB@=p~tMo;ew{h zv&!VG#o?8+)Qqmrnz+`6sm*|+$&#|ts>I*7&E~4Z;GetNkg(B_veJR3%8#$nw9VzU z&E=W6*PXi9oVwYCsLX|_%&NoRhN#WD(ddt_(zwp%xX$ON!QH9E;Dn~jv&-bS&gP%H z*|yE)hN;YZp~kn*=6s;Xx6kLIz1xql(y__nrNG^btIvL;$&0MdA^8LV00000EC2ui z01*Hm000O7fB=GngoT0x1WZIsh=@c4X^)Hq8yhz_C@7YhmN%6fC~FO)b|)tdr>LlS zYz-PAudpFmS#fh3xFN7$Mg_iMy zEiEN27bWH6=HM3>ML{o4NKx(YFF{dAFGWZyZdf27DgX-9f+e7qGeUGM>CmP_hlM&i z=nx`A;t~!VesHj0A)^I895r&}pnw5`k|<3oSa~uJg9;fkY^eZKW(JxS@T~!jKv(R@CsZ0tXHsK5$_Dsx`$288T9sm2&pO z+7vRWKDg+SBgd5`H-TFR%!C^)o_GDj!gPtK1gc27Dv@$SQ0{~`FJvsmY literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon-unknown.gif b/assets/img/admin/icon-unknown.gif new file mode 100644 index 0000000000000000000000000000000000000000..cfd2b02ad91b3677dbe59111faaf4f437c362cb8 GIT binary patch literal 130 zcmV-|0Db>QNk%w1VF~~W0J9GO^z`(anwr7E!O_vts;a8Fxw+ur;K|9!=;-Lh#l`#k z`?0aH)z#IOmX?c)i~s-sA^8LW000jFEC2ui015yK000Cp@IAI#TTH&>x=&LlD2fp{ kltU;-pbSpsb&B9v9)J|xHP4tFtdrsVKoW`tBZ&Y2J8`5w82|tP literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon-yes.gif b/assets/img/admin/icon-yes.gif new file mode 100644 index 0000000000000000000000000000000000000000..73992827403791d6c1a75a079880e41dce7e0214 GIT binary patch literal 299 zcmZ?wbhEHbb?NhTQ$x_deWPc4O)NkN2|oXRf%p{M+wuUw(Z# z`TWGXJ8Mf07p=Or^7yl3mtJ2C+~V)C-fh~&DX}}E_C4PF@Y93ee}B)tGUw-?pC_Il zZ#vO%{oS?y|Nqw=uUUR`+4?){5_iQh&Q{xM6OkFieY2o T4)tf0@^WEj=4)bdWUvMRbX#E6 literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon_addlink.gif b/assets/img/admin/icon_addlink.gif new file mode 100644 index 0000000000000000000000000000000000000000..ee70e1adba52480cc6aedbee650000c5d55b0088 GIT binary patch literal 119 zcmZ?wbhEHb(s)E@aY^3 F)&O8RB1ZrK literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon_alert.gif b/assets/img/admin/icon_alert.gif new file mode 100644 index 0000000000000000000000000000000000000000..a1dde2625445b76d041ae02ccfcb83481ca63c5e GIT binary patch literal 145 zcmV;C0B-+BNk%w1VGsZi0J9GO|G@+Q!3O`;RR7pu|IkAJ%Ps%YPXF0v|INcdJ{u&=}=IXLDhr+J%S1nrq(gCL;wIgri4F* literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon_calendar.gif b/assets/img/admin/icon_calendar.gif new file mode 100644 index 0000000000000000000000000000000000000000..7587b305a4ee702cbed3bee1ae17c78feb85d00b GIT binary patch literal 192 zcmV;x06+gnNk%w1VGsZi0J8u9nVFf2iHY^~_4)bv@bK{4+uQ&D|FN{U?d|Qf&F0D5 z?Wd=w{QUgs>FMX^=l}ozA^8LW000jFEC2ui01yBW000DS@X1N*1UPGamH(iU1QH+` z43ii};vPZqm~L$+una7G@AI)4YnU1cj)Wk=I*&Aa=g_Vl48 zmH)wj0Spv>vM@3*@G|Itcpx(vSX4HgyeYC&>*nrB_bxSQsBGn6*)YRRaLr}Q6>6LJ P$Rx*~-FRR+2ZJ>L#Kbnb literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon_clock.gif b/assets/img/admin/icon_clock.gif new file mode 100644 index 0000000000000000000000000000000000000000..ff2d57e0a3b6373b7bd9540e688b1b4c71081cb7 GIT binary patch literal 390 zcmV;10eSvMNk%w1VGsZi0M$DH{QUg>{{H#-`S$kq$lLA4+3fD_?(*{T{{H>?`uXqg z@BaV(?CkCH^Yi-p`u6wt#Mtch_4dHk>iGEh^7Hca^z*{j>crRU`1twz{QT_e?DqEc z$J*@b>gvMQ>+|&V$lC14+wAM>>;3)w@9*%!*X#51^1;{Z`}_OH+U@-O`^ehu#MkWU z>FEFe{^{xI#n|ld@$l~N@5kBgv9!0z+wHW?=G)ubr>Cd?|NohpnY8A@0000000000 z00000A^8LW0027xEC2ui01yBW000J~z@2cXD;jmfB(YW_ga{xGQmJF&uGa!=Dy-IU zx$q)@gRrJva4tXt05Uks30VcZ5F=VbfDzy%IyZGW2r3RV4+8@cI5vSg1UL%-4ihvL z4F?pBk1IFOZ1vml&CJGE4FE})gH$(*xI2#8t kA}zwiLpm2FSXaY=R2~vG+}zkoL`Ox%;6gX&=t@BVI|kg>kN^Mx literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon_deletelink.gif b/assets/img/admin/icon_deletelink.gif new file mode 100644 index 0000000000000000000000000000000000000000..72523e3a3ba1446c8f768c157cea642119a02741 GIT binary patch literal 181 zcmZ?wbhEHbc&kkH2hg{xUB9fxq8%JG(R5 zT3?Eao`!{eDJnj1U~tLY{9|s;X>G0VWo1vp!yowhEs~V{|NlP&4xspxg^__loIwX9 z53-Yi)#yQKi;S#{{sX6 zi;Dh#`0#&e>3>Vh|D2rv=gC*q|>i-WM_<#QV|C1;G zS5*8rF!=rZ_kUyK|3JV%TcG%pg^__lo4aiRnY%vG=3p{kB40{i-Of=+@`~3X;@bK{O@9+Kn{rLF!_xJbl@$pSfP5S!!_4W1n`T6YZ?B3qqPft(K z(9rAa>(gwwA^YilZ@=HrgUS3{FNlEth_IP-BSy@@<=jZ6? z=$e|EaBy(V&CR>JyVcdz;o;$EXlUQx-&9moTU%RKS68&OwCU;T!NJ+t*-}zc&)b92AH zzpJaOZfvlTPVlRhn*D zzYj!ubf8e2}%QyRfsr*SWe%Rb`=>R1ae%6%2~5|TAxeL zzADQysO81>*ZZYCyl6@$BdV$biI?uic&0bzMrFb%Aq1#ZUv-+v+w0VD#)3jAg-{rn zQK{SBuPmhC5$}W{D84q?yXp06=7SUzUxd5@c^_-Jtgg3OcgI0-bjam_F)Z9$Uf=5< z*hz6@lo{ZZu*P|f^TenPFmQjgIBP%6a@>yq0{~})9l-cU)g%A_002ovPDHLkV1oH8 BY;phq literal 0 HcmV?d00001 diff --git a/assets/img/admin/icon_success.gif b/assets/img/admin/icon_success.gif new file mode 100644 index 0000000000000000000000000000000000000000..5cf90a15aa6731798b025a238fa47a1658510fff GIT binary patch literal 341 zcmZ?wbhEHb6krfwxXJ(m|NsC0@cYBBf4?q$zBut-@A?;OHoRQB_4TGbZ+4yjc=Gy} zYu7$sefa&slkbn8{dih+uDI?}MdP*V#;eu+_qwJ$=-=~p=Y>z_u719puq!NScSPpF zg#4pv1xM2>&lOf*D6TwP`0>{VkG0l*8=OKmdxUNAj@;&(aUeGLNb=vme}Ptmoj^XJ z_>+Z^fkBHw2V?}uPYi5D4pR#}bfiS5bS&9qz$LFSv4l%VM0VNAuq7M$%x`OYevyni z6y)sQCFr(n`AWsDVxcXCnHqNfPZgaKf;1I5H8q8UQ?&$wdD=UoSe-bM`a7e(;ev*DhVUbne`_Q>RWHJ$m%u z!GnAE?%ld|>&A^6SFT*SV8MbJGiFSgGG)Sq2|YbM4Gj%I(@xu~L;ww!E(!7r26Ax# z26Yo|Q=l@=0*}aI1_rJVAk65r#$*OiP`<=9q9iy!t)x7$D3!rCF}Wx|H#H?QQNb;< zD78GlD7#p}Vr#~w3ZT-9o-U3d5>s0PZ;Q1kaJcNw6<2ol{`H?fR&lq@+fNPd=`slo zkNq2-l{wAX{kw31#NjUjI#s<#Uj@rXCa>o{s1qmoLR|UF+{q6*%d3Ul-XEy+RoY#| zkfg@p<7MzuzoD2R^0?fz%GC`Vt9o~eIX#}ba7TVWzqWIsT+0Qozj6zvZ?O^|iOvau45i`%PE+DBAs)9(WdP);)FE4qk(op#PgM^?h(mhZn$bMx7!ED!$ll-yWMuFR9Y9iY1q7x+Tho7W2RcIw$bnR z2Z2D~y5@l64y0TzH$=tFKLOu2^C00_)Ch$_LD)3MqdNl)v!b&k++3HA!8QF=ku#b%{yJ#wK~|XDwD}%Ih)Ns*K9MH z%(HYly{5CB)Ym{qon_8#Hk*fGCw9C2rdkss8}e+bO6J_@bS`v6TrSr|wI)OwBZmQm zHE@-oO(YTz5V;=1&QvJr=y6WMe@$|)b-+D_HXIJ8d%fN;>`aB04(d23;lD2}`^z_f zWD`6<7Ey3_>h*ewj@6o=j&q`$*PTb){4yf-uu`dfren1xsNE;uf~-qQ~+a-GFR@J$@b>Hh94o@B%i?F()B=ob5MjVEX~Af^TCZ zpt}o>$R?)bE~vB3v9|mNm(eM3QreV7{t3JXuf|(;ev*DhVUbne`_qeqV(Ja};L z-o0D5Zr!+XNxJHx&=ckpFCl;kL_$DS7<>#iRWF{)OWfrBD=NDxcD_CsJ zxKsgDy5G~qF+^f&>qJMfW(6J><{J?Kf>R&;&5u&^T)oP_O3;r=6p7) zlfNAI+AzN1yld9iPbOE?zDn^FWNWTzVg8q;tMyQH#xB2CjJMamULv=ffzPT{LG9m{ z3!RZZYz+J_R$O4Tn}6ZyW@b)?Zsy_zb<*cm_zc-z$!)fZ;AeP{VB3kMP1FLBYMl`sP8M=cy-s(-<#^LNPFbS VZ>oP-s}J-FgQu&X%Q~loCIHeD(U1TD literal 0 HcmV?d00001 diff --git a/assets/img/admin/inline-restore.png b/assets/img/admin/inline-restore.png new file mode 100644 index 0000000000000000000000000000000000000000..efdd92ac39d12c2f84fbd22d05d7b495e2206bf4 GIT binary patch literal 623 zcmV-#0+9WQP)V!KQp&Gv#VQ{rTw<)x~~1Dk?(c~!+vyQpqu`J3b+L~ zR`ZDG!5ruVF7OO4z$y5w^TqAKF*#fWUI*hZ;0T(M%?=EJb>Mf<-hn;vz<0pKoOhsG zlFpOKWZcFGeU*W=oyt4~z9F4M8?n(2flbiMCtYkj4Ls7hVHi$Z+y!QpxfL)doj1_- zgSEON5MRGa0deQ)bh_3T3I#0~42F6BfCG^m^!3}IjXPJgF{Y(F*a1(q;}n-rM^R@F=3jf=JWZqL?XfSLgqn_(8ii* zd0u$rK$hW~oS-1&G0<4f=kxiv+wJDZ_bU1_)5hd6(3oi>ingRCVUgFUx)angnT)37 zKv9fM@WF#BmfOQv#2a57-S&KT*C(G{DQl+NNW9y=`fHnu-v==- Ot=>b+CQo8uum%9*_Ae;_ literal 0 HcmV?d00001 diff --git a/assets/img/admin/nav-bg-reverse.gif b/assets/img/admin/nav-bg-reverse.gif new file mode 100644 index 0000000000000000000000000000000000000000..f11029f90fc965141b8815a78ac2651759099475 GIT binary patch literal 186 zcmV;r07d^tNk%w1VG#fy0J8u9|NsB^`1t<*{`U6v@$vEd`}^(f?dRv`;^N}{{r&3d z>hA9D(@t*9{u_A=gpfpKY#xG_U+rVXV3oq`}hC||i=Q&8(m$()z5YF*CjUEw001<4;4tjrTwH+&%FA_x~E6rskH`CdQ7= zuI>)uzWxal`(>Zw+Pr1!Chi?O LckSMx$Y2cs9wnNk literal 0 HcmV?d00001 diff --git a/assets/img/admin/selector-add.gif b/assets/img/admin/selector-add.gif new file mode 100644 index 0000000000000000000000000000000000000000..50132d1c439494a0a19e1d280385f03d3ac5599b GIT binary patch literal 606 zcmZ?wbhEHb6krfwcoxafw(@M}n)ChZFW!3c{`tGF)3#h)y!U$bf@7^KPS-6uzUAco zS0BDVc=>6^`De|`PR`nSyg_g{XjI&`ak@yUG` zo;EK(J#+ijhQ%lP*I%ezbo}9~&(pSE*?IQS;=MN)@4Gd3=e3%J$D5X(nz`fp(*3u$ zoqaNI*R}d3CpVpX{Q29jre&vU7apIr~bzW=sp-|cz3uWvc? zWa{QC$8Wq`dhpJqjhE{epV)Z(?&i~vr*FGDch`+I#~w`He7Swq*`){W^sT@6^~dl3 z|Nk@49Vq@}VPs&4WY7WG42ly5_T3GUO_4kje3Fi`Y|PEgg2Ei`p1iykJ|h0&z5Zgl z0rM9G$k+=tamfX*T&cAxSkXVyMZhv_>sB}KZDAbD#%4hW4zfg89~5H~^<`z%2RJ`V9$77#OFv^CvqjY0A7XSuxNk>&%VE4w{br3Jf1VK49#UQa3Uc3OT{Z NtIjEA%EiK94FJ;24lMux literal 0 HcmV?d00001 diff --git a/assets/img/admin/selector-addall.gif b/assets/img/admin/selector-addall.gif new file mode 100644 index 0000000000000000000000000000000000000000..d6e7c639bb2ec270122861f054289845281fae26 GIT binary patch literal 358 zcmZ?wbhEHb6krfwxN64GwdVYqV-FVYy|wM^)3z0-CvU#|?Z@x7m1n1IyE0+p#RUf* z*DpEQwCq&t%5&3q-kG-LYR}pWx1PLjUwNi;)tTmHr>AYX(!J*V^leu=SD$TPd3wsG zD~tDD-+uc3vi-Mqo_}`i`pffoUcPz%`N)+gC$B$Wu={53y7Nb`JiYSZ&EgJ2jU%oBgck}JXFNZEY-hSr6{b%p@TzI-@&-ELR-)%g8_xtzn|NsAIzzr0CvM@3* zm@(*plz{xiz}D;}e*)+h-yWNC)(RZyTq=rvah$l z-QC^j?C`?E!rI!}-rnBp>+8?Y&$F|$v%JQ(wzkK|$N2d8?d|R4>Fx3H@xZ{qud%ZB z_V&`!(&Fap*x1<3&CRj8!??J(+uPg8$;r;n&b76*)z#I=$jG<1x5UK6zrVlr`1}9= z{{R30A^8LW002G!EC2ui01yBW000K7K%dYz*=R~SmZ2~lJ~9pwN1*_@60%NHMxlAX zUK2qgWbklk^e2tm$$Y6>%tp5<1aBx~ID^{#HdGh3{RjW2`-1y|llXdIX?cBNZ+_`frSFT*Tbm`{Jn=f9xc=ztz_wV0- z|Ni~?^XIp2-MVq(#`*K-_wCzv>C&Zd-@aYHe*MaoE4y~>`t<43?%lh$ZQJ(v@#E#o zmmfcV{KtY3(LiF)@D4T0VKnCT(SA zX1)$*HBn6#jwS_7P0<=>4NmpN;)-mGISX90xU|;Ev8_pU4PxOI7UpJ&^3YJ@;Za-V LdE}_8BZD;nhnJNG literal 0 HcmV?d00001 diff --git a/assets/img/admin/selector-search.gif b/assets/img/admin/selector-search.gif new file mode 100644 index 0000000000000000000000000000000000000000..6d5f4c74923af2daba13baa484364380fb1614b9 GIT binary patch literal 552 zcmZ?wbhEHb6krfwc*ekR;r}fg8=Jp>|9X0Qe){yu!NI}X+uO&-$I8koH8s`3!otqZ z?(W^YSy@?TW@e{PpT2zg^6J&ABO)T)-Q5!s60Tjl=Ire3>gqaW%9PsL+PQP*Ha9mX zCnrZoN9W|^#K*^f{rYv@ym@clym|8E$=&V_@LPJBVtE(?uxDXW;RaaLxbLLEYd;7Mww%N01*VNRUKY#wgg9n+J znUg0^j*E-y=;*j{51X2rQc_ZG-@bkS{(VPBM~0yT6o0ZXf?TTuB0zD%z~0)x z(A3=0+M*~cF2*k1)@;Hotjo#FYS$;lCc@9cB5K1e*(T4%&$OJ0N1L&YotI^~f{vr% zn$~qnssdI5qW0Tb4Ak_r)E!)0jSnm~~hECZvY5o%BVqvfb0K*)eZU6uP literal 0 HcmV?d00001 diff --git a/assets/img/admin/selector_stacked-add.gif b/assets/img/admin/selector_stacked-add.gif new file mode 100644 index 0000000000000000000000000000000000000000..74261696522de5819780082d9d92d75f8ffdb4fc GIT binary patch literal 612 zcmZ?wbhEHb6krfwcoxdgw({()C+`>Uz23RzeCvwSk6wMQUT~~#(eW)O@4x%}qhZO( z=4B^W9lAAn)1{a1zimDJ=;PO)eQVFX`tbe1%TKd*UVs1P$KQYdUVr@FvFhyR6ZdwU ze>P#`rA;RvPThQ^Vacg^yRJ>!dS%hR+gr{&*>?76|N09vw_ojAb8ha=YxRpy&e(CS zX5q0dryguM`QY`3Zw-r2%-nIkdHLz4Wv6Nu9$&Km_M1=N`!`%%e(?6hjhE^cpICbE zPW_UT?JLi0J9WQr-Gy6EKkPjFXz{*VlQv#%T6(H>;qm&#Ct6mV*>vi0?V{s*E<9;p zb#~+NyGsw;*?ju(++8>N)?b{q|9^%71&Tje7#SEs z8FWCd0L2Ld`@x3LrchxXZVfp-CdTGwF-aChB`GOoO9?O0UN2rZpZN=XRJAypI8=gG zu3D|&6>7p|?7dlrpI>J4W)?;pTi^Y@;vpg82Yh*%1Red)_zN8tI_odX#vXkAI^SWw z8`quLnIE#U3LF+-wUd@+HWGAYV9+`IIYj*f0~?2-=O67a@_!~B5V-KDV{)@!9S?KU zg-$*<4i1Nz9ITzZT>%EXL7SAjj`z#?N@%FQnAjwxsS!|7=*eL;*Vos_$H(O9?cUzr!^6YN%ge8^vckf`>gwvV zyvDP$v)I_!vAV;~&d%H0+sMes)z#I>$;r33x4*x?xVX5rwY9{=#P#_5|Ns9000000 z00000A^8LW002AyEC2ui01yBW000KAK%S5naXdmc6(KMjYAO&AVzD@V4lqm;hLU-| z-jabLRNQE28e){D>0mrlZWF7McDqHrjtjIdGl3s?cnEyf&#j1HCpm1R^ds$Tu?y v2{Xwz1xyMMI@Q+KSVJ%eHQnCb7h_HpIV%Yq94R_BSxrJk53meNO+f%VqdU!B literal 0 HcmV?d00001 diff --git a/assets/img/admin/tool-left.gif b/assets/img/admin/tool-left.gif new file mode 100644 index 0000000000000000000000000000000000000000..011490ff3a0100bea63eca7d8a3f821edecf6d3f GIT binary patch literal 197 zcmV;$06PCiNk%w1VF>^d0K@+9+1 z>Fn(6>gwvFqods1+`_`bsi~>N#Kh<4=efDLot>Sks;aTEvEJU^(b3W4lL@fC0syEMTS%hy>Zm!0PcpEpJwG;hh<#5^Y_P4;QTzJF~^?;ZNVo;-~tj z3GxIURaQ?9NK-h~-O_%Ehr|6W>p_W03|&Y3moVBW-4OX{v_eKqd6L;=PDTc60DL-S AivR!s literal 0 HcmV?d00001 diff --git a/assets/img/admin/tool-right.gif b/assets/img/admin/tool-right.gif new file mode 100644 index 0000000000000000000000000000000000000000..cdc140cc590a56bf45ceef6eaeebf47e4a699ac3 GIT binary patch literal 198 zcmV;%06G6hNk%w1VF>^d0K@+9+1 z>Fn(6>gwvFqods1+`_`bsi~>N#Kh<4=efDLot>Sks;aTEvEJU^(b3W4R literal 0 HcmV?d00001 diff --git a/assets/img/admin/tool-right_over.gif b/assets/img/admin/tool-right_over.gif new file mode 100644 index 0000000000000000000000000000000000000000..4db977e838dd97ae4f59524a764cf8298f19ccc5 GIT binary patch literal 200 zcmZ?wbhEHblL@fC0syEMTS%hy>Zm!0M`SJhE@w+}Rz8zHMDu50@FVv!<=}o0a$2j_;|E wNJ^Lce8rW`28j}!f$kDtvUrX>)$-C{u;f$x#4um1{ZvBtsg!MMAsh_W0PS95AOHXW literal 0 HcmV?d00001 diff --git a/assets/img/admin/tooltag-add.gif b/assets/img/admin/tooltag-add.gif new file mode 100644 index 0000000000000000000000000000000000000000..8b53d49ae58dbc324ca7fb318198b187fc124c09 GIT binary patch literal 932 zcmZ?wbhEHb6lM@)_|Cxa`}glZfBv+zw0!^m{n4XG%aU|5d-nPB=MNq{xOeZ~wr$(``}?0g zdp3Xm{Fg6Zwzjt3y?giHzkgr9e*ORde?vn9!zdUHfx#C7ia%Mvj?w{lD0p`BHNuZH8`gv5jGtilW#8Ul-s@(Rm3u`n_%YH1afFWM53xbWyi0reSoZU`=F zW>B;|HRonfOG771<|UO1;}pj!{KgMbG6N3=Of=;-YN#}Nd4NeFEUKo%!I@!YFuRjN h0z*m|qaatng9}?1vhrtKUbNTY0V7A3A`=sXH2_xRgyR4J literal 0 HcmV?d00001 diff --git a/assets/img/admin/tooltag-add_over.gif b/assets/img/admin/tooltag-add_over.gif new file mode 100644 index 0000000000000000000000000000000000000000..bfc52f10de75998687154585752513a27a02e5c4 GIT binary patch literal 336 zcmZ?wbhEHb6lM@)xXQp_AKmol&!20zAN~IQ+b5;fJ+bBa>km(!zx7XVkIL_<>s=I* z-Fg4<%i9m06*kQ}fA#LqpFhjm=B8Ioc1vhpx_)m~&D4mz?loHv1!s0R#56sA{$|&q zv$L0NTfOzr<~=7olUmZNro(_t( z{<*|8FIl(u()IiQ|Npm*YGNP-DE?#tE7t*$AU`p%OuD z64&(xJYQ3LjTSFY75~+{EbMWTq?Tj+^`lM+ch;D9HZb0eJO28D|1uloD@pFe*-apJ^Hn>L+2d-m?#yFEQU|Ni~^ z`t|Go|Nk2r8W_k0ia%MvT6I7q$WIJxH4gmQ9x7=Hf&p1aV>r7mD6wA%agA(z(Y9-o zn{Z!7=F3()sh$@ap>8_^S=AZ45`|}1urBhDn)0zi%$1R$zCpXHxz#1VpeR78J1{*n zKx$GzLbz~Ucw``(R#|u;i#+q?x}l#o5$^*7-1rs_)vpOO{(vYlW{PgEasf C+m{mn literal 0 HcmV?d00001 diff --git a/assets/img/admin/tooltag-arrowright_over.gif b/assets/img/admin/tooltag-arrowright_over.gif new file mode 100644 index 0000000000000000000000000000000000000000..7163189604a638ee170f093cd042075a7da48c7a GIT binary patch literal 354 zcmZ?wbhEHb6lM@)xXQp_AKmol&!20zAN~IQ+b5;fJ+bBa>km(!zx7XVkIL_<>s=I* z-Fg4<%i9m06*kQ}fA#LqpFhjm=B8Ioc1vhpx_)m~&D4mz?loHv1!s0R#56sA{$|&q zv$L0NTfOzr<~=7olUmZNro(_t( z{<*|8FIl(u()IiQ|Npm*YGNP-DE?#tE7t*$AU`p%)jRO!c&Mb=iC%tqw1%_mf>OuD z64%5AjkaH#++@37WWH>5lj_LG3QgM?$)(Pyl_<=6_Sxb99hOrSl|Hhr49pEp`qi!N zF8KvT0m8k3>6rnFQvwpgW$MEt13C4|!UI|47?&<{5fc~Cj$Ol`%&8*1!G}pzckjNv NA{t6st9%_9tO2syk|zKF literal 0 HcmV?d00001 diff --git a/assets/img/backgrounds/changelist-results.png b/assets/img/backgrounds/changelist-results.png new file mode 100644 index 0000000000000000000000000000000000000000..265beacdbcc2d21a2dadd335974d50152298931e GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^8X(NU1|)m_?Z^dEk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xrg^$JhE&{obKRTkfC7)}#TjSIeAivO=IFS_>{93SPn#Gl zIqLGXmZnsnOZ=D;J^%b`OG$I4MFqA3?b(eUF>^~~g%&?bYiDU*4U`an`=IQOv_Ru* zM#CL~0J`9_1;BZLbQGh z6QrGhW`bmcBom}eK(YauAasJVK^ehf0s1UGODBo~tqp3Vob+@SpnJZ%=fi%}G~N{U z;7w$Aq90b*bqqwK5h3^n_`>o6yp5UB5{O1GT@VBdxN52%4JLXV(hImFFax%tTqU2` z6OrUV0#5{1KzPVmYF%~1rs&oftv%;>At!$f) z>G5YGv-33qE1|SRe3QE9QN$i~os*ohF0F~$7ZEYpi{FeO|9(^b_e9?U3;?hZdT^3H RA4mWI002ovPDHLkV1k|bvK0UT literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-actionlist_addlink-hover.png b/assets/img/icons/icon-actionlist_addlink-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..20c740bf86fe73fac5959c93bd82f5d93fb0448d GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^>>$j+1|*LJg}1{rLaio|&h*qGFBvGh@RAOpGafyHvOmSR`AQ x9A@aycep7papBFK{_}opHDz@U&lp%F7;;}|cRy||)Bu{o;OXk;vd$@?2>_Y@Ff;%F literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-actionlist_addlink.png b/assets/img/icons/icon-actionlist_addlink.png new file mode 100644 index 0000000000000000000000000000000000000000..6e2ed2a8e4a2d8fe94ad1608a5fa78dfac6ff6c2 GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^>>$j+1|*LJg}1{rdmko|#Ab{O!GRGtVDs;9{9z`C^hrgJ6ot yBtB+^eGIAf2@ac!?d_~3KivGuIFnf*fuSr^cjczbGoyi~FnGH9xvX>$j+1|*LJg}1ef;nt;{1UF3I`fk4gUTAKc7)NA?X0K1p9%A c1_ovZ#n)VCa`G7SfEpM)UHx3vIVCg!04wV#=l}o! literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-actionlist_changelink.png b/assets/img/icons/icon-actionlist_changelink.png new file mode 100644 index 0000000000000000000000000000000000000000..2a6f2930bbe568c00285161136c8f8040c985de2 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^>>$j+1|*LJg}1natZ>ZOhEu%)l&m;K%>}^=vT=>s7i>{;~aH cCZ=$JA^D=vOSUAVn?M~5p00i_>zopr0Pv_NTL1t6 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-actionlist_deletelink.png b/assets/img/icons/icon-actionlist_deletelink.png new file mode 100644 index 0000000000000000000000000000000000000000..7931f6716b0913a428a55f79aabb0a4cd77caca3 GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0vp^>>$j+1|*LJg}16%-Zy;%DJ`A)&&TzQDU7gNHGtmFGrDg2$sP hotOP;*0FLJFnn}qnr5GH#u})N!PC{xWt~$(69AnfDM>$j+1|*LJg}1{rLaio|&h*qGFBvGh@RAOpGafyHvOmSR`AQ x9A@aycep7papBFK{_}opHDz@U&lp%F7;;}|cRy||)Bu{o;OXk;vd$@?2>_Y@Ff;%F literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-actions-add-link.png b/assets/img/icons/icon-actions-add-link.png new file mode 100644 index 0000000000000000000000000000000000000000..6e2ed2a8e4a2d8fe94ad1608a5fa78dfac6ff6c2 GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^>>$j+1|*LJg}1{rdmko|#Ab{O!GRGtVDs;9{9z`C^hrgJ6ot yBtB+^eGIAf2@ac!?d_~3KivGuIFnf*fuSr^cjczbGoyi~FnGH9xvX>$j+1|*LJg}1ef;nt;{1UF3I`fk4gUTAKc7)NA?X0K1p9%A c1_ovZ#n)VCa`G7SfEpM)UHx3vIVCg!04wV#=l}o! literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-actions-change-link.png b/assets/img/icons/icon-actions-change-link.png new file mode 100644 index 0000000000000000000000000000000000000000..2a6f2930bbe568c00285161136c8f8040c985de2 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^>>$j+1|*LJg}1natZ>ZOhEu%)l&m;K%>}^=vT=>s7i>{;~aH cCZ=$JA^D=vOSUAVn?M~5p00i_>zopr0Pv_NTL1t6 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-actions-delete-link.png b/assets/img/icons/icon-actions-delete-link.png new file mode 100644 index 0000000000000000000000000000000000000000..7931f6716b0913a428a55f79aabb0a4cd77caca3 GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0vp^>>$j+1|*LJg}16%-Zy;%DJ`A)&&TzQDU7gNHGtmFGrDg2$sP hotOP;*0FLJFnn}qnr5GH#u})N!PC{xWt~$(69AnfDMpB%U)_X!O?-gM#PbKTUO$Z%Dm~&{+z$FC$1AQZLL^@_ zG6R;7IXYur9YXtPq#?2qvi{Zf?L_V^!UHXMXmD!>$qU!O^*{b6PXPu1UL8YF(Or(1 P00000NkvXXu0mjfjj@oD literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-add_another-hover.png b/assets/img/icons/icon-add_another-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..c017a95b016dc752c713b93a28d531a7ed598762 GIT binary patch literal 165 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X+&x_!Ln>}1{rUgjo|&hjs%jnk#oOES`CB?S8Z2O9G_hkA zW@bF_;^D)Ma-Pc>r|e@`YA;~Mcy{9Ng?%L|w|HOd`_ZtDLE!*H*>$1G(R&If1C3}1{rUgjo|$LHnfsgNT;_Y0aJF=AG+4mIXky1K z%*=Qo!zTZGmC9VUfL}~g{yE%WF>!y_Zgpv5hWUcukC=BcH83zUe9;zmm(-ma05p@q M)78&qol`;+0F&@FbpQYW literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-addlink-hover.png b/assets/img/icons/icon-addlink-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..c017a95b016dc752c713b93a28d531a7ed598762 GIT binary patch literal 165 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X+&x_!Ln>}1{rUgjo|&hjs%jnk#oOES`CB?S8Z2O9G_hkA zW@bF_;^D)Ma-Pc>r|e@`YA;~Mcy{9Ng?%L|w|HOd`_ZtDLE!*H*>$1G(R&If1C3}1{rUgjo|$LHnfsgNT;_Y0aJF=AG+4mIXky1K z%*=Qo!zTZGmC9VUfL}~g{yE%WF>!y_Zgpv5hWUcukC=BcH83zUe9;zmm(-ma05p@q M)78&qol`;+0F&@FbpQYW literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-bookmark_add-hover.png b/assets/img/icons/icon-bookmark_add-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..d7d7813173c6b9ba946406ce1a2cbc24b0f55d6f GIT binary patch literal 162 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GE}kxqAr-fh{`~)M&#c+N+5V$SLoJHg??97tOhbtJLzbQZ z|Ml+1HyOO*8!pK&C{eg+wxIcMz^#dC3%@kJTIgcJz+u3k&LfolJ}|f%XdZ*7tDnm{ Hr-UW|+3z(l literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-bookmark_add-inactive.png b/assets/img/icons/icon-bookmark_add-inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..ca9eb1d7c9c62a103687f630b21a62098f76048b GIT binary patch literal 171 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GzMd|QAr-fh{`~)M&#c+NIXl72>r|D1S`@S0fhOme1{L*( z%smSJ$~(o=HZe}w$FS7Cp~JHH8Ox+}=4k=9_)RZPOk4P+ao0i@E(Q(*2C<(~hiB~Z R%mEtA;OXk;vd$@?2>@)FH*Wv{ literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-bookmark_add.png b/assets/img/icons/icon-bookmark_add.png new file mode 100644 index 0000000000000000000000000000000000000000..55233a9991b6415cd0d13189beb05025bd70f2b9 GIT binary patch literal 171 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GzMd|QAr-fh{`~)M&#c+NIeWp?S;ns&XJqjHVBqE}WSlgo zh2NmbruRwQjFW5uznG@{V^HdAoxw6Goq1ZoEq>FB6Vn!cY23BYg^Pj1fWgaL`uwv8 Sg<(L089ZJ6T-G@yGywntUpbHf literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-bookmark_manage-hover.png b/assets/img/icons/icon-bookmark_manage-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..b7efbf8c89ba6dd6a7551b37bbe24fb53dcc7ee2 GIT binary patch literal 2925 zcmeHJy>HV%6n9$@Aw!W66J@80mvj_Zf({07f)+ z(qJ}R^Vc)%|3>=uiJ7}}zfGG?myWPUxU%ka2&h`PM;Zj{r_a9-g#j*%R-3kKk7doV z1RTZ)f#otZ$0@ski?sovphJ3wt-@a)KSN;XDm*FF#G1QD`o_`NBh7KWrHuz#Nr$^T zyb{Qaz#^U9*n}Q@rSxqeFK_M^X3sOCFN%qgGl*Qn-heQ*53uQzh;@E;LOM-~ zX_S^-F{}Y7x+cd=ksB9PHfij|u4#mo$R@UXDh#qZ>EfYDAxaP^tUHA$=ubjrp8l!N z+Nec5%l}`g{>H6DSGx2xEMdIIo}6_XnzdU}X3`l~Wuj)dD)N+fnIu(WA-j}oA(_&k zrCg~J3)!Vy3(1rQE#*p;SjaBrT1cie=wEX2^MRGvY;GE{arEott;t5&2h~cs6%({VR#tCvKfmAF_^|roMmPXh_v@ASkDk5y E4O*ZI=l}o! literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-bookmark_manage.png b/assets/img/icons/icon-bookmark_manage.png new file mode 100644 index 0000000000000000000000000000000000000000..17e453be071463cded4f85ccac21478b9c87494d GIT binary patch literal 2928 zcmeHJzi-n(6gG-fp-7bwVu9&&9jSeela$7?TZN`2kw{b}shWX-i+xS3_!ss?b|V2Q zOcmFhHzcjkq z7O|<13PJ&0jb}=#fN~+0{m^+6~Y9 zAD=v*sJYy0F8AW+(eY9J>&4~e%lCI~Tky^Icg2;n6Yj(drIB%Io m#Nmw^$0j7Jm}WAtNHByv`RcwQJ4*m)8-u5-pUXO@geCxANpgJXxxA&4RpJYO4*i-?}$ySTWmm z9+Pr;nU8d9v`J$etg} zwY5tRdr42W*Je_SO*MWPY3`6-wUZ@E>G_$k-v=b`*7dqKFfx3)n>MxlRYn@n4Gf;H KelF{r5}E*3CQTOr literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-bookmark_remove.png b/assets/img/icons/icon-bookmark_remove.png new file mode 100644 index 0000000000000000000000000000000000000000..521d3c435c3280a76d09a7d634341070796f1ee6 GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GO`a}}Ar-fh{`~)M&#c+Nd8|T4bWVe};3gU2Ne5~aY~{Nj z{S4U2vV-krYPL9orhuQrHI~$75xs_0i3u*>m^U%45b!Bf^5Iq9wS1z9;R0>9k0vJ< zwjA}8sB_{EOW{{@n%lIH(=x))rehiBBmD`>9e)I-1TgjV_Dy^$;pr>Iz{tiBnVwY} TUtInU=o$u3S3j3^P68U}fi7AzZCsS>JiuycV978H@CH?vT-@bYI@^nUKW@kGAZ36)|{)UQ2-`?I< zH>j$pXfV0PY^W^oU(Lx_Ti`$YBR91by+^WA8dfo{JfGfZb(Q}`&smo&w#v)m9=S;j zR=@2}++UJ3!A{LYI9-u@lm74sBrtqvYz literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-calendar.png b/assets/img/icons/icon-calendar.png new file mode 100644 index 0000000000000000000000000000000000000000..3379352978ff286b59f28a28e9a2cb5445011c04 GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^{6H+o!3HFmxV|j}Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiuyfW978H@CH?vT-@f_eA6r%)9-f~LYYsR_*f2cmOc#n( zGmtueoA*)#|B)VtKeIW`u5tJy-yuD7ftk?iiHxiGme|c_eHCKAz}QT9rQ{Rec!jN< zj4$5&SE!%d<@jsH1)n*dJiP3S&H6cJJ4!ybo8ZTycAi;9#h+clR6gaii$WZ~s6yD| jstI;(UZ0E|8W_E)H!3HEvS)PI@$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GF`h1tAr-fhe*FJ$&n#fikQA;V-Iv%S?(m1BO6w)rWU3xdQEB@O1TaS?83{1OV``K#>3d literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-calendarnav_previous.png b/assets/img/icons/icon-calendarnav_previous.png new file mode 100644 index 0000000000000000000000000000000000000000..47147a5333f21364feb593d9ba7f9dcd7ea15068 GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PI@$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GF`h1tAr-fhe*FJ$&n#5N`iR}YZc~e#fIZVA@e`AL9NutT zEtKyFov5nY@IzSOK1-5dO7;v135kdWKgmdKI;Vst04bU}?*IS* literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-changelink-hover.png b/assets/img/icons/icon-changelink-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..529722746cd7467cc9ab0bb9326c57013aef72c8 GIT binary patch literal 2924 zcmeHJJ#5oJ6gCW~iWIQ|64L2d7_iTAlG0dqtI)JG5{arLC>eXPFNqcZVP6zCVnA%D z0~5?_*;pBnAOj05Oe~d{8L1E>QaJx5WdLQMTP)en@9ulwyZ7B2-m}B{{cPq&hU2(w z^`O#Vb|ZW@uCVWitM5*jxlZ>wwCVKd7<+^(>rR(|s)hTcL9l-O=p#`$E^}(MIp$g+eb!vxT*YOA_2$CT2nz)$<#k`O& zN}E#Q4v<7~3yF78UgUFIvRIT0IgmVXI|CF?@5znIev*!PDjZPi$_S0eV_}>Z9IuaZ zrBVrr5|SjIA$b4Tra0hj|5iv5b5w}0d4@|3#|9xM?m8o?Ldf<(Lau8IZg=FF5wor# zViJqk)JHiXhtA`f5)Gq2p#CDv_7jzv-YCE>3lWhQVdBU|h+Ms6{->|6i&8#;rt0I(IcJVZ6q!oOK&ov|CbU(is{_msWJ*D6xl$!ovTM0kk|_oKORmgvU?n!2o5pM${q*aF$wt}R)k?V) zoOXYnopnCXW?=T@=HsI-;I7T*^XKhLC)4S-S8pzZ8TaE$cKTBPItu6C>R!F_`rgsg E-}0*xA^-pY literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-changelink.png b/assets/img/icons/icon-changelink.png new file mode 100644 index 0000000000000000000000000000000000000000..8f71029910a451445eb89ab9ac6831a424024d95 GIT binary patch literal 2925 zcmeHJzi-n(6t<{9mDQ>3;L!Du0XTIBvDR zS8Fl59KFjo*!T0=hgZzpq&r>OcKS5H9^tCG(<7j6;Q?t8tRFr5LKKeU&x}r&b{mgm z&9MX=VT90fSv1EfmC(i7h)~cY1H)F~_xB$mFmx3jlp12g-6lh0Z{m^mq}kCXBdx5% z$`-GLG9$1E#UQjy+m}NX#=J87kCqVxF@%m(m>jCx*azE=M?g`K1SzM98wF4*2!)cg zAr;qwB#N6zypIZEF25;@CApXf=>xZTpm=&;Zq;_vbj(xXkWyDhCK>2dH zj6?}ZQjQ^V{*g^_n6v%c5kg zDW-8+cEqR#py-;MFvV_CRMn)3m$;@8RU(_%9;h(P>7c&R#IyYWmFjQYN_?bCSHlt}YwXHdx1njfrDdj_aaAU6hN~jaco#`BCFZgVx#p57 z11;prl$gsdGnvUlsXY9~DF z72mvjp)M`GpB%U)_X!O?-gM#PbKTUO$Z%Dm~&{+z$FC$1AQZLL^@_ zG6R;7IXYur9YXtPq#?2qvi{Zf?L_V^!UHXMXmD!>$qU!O^*{b6PXPu1UL8YF(Or(1 P00000NkvXXu0mjfjj@oD literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-clock-hover.png b/assets/img/icons/icon-clock-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..a0610633dfad3c75f12da8890fca6035fccd306e GIT binary patch literal 3214 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn1|+R>-G2co$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@T(>eqB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN*i1Q(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!8hNY6+&*}%+L!PHpK z*wo0($V5lM$iTot-@sho*g)6N!pgwZ%EV9s3Y6@)6l{u8(yW49+@RJ0dA3R!B_#z` z`ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ6}oxF${-^kX1JslCl_TFlw{`T zDS*sOOv*1Uu~kw6$}2z(Pf3QGT~Jz-12#D&SwA%=H8(Y{q*&ij&rly(JuoDKGSf3k zis9PwilLzl3~&94!~&oe1N|bf8i-D~7AxPxqU=;)XuBom6sLksMaYGxCIy!ymVm7V zIuYat1)G#)D~L&8F2qxgIVBJtgqxEI@`+VWVqUtfQiX0xYFc7xPKlB}REIvu-!LsU z`ltrlAgm891}3AB)S}#CYFUNLY#XqXkfH`?Aw&!q<-pXY4^M7TZ$eWBttfC}pq1e; zb4M+Kg#=ObXmAk~OfW^G!37HmqUh1!A}W|*ibjJA77|3!qrpW~Fu@ez3ob51gEch| z*lsEZHb+nWnVQ4E!06@a;uunKt0&kxuh~H$cKw<@%r z?Ag37JGq)g-+|kP!TNz*$B#P~?;E{4|LoOY<_IS32kipY>_!Wi_BHA!_#f(JiCCI& zGT8N7*u?uQzw7>Y*ZI0EqivprSB&9;{P0fc56449BF#1~`g6%=^Q4cHwr`trsPSBm zlIO9Clio|`Xz#wyD&+L^N9m4;uZCf#k{75fUw*lFic+!-pFnEd-lr~)1VuM3T+gU< zGJ8!v-v$Xy&yIN_o+p3Y4p{ca^TfZmomZw7znyEPxkbKCKxqDBrm}q-SwpwjJj_+N zctQWae~-G2co$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@T(>eqB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN*i1Q(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!8hNY6+&*}%+L!PHpK z*wo0($V5lM$iTot-@sho*g)6N!pgwZ%EV9s3Y6@)6l{u8(yW49+@RJ0dA3R!B_#z` z`ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ6}oxF${-^kX1JslCl_TFlw{`T zDS*sOOv*1Uu~kw6$}2z(Pf3QGT~Jz-12#D&SwA%=H8(Y{q*&ij&rly(JuoDKGSf3k zis9PwilLzl3~&94!~&oe1N|bf8i-D~7AxPxqU=;)XuBom6sLksMaYGxCIy!ymVm7V zIuYat1)G#)D~L&8F2qxgIVBJtgqxEI@`+VWVqUtfQiX0xYFc7xPKlB}REIvu-!LsU z`ltrlAgm891}3AB)S}#CYFUNLY#XqXkfH`?Aw&!q<-pXY4^M7TZ$eWBttfC}pq1e; zb4M+Kg#=ObXmAk~OfW^G!37HmqUh1!A}W|*ibjJA77|3!qrpW~Fu@ez3ob51gEch| z*lsEZHb+nWnVQ4E!074e;uunKYfi9r-XRBp*f5Q+&)9yjbRJ=q(cJrxEnugQhGy)- zl4T{6&vP1>y4Ey!aH<#NHRLnoui2iFbaUF&iSrCL8|UAzDKn|HozZ5Q!06(z;t%Tv z_Ir(|toKjrKW4@;uTf|R^R@%J0w2n~>rd`j-Fx-Bv;p(81Nw^Jn2tE`{b7(l(AVP4 zxxwpT&-Si2Tb1?)-p`)LuCq1F#K~Vq^_=8|Et`*Q{o$;|r89d*a9vtkRoRMPf5ah$CmjJr`EpeWCqy-(r>J%Y(m8QA+-kquBNLQl$P$_tu;jtD0Bj zwSGOzsAj9md9hjPq(nS_>WO(JH|N_<+$FSbZ?Jjk+jjYuBkC0mQ}c7YL{;-|Y*CT= z_4Lo|kC~qtPl@zRnXx&XRakbi^1h8ngkK0sFV#@EDO|8_3F;tty85}Sb4q9e0LY${{Qv*} literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-date-hierarchy-back-hover.png b/assets/img/icons/icon-date-hierarchy-back-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..e28bc836abf07fab04cc94d35553dbe4e008b677 GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^tU%1c!3HD^Kbl$tDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MLwP`jv*DdlK%YvZ_mtAQB`%0J&3bM!BN4T;lxe;BWw;f zjTa9eW{y-S{Qd1M_lygy4#x}(6Brd7-4*sR9QoXsrryA^F}mffCj%oJgO8&^>wO7T QKA^b_p00i_>zopr00LDt9{>OV literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-date-hierarchy-back.png b/assets/img/icons/icon-date-hierarchy-back.png new file mode 100644 index 0000000000000000000000000000000000000000..665724b8cab297c5746efb1b46c2a59383926cc7 GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^tU%1c!3HD^Kbl$tDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MLwP`jv*Ddl79aGZ_ms#zopr0Ces%hX4Qo literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-datepicker-hover.png b/assets/img/icons/icon-datepicker-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..064ef4eb40300c2c8c90a949bd69ab48581e4552 GIT binary patch literal 236 zcmeAS@N?(olHy`uVBq!ia0vp^{6H+o!3HFmxV|j}Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiuycV978H@CH?vT-@bYE>TE`4W@kGAZ36)|{)UQ2@9yqa zH`ujfM}x^VWDkdd|9Ju~l9c_sC6R zu=;I(;{KAP33h5G!s$ZJhYzket9ℜMflSCBls-KQnNiyv*ovmi?xUV8?Z5){d(? jbP0l+XkKwOUsw literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-datepicker.png b/assets/img/icons/icon-datepicker.png new file mode 100644 index 0000000000000000000000000000000000000000..3379352978ff286b59f28a28e9a2cb5445011c04 GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^{6H+o!3HFmxV|j}Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiuyfW978H@CH?vT-@f_eA6r%)9-f~LYYsR_*f2cmOc#n( zGmtueoA*)#|B)VtKeIW`u5tJy-yuD7ftk?iiHxiGme|c_eHCKAz}QT9rQ{Rec!jN< zj4$5&SE!%d<@jsH1)n*dJiP3S&H6cJJ4!ybo8ZTycAi;9#h+clR6gaii$WZ~s6yD| jstI;(UZ0E|8WDSr z1<%~X^wgl##FWaylc_d9MU|c|jv*DdlK%YvZ_m7zL718M;EIQf+l2WeI5Z1NOIcG} zd>v%AR)2rD-ocK4!d|A1y^S?)Ua|97kJLHb;Wvq3^zdhpVG67Hv`JxsN5XkcXM_$hZp;`El&Ku0im My85}Sb4q9e0MYzPT>t<8 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-dropdown.png b/assets/img/icons/icon-dropdown.png new file mode 100644 index 0000000000000000000000000000000000000000..7331ed539dbdd02e02dc0b12387d44f2037862ef GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^;y^6O!3HGFip}=|DajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MU|c|jv*DdlK%YvZ_m7zL718M;EIQf+l2WeI5Z9B6f;Z_ zG-E8h@>8UJy@MV9guP51dmC%qykh6E9;tJJM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>OuB;uunKt0(w2Z?l0wvyOvX0*jl*{F<%G2UrfMlr&G{{qcBn z&jF6NY&j0KCps?)yGCsCtGux@M(^XUbrYQfMZ{aAres*!HvYBfJMW=bmc${?p}M1i z`3Ix$2exGoc%B(V)*WdKxO2OJxmUWyPg-KxE>6S9%!LfaV0G0G~R&Mhc?6p&#G>=_#^SE`G;?j p`_#D!H$~+|&PsZS{S0qlWcU%3`}f_+t}IZS-qY33Wt~$(69B1JaF751 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-fb-show.png b/assets/img/icons/icon-fb-show.png new file mode 100644 index 0000000000000000000000000000000000000000..886c05c3755c67ef0062d300bb0003b2901620a2 GIT binary patch literal 380 zcmV-?0fYXDP)(QJtd=r&wV?ej ze672=%Wr$Q7*bwvxq^yEbi7W%ow0%foWq5Xgi7cIdC(d1p&B|Mh_r%t!0L2qAAtJ_ zTs9TJ9ZAIpj7`zdMyy@nA}D|on}WtnMXJjub6)XzW4Jnbsmo=@3RP&ntr1+XcqaCo z)90QcT-d@ZwwsBa=xbBB%A?PA(+ya_t}2aNkzJrpk^vBEz;|A%g9w`;65JfL8U}fi7AzZCsS=07`Sd_hD4M^`1)8S=jZArg4F0$^BXQ!4Z zB&DWj=GiK}-@RW+Av48RDcsc8z_-9TH6zobswg$M$}c3jDm&RSMakZd%cjB#Xh3di zNuokUZcbjYRfVk**jy_h8zii+qySb@l5ML5aa4qFfP!;=QL2K8o{^rBZnA-yv4W|w zp0TNsnURT(f{}rNg}#BgzOjL>p@o%!sg;SL0u(6OaVgjorKDK}xwt{C1M+N@GD=Dc ztn~HE%ggo3jrH=2()A53EiLs8jP#9+bb%^#i!1X=5-W7`ij_e|K+JGSElw`VEGWs$ z&r<-InV6JcT4JlD1e8~R8lI92H@l#;CG(C1>ZBxvUpq&FbIaVj|LU-}9Wx@7OJ@De4Q9Nf12hLKMxg+ zX?)&uZ#e9Y^Ssz!z9i3DXOaEJDIaa}Y<4TYKXa9RadEaN*YAtHvv$?@o>-Qc`Z#Tp zPTLaYBGW~QZK^M(wH}t1Ii%LT!&6DAa2G>%0S|jXquq=az5;>W9Kx$q7kTfvB)ouQ zwZ(0NZ)+znR5&i!^J%Zp@>kPbPl#Ns-R-V({tJ)F*6OcsChFf|{u~;lJ#qel1^O!P z)zgz9iLC%-fzB4DW)dK#@(Rz zFw^S&yg$=fekB^-aF27?5O%wX^M-rQw2x8;`JcUwV%YsE{?y+q*H-U|d)+GQn`n8# zT~c&n-0vxM-POKxyo0l}8U}fi7AzZCsS=07`Sd_hD4M^`1)8S=jZArg4F0$^BXQ!4Z zB&DWj=GiK}-@RW+Av48RDcsc8z_-9TH6zobswg$M$}c3jDm&RSMakZd%cjB#Xh3di zNuokUZcbjYRfVk**jy_h8zii+qySb@l5ML5aa4qFfP!;=QL2K8o{^rBZnA-yv4W|w zp0TNsnURT(f{}rNg}#BgzOjL>p@o%!sg;SL0u(6OaVgjorKDK}xwt{C1M+N@GD=Dc ztn~HE%ggo3jrH=2()A53EiLs8jP#9+bb%^#i!1X=5-W7`ij_e|K+JGSElw`VEGWs$ z&r<-InV6JcT4JlD1e8~R8lI92H@l#;C;wZNYpo-l2UdhRk1wfyq{P^b*JLZ4Gwk7=dHe7=vy4W>BE)v#qYe&|Nl4t_nhK0 zeSa1@mT*oJ)RkLUVKqtb6~BpOS+f5F!%b6GfG>0PeJCq(laPa4%Onj`PHTzkp3Z)%$E0`6Ns zge;S`FDyO3<=EY(D`oS9H!6HoT2~hx&&%VvqjdH`Tk|$%nVPJ*Zw_g2a@YLrJ#TG$ zLGSL5yQQxE2}?IJHE-y>VeweB>HQh$rHp1O`?J0$2lsv2aFHuJ$m#gzzDY`puH9;n z$`9=CG(O>_DZj)~M)P({N66tMrB{~DJLiS|=DJs)u~@Ua>YaB3Bg2XM?iCV0oKrxZ N4^LM=mvv4FO#n#D$H)Kx literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-form-select.png b/assets/img/icons/icon-form-select.png new file mode 100644 index 0000000000000000000000000000000000000000..3591d50312ea306be4b843a3a225682f279e81cb GIT binary patch literal 289 zcmV++0p9+JP)SY`kj_#X@S_wV2T)2C1WudA#3f9A{?FdqkCK*l3D9X=&f|5IEB nra&_~sRcs{u4F?s01#jR0`HU)oz+Ui00000NkvXXu0mjfbP0 Hl+XkK%g8c0 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-inline_item_tools-closehandler-hover.png b/assets/img/icons/icon-inline_item_tools-closehandler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..cd186c8571c2f2fa1f1154b601fa3d994f9f3388 GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_8<4DKZ~;-0C9V-A!TD(=<%vb942~)JNvR5+ zxryniL8*x;m4zo$ZGejEJY5_^DsCnH`TyUZnMdNBWdOsHUyVCH)N~zYnPH*qBN%Y7 zMq%oK1_tg1E@4L=H4|3xh6q6~b%&#p61-{e-NPPmT=~nWp~;Z)o;`_qLZ^c3`^Fx2 z1=fJ03FeI|3%NwuF8M03dL*hfJXEV`&~VjpNS5Z%VtQ2N)WyKW!@#WN-|5a9QwDSi NgQu&X%Q~loCIAuyLBs$6 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-inline_item_tools-closehandler.png b/assets/img/icons/icon-inline_item_tools-closehandler.png new file mode 100644 index 0000000000000000000000000000000000000000..00edf99a6931f631a8b66a04f22cd315d92ba552 GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_8<4DKZ~;-0C9V-A!TD(=<%vb942~)JNvR5+ zxryniL8*x;m4zo$ZGehuJzX3_DsCnH`2XLYnP>No9U=@L>jips&T%L?9JqS5)NX=T zf|5*OcTW&)n!^#+lP7dW@&uP-joJ(r4~7(_O|u}1l@u0MoV}HD_KLOPg`qdPlWHZeFzQQO80x|zejZM`EDm%UgQu&X%Q~loCIF@&P>28k literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-inline_item_tools-draghandler-hover.png b/assets/img/icons/icon-inline_item_tools-draghandler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..57f40775ef8a964bf1ef5bbcb3b8fe089d9538e6 GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^+#t-s1|(OmDOUqhk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XW_Y?dhE&{2`t$$4Ju{EQIZFkGB|;55}FSqbXaA5M` zS+PLA>tN1;XFnrEomCx{#W5tgYRqj|)5y8XKz>z$l7KbS+IogX3;(dJuwho-G@FxA zY{9y-N3_(=rl^?vH|*NT_~IG=g@hc2qzN&M0Xa%{Qnp;+V0rY_A&21zcLSHO;he@L rjBF3MHoAH#iWoa28wf@UDI8#^OmaTo(tXzl=tc%lS3j3^P6tH#`hHI1CB4CGf8C<$0It*vKRwD1qh3L9qSO|v-} z#TKkPdqhj^Y>JAxf5Wbgj4z(?Ur5MdNSYAC7?7iMCuPe84wgq>9da0sa5r!X8_sE5 s!pQc3Yon`|qKL6WvVmZvkir25UQ>tb860vSfNo^)boFyt=akR{0D`1cQvd(} literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-inline_item_tools-openhandler-hover.png b/assets/img/icons/icon-inline_item_tools-openhandler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..d82b640105d97e1cacbae57ed6c967359582dcb5 GIT binary patch literal 233 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_8<4DKZ~;-0C9V-A!TD(=<%vb942~)JNvR5+ zxryniL8*x;m4zo$ZGeipJzX3_DsCki&e;3ko|*9g(~;g55yOA~{Vymy64@wm&hmqt zhdo2m@z0uk@(Dr?g^UVY0S_9CH%A4~%5OdqRO zG_g8d7JiuL6vV-tz?#s`e3hhC|z$a7O+4Ji{A_F>Tq;CL!_NTh+m cp@ETM&VQfZD%ufVKxZ*{y85}Sb4q9e03s?$9RL6T literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-inline_item_tools-openhandler.png b/assets/img/icons/icon-inline_item_tools-openhandler.png new file mode 100644 index 0000000000000000000000000000000000000000..a250eed50b742fe998712ebdedd71d57f2e4abb9 GIT binary patch literal 234 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_8<4DKZ~;-0C9V-A!TD(=<%vb942~)JNvR5+ zxryniL8*x;m4zo$ZGeh;JY5_^DsCl}6c+wG@4&Eup-@@TwdenTVUv!=&PI*{k6yj{ zCFfz!kaYa+?(+HuPlltc4Oi+E!Wd?5VeH^_U<%+&VO99Zn_$k!`kdL4)1ij3gSoN7 zHsm1Ff|s2I?aG=hj2oCXyl;5OQZ5`4XfGh%B$8Mv9Ad6KiAifWr`(KyMkkH!0?Qa! c7?^k%_{uyQCUh+71G1|->WOumJ z;c6t`!P;$;RSrq;;1f6JcKggsok3%T=(9#9R+;j!i&bfFn#t7Q6Cb&AV t{{11M5N*!b-o)vUbHZb51|x?7L#U+j|Jz#|7=e~Dc)I$ztaD0e0sxk@Kb!yn literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-inline_item_tools-viewsitelink.png b/assets/img/icons/icon-inline_item_tools-viewsitelink.png new file mode 100644 index 0000000000000000000000000000000000000000..06f38e325d25e02b300f96176e69868a7d85c804 GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_8<4DKZ~;-0C9V-A!TD(=<%vb942~)JNvR5+ zxryniL8*x;m4zo$ZGeihJY5_^DsCnH`TyUZS@FOT2bKiOsxK=TC)oA7pJf$O_{h*9 zz0u)RvmK{p0A-+CEZNWR?t9<6_uU)b z_EO>INa%8iVVIHJLbgcl5Pb&+Pt)(jyN@rZxkTnFq|{s`Ey==6MrqbC$mvoY7qO&l z+NNzal7P#xJeN0T z@tV4@Y2nglp)7AUlt9Ns0*GnGwhDaRBz-+CJo_`)(=jX>0iKyKYZh=~3q6c5wiwrLxcv8CJpE7jk)Mej&Qu7)P`*XWhgZbRL6>y+8) zjN>w1GaMIrz}rs}DAAMc%hi)i0jMumphQo$FIP`81)#oMff7C0zFa-Y6oCFESLkqH z#Ri?5T67$JyZ>0DqpX_CX3Eaz+S%dZXti3Md4F$+eY*1U!@1q+K>JMk%huJM(cKei zjTx)%9~`7srbY2?^5HF}JqjMAA6?9}7c1u{nfCVHFaF5{^SzL5jgKv5Qpr<$pYrJv iH?TGGTo}K=406oZpYU7hYovd?Z*@BaoA|06a4 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-menulist_external.png b/assets/img/icons/icon-menulist_external.png new file mode 100644 index 0000000000000000000000000000000000000000..0cc2883201924051d450c64fc54bb180b0872b89 GIT binary patch literal 2990 zcmeHJ!B5jr81KL!EFls->8U=w5M5u_F=R~(Lk6;h;WB2}LCw1MG3wf`whvdh2*gDE z1B^;M`3HED7>zM17fn2JL1UuEgB~=-lZFIe+jZbUvxD5$r2YE6_xpa|`+n~`d^fU_ zXS%~j!W2byr^iz{V!O!O+1Ww9CthznAm%V0E#Rr@46aEQqK1`f3DId?Dx(~dl=;gq zkw8)5O*LP@h0FvmS9L~mF^r>|B$}dxA;*;D3c_>=l~qFo-yS~&w5o_;I-X%O<_MZq z#}_O#wJ@2N7b0Yigf!Qlykj<7^Kx@OqCBLa_?C;#p;1hfai6%qJ{DrB z0NJPOtOV^(B{G^8T~+c3&R;ch%pBBz#TvE2wW?7GTCZ|F!S31Ok-Vf@HO z2%nLx3LB z_R4t8uvg>(Z!1ZlL{qjUS5q45bTusRofLd||N;G9#ay2DW0Q#3);hljM z8Dws%k#Y3Z)=iC!vX|1S;k>h1x@&!13bnVtnD3Y{kG{#i>sc>`KI~7vT{(W|zCL?J5)i literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-menulist_internal-hover.png b/assets/img/icons/icon-menulist_internal-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..a99d4a1edb81f01e0d1da35c87d7674a9cedf65d GIT binary patch literal 2980 zcmeHJ&rcIU6dp}f(v|?x#Go-wmP9UgXS=0H*IfuwkS3I1si8-vyFdx3B{Be! zExk~r#oUaf)@wX=F}zc2uxJ3}F{gpmDxt7M%DSm=pI^M>psp$0LMkWZ8WW_VPp?{J zes#8>u2$8w#*K|eWJh8IH9|3TYKCb`j>37o68m?T5eGd8tty;5sdC+FZgIRE9s Uom-o6fXz_8%Q`2@Zw}l&;#3PyDYM$WrHlpCN3e%8urL+J1oui%XV-JC*#4y ztBD5_L%f@K_22=oa`9^TCyWOZzY?5&EqKuEL2lcmeSI^(_j~hx^A7Ln=EmJ|{u??gKEHX1qR~vN8-K8Du6K>gXn*>yB+#)rCje`dth{|#NsabE( zM)jVeyS9KMj1bx$i{?1B6na>16AGH7WjY%C{O%Y6)6n2{p(<9r6|!fpANpkLaHFmt zw)LU`OG~^ODvZD;6ob&VoInXR81pLZKUzi*#1PunU~;HNbrY<(J^^!rEXX-soX>+o zUdR{Zd3kOY$fCG_#M>w@=A;EhEGTmlNFTVw1JyTnm0Ec%O~*V9?osL~2z5Fgp_3O} zzlEe?v4}(&$#RY%a>0Q^ahP+08xcjqQ6_=zn;tb?2Sl8>>F!evLbeZ5azpQOd;7i> zGaEW07O{y#10)F&x`<~=)Xdf%4Z2}YkgCk|Mj`fCh=}|clSFnylq&YygsHuTt$@U= z=X=|vxkWLJ)3PH*H2~Gnm4qpFlcJU_ns|w8nNcN*g`JiL!<<2O@xDbNN+VEIcNU_e zKMB?I^!EeSMs?!b!T(D2H*PgP(uJ#G36nK;<*eIKx82e*)6Tdo6F0+Uk!QU9B$*OD z*}hyo$&`Wma%D>NWczaUBvS_J%atk7lkLmZlS~=tUvly111oXZ+|*&?=*h3=78_+N zmGW{uJZ*|cZ-161KAxSOm9C8C2Zw)5PfhWUz70++9#!b~_oL6G7sodTZi&}t1}29F qjH@#vv)t>4ldrfZt7D&D4o&QECne?Uv{o)f19D|`qx|O1&g0(=X%t-m literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-navigation-external-hover.png b/assets/img/icons/icon-navigation-external-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..30b34906c71385a4434e22f1262a95ef71813fe9 GIT binary patch literal 2989 zcmeHJJ#5oJ6m~&Cn^G02Nc^b7=|Ey=<8z#*G?w#6)6$?Os*<2)=n%)grdDjn*jL4^ z7!VRtyCETlj_e4DfdMhFbSOv&2?+)SOEy@L7?>)RvmK{p0A-+CEZNWR?t9<6_uU)b z_EO>INa%8iVVIHJLbgcl5Pb&+Pt)(jyN@rZxkTnFq|{s`Ey==6MrqbC$mvoY7qO&l z+NNzal7P#xJeN0T z@tV4@Y2nglp)7AUlt9Ns0*GnGwhDaRBz-+CJo_`)(=jX>0iKyKYZh=~3q6c5wiwrLxcv8CJpE7jk)Mej&Qu7)P`*XWhgZbRL6>y+8) zjN>w1GaMIrz}rs}DAAMc%hi)i0jMumphQo$FIP`81)#oMff7C0zFa-Y6oCFESLkqH z#Ri?5T67$JyZ>0DqpX_CX3Eaz+S%dZXti3Md4F$+eY*1U!@1q+K>JMk%huJM(cKei zjTx)%9~`7srbY2?^5HF}JqjMAA6?9}7c1u{nfCVHFaF5{^SzL5jgKv5Qpr<$pYrJv iH?TGGTo}K=406oZpYU7hYovd?Z*@BaoA|06a4 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-navigation-external.png b/assets/img/icons/icon-navigation-external.png new file mode 100644 index 0000000000000000000000000000000000000000..0cc2883201924051d450c64fc54bb180b0872b89 GIT binary patch literal 2990 zcmeHJ!B5jr81KL!EFls->8U=w5M5u_F=R~(Lk6;h;WB2}LCw1MG3wf`whvdh2*gDE z1B^;M`3HED7>zM17fn2JL1UuEgB~=-lZFIe+jZbUvxD5$r2YE6_xpa|`+n~`d^fU_ zXS%~j!W2byr^iz{V!O!O+1Ww9CthznAm%V0E#Rr@46aEQqK1`f3DId?Dx(~dl=;gq zkw8)5O*LP@h0FvmS9L~mF^r>|B$}dxA;*;D3c_>=l~qFo-yS~&w5o_;I-X%O<_MZq z#}_O#wJ@2N7b0Yigf!Qlykj<7^Kx@OqCBLa_?C;#p;1hfai6%qJ{DrB z0NJPOtOV^(B{G^8T~+c3&R;ch%pBBz#TvE2wW?7GTCZ|F!S31Ok-Vf@HO z2%nLx3LB z_R4t8uvg>(Z!1ZlL{qjUS5q45bTusRofLd||N;G9#ay2DW0Q#3);hljM z8Dws%k#Y3Z)=iC!vX|1S;k>h1x@&!13bnVtnD3Y{kG{#i>sc>`KI~7vT{(W|zCL?J5)i literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-navigation-internal-hover.png b/assets/img/icons/icon-navigation-internal-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..a99d4a1edb81f01e0d1da35c87d7674a9cedf65d GIT binary patch literal 2980 zcmeHJ&rcIU6dp}f(v|?x#Go-wmP9UgXS=0H*IfuwkS3I1si8-vyFdx3B{Be! zExk~r#oUaf)@wX=F}zc2uxJ3}F{gpmDxt7M%DSm=pI^M>psp$0LMkWZ8WW_VPp?{J zes#8>u2$8w#*K|eWJh8IH9|3TYKCb`j>37o68m?T5eGd8tty;5sdC+FZgIRE9s Uom-o6fXz_8%Q`2@Zw}l&;#3PyDYM$WrHlpCN3e%8urL+J1oui%XV-JC*#4y ztBD5_L%f@K_22=oa`9^TCyWOZzY?5&EqKuEL2lcmeSI^(_j~hx^A7Ln=EmJ|{u??gKEHX1qR~vN8-K8Du6K>gXn*>yB+#)rCje`dth{|#NsabE( zM)jVeyS9KMj1bx$i{?1B6na>16AGH7WjY%C{O%Y6)6n2{p(<9r6|!fpANpkLaHFmt zw)LU`OG~^ODvZD;6ob&VoInXR81pLZKUzi*#1PunU~;HNbrY<(J^^!rEXX-soX>+o zUdR{Zd3kOY$fCG_#M>w@=A;EhEGTmlNFTVw1JyTnm0Ec%O~*V9?osL~2z5Fgp_3O} zzlEe?v4}(&$#RY%a>0Q^ahP+08xcjqQ6_=zn;tb?2Sl8>>F!evLbeZ5azpQOd;7i> zGaEW07O{y#10)F&x`<~=)Xdf%4Z2}YkgCk|Mj`fCh=}|clSFnylq&YygsHuTt$@U= z=X=|vxkWLJ)3PH*H2~Gnm4qpFlcJU_ns|w8nNcN*g`JiL!<<2O@xDbNN+VEIcNU_e zKMB?I^!EeSMs?!b!T(D2H*PgP(uJ#G36nK;<*eIKx82e*)6Tdo6F0+Uk!QU9B$*OD z*}hyo$&`Wma%D>NWczaUBvS_J%atk7lkLmZlS~=tUvly111oXZ+|*&?=*h3=78_+N zmGW{uJZ*|cZ-161KAxSOm9C8C2Zw)5PfhWUz70++9#!b~_oL6G7sodTZi&}t1}29F qjH@#vv)t>4ldrfZt7D&D4o&QECne?Uv{o)f19D|`qx|O1&g0(=X%t-m literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-no.png b/assets/img/icons/icon-no.png new file mode 100644 index 0000000000000000000000000000000000000000..2a089f475ffa6eb662b296a82d598370a44760c6 GIT binary patch literal 140 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X^gLZ0Ln>}1{rUgjp4sle5eEi=kONFgHnz6!nKfBWcCz2z lo*$mFWUn-b76XR?LykW;_x9HZ<^Xjvc)I$ztaD0e0st6(DP{lw literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-object-tools-add-handler.png b/assets/img/icons/icon-object-tools-add-handler.png new file mode 100644 index 0000000000000000000000000000000000000000..a3621b5ec52105a26a80d14085d20861c02e20e6 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^VnEEp!3HGLe)=8*Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiX1#$978H@CH?vT-=3NEf$bDAm+1*hE+ouIb1UIgW0Pup znERnRV}?@llMQai-e*30bTP!Sx;awg%74b`EDjBf44c)(t~xlmM+41b@O1TaS?83{ F1OS>#HM#%* literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-related-lookup-hover.png b/assets/img/icons/icon-related-lookup-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..549e2619d23bcd0720ea80a922e98a741a0aa957 GIT binary patch literal 3136 zcmeAS@N?(olHy`uVBq!ia0vp^{2JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>OuB;uunKt0(w2Z?l0wvyOvX0*jl*{F<%G2UrfMlr&G{{qcBn z&jF6NY&j0KCps?)yGCsCtGux@M(^XUbrYQfMZ{aAres*!HvYBfJMW=bmc${?p}M1i z`3Ix$2exGoc%B(V)*WdKxO2OJxmUWyPg-KxE>6S9%!LfaV0G0G~R&Mhc?6p&#G>=_#^SE`G;?j p`_#D!H$~+|&PsZS{S0qlWcU%3`}f_+t}IZS-qY33Wt~$(69B1JaF751 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-related-lookup.png b/assets/img/icons/icon-related-lookup.png new file mode 100644 index 0000000000000000000000000000000000000000..b14a9cd3e5c1ae884d5925b8cf637f32f41cc93c GIT binary patch literal 3139 zcmeAS@N?(olHy`uVBq!ia0vp^{2JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>P7N;uunKt0(w2Z?l0wvyOvX0*jrM!^B_r`xt~7CSTyykT!5w zYUE&V<+PhoIzYZ?(H9rNX={Sz%Jimt+ng_cQt;xPdkfc;3`^Ulzng9DDz)C|RD2`A zRlvmlfm!VVtIt948HZDT39>sC<{#oUStl5kn=s>*(vg&vtxRWP1-%TIv(57>+yzZ8 zvQ<2v_@OXgy tk^D*4tKP6&URAL;JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>OuB;uunKt0(w2Z?l0wvyOvX0*jl*{F<%G2UrfMlr&G{{qcBn z&jF6NY&j0KCps?)yGCsCtGux@M(^XUbrYQfMZ{aAres*!HvYBfJMW=bmc${?p}M1i z`3Ix$2exGoc%B(V)*WdKxO2OJxmUWyPg-KxE>6S9%!LfaV0G0G~R&Mhc?6p&#G>=_#^SE`G;?j p`_#D!H$~+|&PsZS{S0qlWcU%3`}f_+t}IZS-qY33Wt~$(69B1JaF751 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-related_lookup.png b/assets/img/icons/icon-related_lookup.png new file mode 100644 index 0000000000000000000000000000000000000000..b14a9cd3e5c1ae884d5925b8cf637f32f41cc93c GIT binary patch literal 3139 zcmeAS@N?(olHy`uVBq!ia0vp^{2JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>P7N;uunKt0(w2Z?l0wvyOvX0*jrM!^B_r`xt~7CSTyykT!5w zYUE&V<+PhoIzYZ?(H9rNX={Sz%Jimt+ng_cQt;xPdkfc;3`^Ulzng9DDz)C|RD2`A zRlvmlfm!VVtIt948HZDT39>sC<{#oUStl5kn=s>*(vg&vtxRWP1-%TIv(57>+yzZ8 zvQ<2v_@OXgy tk^D*4tKP6&URAL;JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>OuB;uunKt0(w2Z?l0wvyOvX0*jl*{F<%G2UrfMlr&G{{qcBn z&jF6NY&j0KCps?)yGCsCtGux@M(^XUbrYQfMZ{aAres*!HvYBfJMW=bmc${?p}M1i z`3Ix$2exGoc%B(V)*WdKxO2OJxmUWyPg-KxE>6S9%!LfaV0G0G~R&Mhc?6p&#G>=_#^SE`G;?j p`_#D!H$~+|&PsZS{S0qlWcU%3`}f_+t}IZS-qY33Wt~$(69B1JaF751 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-search.png b/assets/img/icons/icon-search.png new file mode 100644 index 0000000000000000000000000000000000000000..b14a9cd3e5c1ae884d5925b8cf637f32f41cc93c GIT binary patch literal 3139 zcmeAS@N?(olHy`uVBq!ia0vp^{2JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>P7N;uunKt0(w2Z?l0wvyOvX0*jrM!^B_r`xt~7CSTyykT!5w zYUE&V<+PhoIzYZ?(H9rNX={Sz%Jimt+ng_cQt;xPdkfc;3`^Ulzng9DDz)C|RD2`A zRlvmlfm!VVtIt948HZDT39>sC<{#oUStl5kn=s>*(vg&vtxRWP1-%TIv(57>+yzZ8 zvQ<2v_@OXgy tk^D*4tKP6&URAL;JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;l>OuB;uunKt0(w2Z?l0wvyOvX0*jl5@Rs^Nhgc4%lr&HC|94|S z&jF6NY&j0KCps?)yGCsCtGux@M(^XUbrYQfMZ{aAres*!HvTo>Iq#uZmc${?p}M0% z`3Ix$2exGoc%B(V)*WdKxO2OJxmUWyPg-KxE>6S9%!LfamR*N zj&Ln}wPB%+z&?v9%{ezzrghKEb{9Kt6q>us)ceM~X}kfi4{eAIo>kp!@kioS^AF!5 p_o;IeZi>o_oR#zt`x)NA$S^A)Z>h@G)SI9-y{D_6%Q~loCIHivZZ_D2lFLqx_MA~aJL4MKmU8*|NZa(-hcS7 zPEDTf4)=u#g6PhV=Zdby@1cVS@OSOW&;~ZWXta!`^;u+#CM2@5UV&u3E>>X?it^(8 zOUM&M_?=QJqjF(_lk_?*x)|E28#tOE__Sk)QVk-q0;`H9P+y-tr$|K>sF_58DHtPg zP8n~QaJn&Bk{UHBB~$6)Fz;}fpbn8pI(1dEI7gs7UJn1e%YY(12&xH`f2eX{iX72R zNXBWFW+M_a7$XxgI+kDu+4um-GE5RMLmw}Do>HOp*v z#(o*E8TN}j;O!&{lxWL#P8gTEryA+k zMCg7zTd-d|IC8I$Ot2redhYCGR(_7GT^qK literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-selector_add-m2m_horizontal.png b/assets/img/icons/icon-selector_add-m2m_horizontal.png new file mode 100644 index 0000000000000000000000000000000000000000..7ba549923db2428eb8cdf74b91b13f2653b9f034 GIT binary patch literal 2991 zcmeHJzi-n(6gF5YG@@dpz;ZPb0*Uw>=SLgMZW@|~Mk1j~Q#D8ob?j?u#dci#s<>gG zDpR)(AP@up021m}AqIX33Fv@W>A+SoBKAt~zCSr=v2_8@jSZLO5vqm>{wnA{1r2 zfr#39S$B}n+S^-1wRtRKKP@?;R|61LMF^ODHz+Er4CUGpjtblI#+j2l(avb?5a z26iH#S9cg9!aoVcUit-xv{41whV#Et{f%4nk96#6NWx%^Tsi4B*lo8?nVrr!DdRW8 zNs))VgCwC6ec6FreaRGp26BZ;^koNf^(9jX8pstY(U%>_)t5{m=wEV0dIKvm$=uW; zJU%e{i2L5(C;=t`qQcg9xp7ciO!b~am^5)X!Z#t|bA^-pY literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-selector_add-m2m_vertical-hover.png b/assets/img/icons/icon-selector_add-m2m_vertical-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..6be1d75013d7002ca1822e02ec4eeae767adfdb2 GIT binary patch literal 3023 zcmeHJKTH!*7(Y`qrBbK^0~+yhP9*f+_1Yr6^k^srX<`W}H8chju6K`e>GfLf9_hhE zm}-oX#ZBX%!NI{nNgNzh7L?J%g+WT*@JkEQ)!QMxwmD z_yI*J%CnSfkDrh4yYxUqeN4-C0A22IiP>Z zVY5ALaCl)aryjAYE6+`-{t%*F5R@6UEUc~$z-TV=L3S1-DEefhZ@ zIM)&P4!rd#)W-{}efp_~@khK1bW<<-E>(Ywp5E*K+?782ao63w^{hP^a1U{7bmvW9 z_2=Vnad~n5WsexR^Yp9hMjO9*@Vs{)3QlzT#`ibcK5g`FdlOy4D&?YPW+T61 STkn>w5j#0HnRp(bTl)<>dNWD@ literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-selector_add-m2m_vertical.png b/assets/img/icons/icon-selector_add-m2m_vertical.png new file mode 100644 index 0000000000000000000000000000000000000000..0f53ca3b1eda583443b27b1c9b0afa7e4b34b88a GIT binary patch literal 3023 zcmeHJF-#Lt7(P=prBbLS3~1EHIg!wN*K3RPatEOlq=_Y@)XBp~_MRgDM}2qW#Pr~?ES@gS;fiD+YD6jJ5J(oKJW3-; zSz3691d8(Qs+la#rmpdFsmMq+hOvre5=~LUuvM1i0>U7N@~SS*Aq^Y|E{L>yscdQr zjFt=pA`HiHL75#0gJ_ruN4Wtm(hoS69fa%^7-oZ^L7t8Bkr1eT^pFn-hBC*e6XUgX z#1rXxjLSTPl}d%Fgqf0&hoM+323ZbrT#z7w=8}#jE2x{7Z3>qoflS#@%UCVxz~+>4 zr9~{#G&u(~az$=%mlqAqVOC^_G*m=7HerYf!J~MhL|VCe*-q4cDB!q>A zgK;ApA$&?Q3W%sZE@>umSP#!;P;MGa*hx#SXx9J)Mdn>5$90Pu(Xi{euBO_R@S3FO zMcN7~Xii$xFb!)F(5|~4BEUZhg~RmMP0~ggWE9Q+mFjQYf^(%KPeT&Ad*sPUx4}lc z)yk}O#&H>^8IFs*&f7{-SE4D~lB+41>Y$cfbtRgzExDSKsSaw%Rac@Z+mfp(nd+c_ z$>lp7SdmWVrV1HHxA*UBWR$&~OpIi#-Q51c!LWyCA8h2s>d?JUXRFNC=E?={ULZf4 z17|wo{{A-smD)MK(rcV}9Dl-lKsWWW_fqx8=*e$=AG*?~clNy9ThH5*A@3l!N_XB2 zRDV7F5?2=1UiCZ*LF%K726pmYPFkszByyi=-i&7)+?OB8KUzT*5gltIHRj zVG)4Px|T1HLS{x#YE@QtFsxmz(`W$1al0-n6-;0emo!6SzC3!&KuwjH`FMuQ)F*LS zORboAZe=#FtW=bQ%8ZYNL|dQ)RZL`PS9QY@Y>9Ds1^VwSBL=zl|YuO;O9X6~%hr;7XVoNc#I?-wdbU5W=ZHY(> zL-%2mTvb}!^(9kxnN88`*N5hH%JqF-OF}F3u5|xM}GTof@F1DuT!4x?WKeI`KTu)itLQL6?n^#MogK zFUm_gVNf#yId%IXBKnh1+)jVqqHUDNX4U#%ss6?-x<}e^H8i2OMz5T98)~&%v&?2^ z?3QtxVYkSA-cAxW* zH;_nC^p=`0;6ip%kgF9|axko2F-SB;iNm%b$z_B=5tURu$^3e=#sF1GGPCh4mo-Mw zf;zEmqM7BXyu4hN6ACjtM2ogS2r39mz^-VzCD=*E4=wP z7BDsh2y3+(TZ^()vjiiFL;`X=MJH#p)tX zG7Q-VKDi>-xs63rbD0$xA`MlLjx88rBXBRCD3Mc33)rfM>6WiD(Hq*5K|(lax)?9A z9wKBVvy6z^el!iUeb2ZheM9?I?lw|C% zg65?~4KvV>fKJ^(hzS2A6nE2Kv`8D}ky)|+SE|2pi|Tn$O+t&uAy-3IIJ=9lSr z#(o*M8TN}j;B6)elxWB{8 zJ6?8XZ}ok6*k#A>J!yHiVSm-{$JS$C+CS1G+ti)T8wV%573wJHy)B%lR=QTrlb2dj u*Y18_x%@bEp|$nt`$L;O>*&bH^%m;f+jN)wqwvX@q%&hv>E~zWZvF=U3MV80 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-selector_remove-m2m_vertical-hover.png b/assets/img/icons/icon-selector_remove-m2m_vertical-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..943945ce28f2798cccf3e76304a66f26e80dab21 GIT binary patch literal 3009 zcmeHJL1@!Z7>*W)76;0_IE2MaM8W2zX*;)=tZUcJ71tqM$0`hLn!I(fX&RF^n+=2^ zicU5J(M<%wdDDXz4}uE1qh1A(>B*}M6?T&0d`X&a9+V#3tvTd>|9jv6{qO(YfB0w5 z4xMiHxB3Z!Xig3!(%9~`*SnkW|H1KFacmBvzAPFpkE4ocKq4lW^N>uI!~#r1QJ%W^ z7V-q)Ur{nyluZqCQn^HnHiouJI*uj?K5FTrRD_7k!-Ap-)VG(fDN>OIYBZ8!QhG0( zPzI(AI6OU+k*14MmrO;w{k+9tf)Yd`X_ZvX_fpx^S+cim zKr&3TG#ikZju06M(V+<2!G=$eEW>mH<|GI)fnX=cM7VH}tbSCtpX3dBoJ%MAtLd;O zP!kC08~~L{g|39?vQYrRuC6Y?uz+O)7!fe1G$dL9&1|?32Mj$K{^Pw;;|BGr7(faT9{^5RmOS)OVn`)0}Kb_ zM%F^OlxP$oR=ZzRP3W+0o{hr%FcOiI7GKe>f#hY0bD131Eh?rW*K=J}u`A(JQ7Z_P z6_DY$IH@8ER3m_0w->^LKMDEG^dly2qYN}k=Ko6dH*Vg!(w3*e3Ee&XD2quD)+`LX*w ztw+D4=lb3!`qy&Tek#$-Qu~WTExy^@z6-hK!@qVcHq8(|V)^c*mJO77aR`gq5S2AAP1m``WZk-MuCR{Lb*#b;O_R4SHceylX0w4X zM46KfLDZ=rs7GP`0aF+QLGXs-`8;Qyo3w_?~FLjxH!R+>U((SSssT*^T*Q55qq1x0!G z(i_MVgnv^>XHX_N%t@spE!r5`D(X0zAo!@Ii&6n1G6(aDCQx5rtW%^S3)Dn7$t3lD zIIRrL8E|ZFBrVMqq=-yKd;Gk`VS*w=B54&>&EzbBa(FqswzmOAIuKM4DECsCWvQ*{PXAIS0mL&jHScDofL68oD-FU1-O36q$H%YO-~?YLdwV)#dV(sL9sls!1jfRF}(Bq9$9Ht0tK|(7)vJ z?+mO^!*f#^kE3t5?y7i{y^@IcrLE1}*7kPP$1)GrUlT*C3x@Aq``Tphy?p!wG5)gk z#(~GN*7=V|E;LX2Zs+dD8rqljh*ura&y8n(tlC3$Vqhfx IJeIxs8<>zT!vFvP literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-th-ascending.png b/assets/img/icons/icon-th-ascending.png new file mode 100644 index 0000000000000000000000000000000000000000..32fb3fb82ec63098b2bb541ba387705ed1034a69 GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CG!3HG1zpHNqQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiY9rwIEGZ*ikYyHx4}Swd9r*vYr;ehsh|tSBC^&?7A{%D zl*MJXz<$%Fe$kS6}&kI|DPre^(p(#pZLwfv#ilboFyt=akR{0J9-k<^TWy literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-th-descending.png b/assets/img/icons/icon-th-descending.png new file mode 100644 index 0000000000000000000000000000000000000000..24dda0afaa01512fb8678af2fca0346ce5b87129 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CG!3HG1zpHNqQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>Jil%zHIEGZ*is|3T+iW1>lG{Cv*M@Q7K~Ys+U$KId0bfJ{ z483M8Ic-sPPg5b$&+6`X`}zC#pS7GVZ0NRlbFts8rBm)*Y5bME_HXqwCexILhIL#` zQ|m1LDi!Q`q-nmzRepo&j)ie`f()i-S#uNk_p?;rIKX=C`vD&J9?n|X;HAQQ1M5on qo}I+}xcu+$ZL_~s2JzW5vN2qU_l!NfB)k&nKn71&KbLh*2~7Z(L0s$r literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-timepicker-hover.png b/assets/img/icons/icon-timepicker-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..a0610633dfad3c75f12da8890fca6035fccd306e GIT binary patch literal 3214 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn1|+R>-G2co$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@T(>eqB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN*i1Q(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!8hNY6+&*}%+L!PHpK z*wo0($V5lM$iTot-@sho*g)6N!pgwZ%EV9s3Y6@)6l{u8(yW49+@RJ0dA3R!B_#z` z`ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ6}oxF${-^kX1JslCl_TFlw{`T zDS*sOOv*1Uu~kw6$}2z(Pf3QGT~Jz-12#D&SwA%=H8(Y{q*&ij&rly(JuoDKGSf3k zis9PwilLzl3~&94!~&oe1N|bf8i-D~7AxPxqU=;)XuBom6sLksMaYGxCIy!ymVm7V zIuYat1)G#)D~L&8F2qxgIVBJtgqxEI@`+VWVqUtfQiX0xYFc7xPKlB}REIvu-!LsU z`ltrlAgm891}3AB)S}#CYFUNLY#XqXkfH`?Aw&!q<-pXY4^M7TZ$eWBttfC}pq1e; zb4M+Kg#=ObXmAk~OfW^G!37HmqUh1!A}W|*ibjJA77|3!qrpW~Fu@ez3ob51gEch| z*lsEZHb+nWnVQ4E!06@a;uunKt0&kxuh~H$cKw<@%r z?Ag37JGq)g-+|kP!TNz*$B#P~?;E{4|LoOY<_IS32kipY>_!Wi_BHA!_#f(JiCCI& zGT8N7*u?uQzw7>Y*ZI0EqivprSB&9;{P0fc56449BF#1~`g6%=^Q4cHwr`trsPSBm zlIO9Clio|`Xz#wyD&+L^N9m4;uZCf#k{75fUw*lFic+!-pFnEd-lr~)1VuM3T+gU< zGJ8!v-v$Xy&yIN_o+p3Y4p{ca^TfZmomZw7znyEPxkbKCKxqDBrm}q-SwpwjJj_+N zctQWae~-G2co$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@T(>eqB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN*i1Q(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!8hNY6+&*}%+L!PHpK z*wo0($V5lM$iTot-@sho*g)6N!pgwZ%EV9s3Y6@)6l{u8(yW49+@RJ0dA3R!B_#z` z`ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ6}oxF${-^kX1JslCl_TFlw{`T zDS*sOOv*1Uu~kw6$}2z(Pf3QGT~Jz-12#D&SwA%=H8(Y{q*&ij&rly(JuoDKGSf3k zis9PwilLzl3~&94!~&oe1N|bf8i-D~7AxPxqU=;)XuBom6sLksMaYGxCIy!ymVm7V zIuYat1)G#)D~L&8F2qxgIVBJtgqxEI@`+VWVqUtfQiX0xYFc7xPKlB}REIvu-!LsU z`ltrlAgm891}3AB)S}#CYFUNLY#XqXkfH`?Aw&!q<-pXY4^M7TZ$eWBttfC}pq1e; zb4M+Kg#=ObXmAk~OfW^G!37HmqUh1!A}W|*ibjJA77|3!qrpW~Fu@ez3ob51gEch| z*lsEZHb+nWnVQ4E!074e;uunKYfi9r-XRBp*f5Q+&)9yjbRJ=q(cJrxEnugQhGy)- zl4T{6&vP1>y4Ey!aH<#NHRLnoui2iFbaUF&iSrCL8|UAzDKn|HozZ5Q!06(z;t%Tv z_Ir(|toKjrKW4@;uTf|R^R@%J0w2n~>rd`j-Fx-Bv;p(81Nw^Jn2tE`{b7(l(AVP4 zxxwpT&-Si2Tb1?)-p`)LuCq1F#K~Vq^_=8|Et`*Q{o$;|r89d*a9vtkRoRMPf5ah$CmjJr`EpeWCqy-(r>J%Y(m8QA+-kquBNLQl$P$_tu;jtD0Bj zwSGOzsAj9md9hjPq(nS_>WO(JH|N_<+$FSbZ?Jjk+jjYuBkC0mQ}c7YL{;-|Y*CT= z_4Lo|kC~qtPl@zRnXx&XRakbi^1h8ngkK0sFV#@EDO|8_3F;tty85}Sb4q9e0LY${{Qv*} literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-add-handler-hover.png b/assets/img/icons/icon-tools-add-handler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..48a23a18afbe9cbffe751626e398fef63f317be1 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GW}YsNAr-fhe*FJ$&unEjWAA@^0sRAN$B#HDNwi2wILAg2=|7QhK31@3Y;+vtJ&P# z+%B0sU{=XaC@Cq4VJKocb2s4m5$2D+3U-ZZ=MFHX9BF3RxFcG&E0DQa>tL6DM&U8$ lbqiE2}1{rUgjo>{X&Ft+*O9A+kmEc+?1E9{OwWcK6r z=;B@AB!0p4py>ilzm`+y-LJD;Ygi|tv6CUogK3wV*b2|T0Y`-!DwqQvR?d)bh>-8# zUXUe}DCMBm=#%U6`EcC|HO3XQTyFhtyhfZ@zKE mz=LlI+mSRC(@X{y35LJ&mF40hK4L)UF?hQAxvX}1{rUgjo>{YjHTJ;OtDy`YZ`+Gx%irJo%NRM2 zvptDf;~u~0;VTWxECjm@O$-x*c}k8k2^?F-`K-Ne#Ss>Tdkj--_&+lXyk;(B4DnU+ zab^-|_Q`SC)X8{?EmNprm1jx|tG1YZ!+{!weGM{ED!&^!@A3zH=O#aoXzl? sam4}wTcw3b+zYZKBs_hk7#P_YSX{mACrtVF9_UI2Pgg&ebxsLQ0H-ojs{jB1 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-delete-handler-hover.png b/assets/img/icons/icon-tools-delete-handler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..90ce640805367321e8fdd287be6cdba678aa952c GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GnVv3=Ar-fh{`~)M&+N&tByoS^!Fq*x{7K1&6)Y!63C!kP zmCq=kE@NOar$0|2M2B%z8{=V-l-V0P4V8W~9yZaq{qWCEml;xSCH~5pNe4#?NMf$^!_H$QU*^~KbLh*2~7Ysu|f9$ literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-delete-handler.png b/assets/img/icons/icon-tools-delete-handler.png new file mode 100644 index 0000000000000000000000000000000000000000..7708b402daa532feaf95e0b20107b75be944bc8e GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GS)MMAAr-f#Ot{E-z<`5QxV*T(WK$V``)04D9bW^LX7oRq zdt~-1tFo>?329sH0#Dqx`OFkH{p+g*JEA96G6-5)X|yXFr`=oVxB4M}z=FWTmF>3P v54_iMIB_cpw&W;Ox8#%rWWQXW$H>Nz?d20&>$vOz&{hUdS3j3^P6MFLJN!L_;Ipc1F^6Kw)@|-*idM1jTbYYm`5!NK>(6#m2mD4jlHoSVM(wBA2 zanbdA48NDy*7Tk8W;coa^>4b$@sq-jmL2~SzR#a+Bl8er* literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-open-handler-hover.png b/assets/img/icons/icon-tools-open-handler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..655d944c16d303984beb208b5c07db92113b1e4e GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GD?D8sLn>}1{rUgjp4pRO$-#tg|NcAJ$R9b@=2)a)s$eD@ za-T`T&tOjR0{OcRDzYVF)e6fQ8}tm#u&o4q^(i#8T*1I3=?kgA7OKt z!*SJEe$|bSHC>0M~7NTJMjlYGR4 zKM4$_?_C#owq5zk9JGQX;WM+3VH=x?FVBmvjadpT3`{%>2e%YV{$8xZ3v@Gsr>mdK II;Vst06|M#0{{R3 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-open-handler.png b/assets/img/icons/icon-tools-open-handler.png new file mode 100644 index 0000000000000000000000000000000000000000..241699257e0cbffe03f38de728f25d9b3a470804 GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1Gi#%N%Ln>}1{rUgjo>{Yj(`Co5UH{l0{oEna_{1UWfmA~R zqkuXC>+g*kY@MnOR}YwqFnwfI&|}c@a0uc_5_fp&kR>6JSjXVS#jx_PLk`1{&H&rb z3%g{?-{1Soc$D9PD`l&4$ibSFqY9QY~2pwoG%|~SSR7kJWGwOW$<+Mb6Mw<&;$TP CJ6ur! literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-remove-handler-hover.png b/assets/img/icons/icon-tools-remove-handler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..c10c90b67d387db217e56b9fed38e2b645b50470 GIT binary patch literal 135 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1Gnw~C>Ar-fh{`~)M&#c+d+2~@xVY)%az$C_D5}QJwx-0Wz e51z0F24;pyrW|G&&gQN_O$?r{elF{r5}E)8!6f$p literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-remove-handler.png b/assets/img/icons/icon-tools-remove-handler.png new file mode 100644 index 0000000000000000000000000000000000000000..eefa1459f8ef1a9e24dd38c98b7f0faba252c0a1 GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GR-P`7Ar-fh{`~)M&#c+d+2~@xVY

(o#1eB_*YyQtlYr wMTG_(zH1CAN0hZ4rn#^ulqwrWFf#ElY^V@>5ZZm<63`R|Pgg&ebxsLQ04BICc>n+a literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-trash-handler-hover.png b/assets/img/icons/icon-tools-trash-handler-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..4eeec6f848196a5601fce12b9ea4a5c7b4a001b3 GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$3?vg*uel1OBuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%i3a$DxSsFn*`J!a(!k*Enl%TFj21{q{r~^JqU+{bpaS-i zAirQB7YG=nyqVpALJpoTjv*DdQhK|&7!){|=U)EzfAZ%*l@f(F4s+Ku9uZiT&|NVx z^CCabLD7~K-?wIW@iv-nJ*K_p`rN1bwKWS)Eft-+pAl#lgQu&X%Q~loCIF5G BO}795 literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-trash-handler.png b/assets/img/icons/icon-tools-trash-handler.png new file mode 100644 index 0000000000000000000000000000000000000000..7d4a6f78743b13b2aa526ba0a4acb8b4d4da2820 GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$3?vg*uel1OBuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%i3a$DxGr3{aL=ASO-)TO-pp=5AqP(v$B>F!DZSlX38_ZV zd61vup=jHR?_0CGco&*(ZPQ+HeeP5J+8jnUh6{I@mgc_K2>_bK;OXk;vd$@?2>|D8g)qZi klR31Gbz~+nI5aRayvs7)+~V?Y70@mQPgg&ebxsLQ0L&plLjV8( literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-tools-viewsite-link.png b/assets/img/icons/icon-tools-viewsite-link.png new file mode 100644 index 0000000000000000000000000000000000000000..9f678a864160092a30ff7353210def576843f47a GIT binary patch literal 228 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1GZJsWUAr-fh{`~)M&#c+NI`i?HH+v-JKiXUU{n(}joj;p6 zCamr0>3Q)bZGw#OEKVi|F9r?HWsMb*yC%=v5W#)S!GO18al@?X53e$O<&H2s!M5O; z&V+`Ito`gxYRyi(QUV%&hhFkLS&*t?n#sT- Z!C)uqekMh%N(Ja522WQ%mvv4FO#o9DQ<4Ax literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-unknown.png b/assets/img/icons/icon-unknown.png new file mode 100644 index 0000000000000000000000000000000000000000..453bd9536ae2de583ad1df3e2c321c7c8377263b GIT binary patch literal 198 zcmeAS@N?(olHy`uVBq!ia0vp^96-#;!3HGxgLCzOlw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6Jlq6|+L$B>F!Nq_$Tw?DipboCSo35hhOjoi#EZx|mLC{&zh z5shFyqTuQjki&EJzyYSvghLGsULHAYYHT3^d`HR~f9MD-SDxLlh9PCYwhu#WqkxqB tQ7%V?fBdBee&z`bZUGh#m>C$^7@Aas-}7J6e*v_U!PC{xWt~$(69As^JPrT= literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon-yes.png b/assets/img/icons/icon-yes.png new file mode 100644 index 0000000000000000000000000000000000000000..c077032229fe04069a664ebf4e861b622d13a3ca GIT binary patch literal 221 zcmeAS@N?(olHy`uVBq!ia0vp^96-#;!3HGxgLCzOlw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6JlqIypk$B>F!Nq_$Tw`Vqc@bYCQ!;*8xh7Z_&I@C02)EK8^)hv_$)kQ(L~#tsH8CQb_`!xR5H9saS;U}|7sX4rE{h0irQ R)f(s&22WQ%mvv4FO#mP5Mydb+ literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon_fieldset_collapse-closed.png b/assets/img/icons/icon_fieldset_collapse-closed.png new file mode 100644 index 0000000000000000000000000000000000000000..94b609a7ac7310df095e8aa7db0cad7816174f43 GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4NtU=qlmzFem6RtIr7}3CgxXrM;#6{ z@Hcn-Kcc~=ePpQwi-AZ|a8Iz}uB4P!ofrE=L`7LIhp&%gUD?vk#=T9UQIl;ZPw*KI zlWmM1*OM=Q`1LhA;6vk8L&nat4tF|Erx+Rf4NtU=qlmzFem6RtIr7}3C*h@1p?I1(n8e#bz)#crBvq8_{`^jfI1e`!4^IoMkkcHh34?|pCHH}CLP zrzS5a;%DO&MI{R3`4X|my!U7a`3`(qn;_;49Z>!}Bt`x8EvZ*tYhhbdZBGD8j47rvh*AWI)R8tL+{`u-P4OB&>XEH^$XpNvb zb$rQ2(@T?Od8saE6?$keF1S1)&=Hn^t80eCyCUuL^5oxJhBWXYxGvJcp(@2GFk;#W z^fDa7C1tiR4Kisao#Fbp-V1gU-E-W)GL_$Q&TpZ=;t+Ng|d-T7as{>Cl%M>=pdBw?^duAFomY_?liX4n~r zW&CD1Eb@rAog`ACCEJ#(C7B{nTdqinmTX(DmSl=RZMh;PTC#1qT9PRO{Y$R+{=kY1 zGB-8IIQo8fO(UZ$D&%uzce}c~w>K2qTt5CdD+pa1pNrsH?8}Yer}vmm``bjvd7Yi4bO$q$^5fRH*fz24ecgF literal 0 HcmV?d00001 diff --git a/assets/img/icons/icon_inline-item-tools_closehandler.png b/assets/img/icons/icon_inline-item-tools_closehandler.png new file mode 100644 index 0000000000000000000000000000000000000000..c3183bf3d584466122020142ebea46d58dc99c6a GIT binary patch literal 3046 zcmeAS@N?(olHy`uVBq!ia0vp^{2JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;lwIWM;uunKE9uYw|Mtu~8(62iR8;JcpOD4=XxCKj@O4L*wF%BX z>(Hy_kYy!M&zcmcaE?)`KqgjJSgg0oAxlgkpEb!}A&&ouapR-53R7m$9gHhm9cqL+ zq8ql=vR}$|sNqoIoAUiYdNHHGeTGLd3g4Kt_Hiv?UifHw!;TD#-;ygn@_R6N{8v7C y{s@yA8y5rjtoi9eml(ddS%u~-J8_JM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)C80k)DxmvVobgf~m2d zv8j=nk%^9ik%57QzJa;Ev4O6kg_VJ+m5HGO6e!toDcBUHq*(>IxIwK0@@$ndN=gc> z^!3Zj%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUl|e>8%y3C9PA<)LWmeJ%7Lj(AD-Nx-h`$MT2bJ{Kr6#x z=8jqd3kjm=(cmH~m|%)Vg9{cCMA4(cMN}}s6paQKEF_4cM}v!~V1g;a7hGJ325V{_ zu-#M+Y>uA#Gc^a;lwITL;uunKE9uYw|Mtu~8(3!w%gNbIp3pW`JAB#U8$LWD3~pX? zd?%iLQFo7Ri5*j+&V~H?2}c}Xi7{-H2)M&L{j6|91apVFvuT5gk>k;?4LkVP&u{Gd zx?o!l(<46xJ+?;%3VrOis^%p$F!CBO23>Cap)K&4sgN(=ap9hYy>HSLzA-&2Q&`9R zs8{8uWXEf4NtU=qlmzFem6RtIr7}3CcRWA*f4NtU=qlmzFem6RtIr7}3C?8EwmHRg&6Mb1c@pV6CH;dY6LS)?jKTp1)ufEY Ua&H;_0gYzxboFyt=akR{0QjCe0ssI2 literal 0 HcmV?d00001 diff --git a/assets/img/icons/ui-datepicker-prev-hover.png b/assets/img/icons/ui-datepicker-prev-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..8ca2c4026c901b0757e3844279ab6d9945822e35 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4NtU=qlmzFem6RtIr7}3CY8yhAtwiWZ8VGrVT z*u$W9j3cPm`{GZLc9%6=g_=%*9sYtG38l(r4!f?ZRI;s4N@A8#IKc4eR!-!L)#nO< P#xi)i`njxgN@xNAC4n~j literal 0 HcmV?d00001 diff --git a/assets/img/icons/ui-datepicker-prev.png b/assets/img/icons/ui-datepicker-prev.png new file mode 100644 index 0000000000000000000000000000000000000000..adbc08acf466bb6e0015d41280bdeb3df6220b27 GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4NtU=qlmzFem6RtIr7}3CFVdQ&MBb@0GRSXNdN!< literal 0 HcmV?d00001 diff --git a/assets/img/input-throbber.gif b/assets/img/input-throbber.gif new file mode 100644 index 0000000000000000000000000000000000000000..19c2e0a36f3fba9415f38253f03fddb914ff3b97 GIT binary patch literal 1737 zcmaLXX;2eq7{Kv0&>Vn}$SzURh5#0jGqQAZhb##j2pT|Fst8EHAjSxl;?Zkb-(|O# zE!$3y>DXHBZHrW-n%0X;0R;g?L_ri(6ct4jQBZ4ZYriplKECtJJHMI#%wtX_lq#DL z5<=q;^!V{(`R1D58+U#>dGU?fQ~A|xD|WZPd$^~%=gNg!cX#((nZLa$?dRr<9Y>e$ zY|X1~qYs^Fym*87{_v)z-jVT%(R-7}E{}ZOG4Rsf6R+2tIy!js^ziLvRmbpe4{bX> z@JHX(R}Xf5($aV3&b=?&`!!qZ%NkBsb`OI3(+vZ|g?l=bTj~y;zqY;WlJUDkabMLA z-@Si#^1(+(&Teiye{b^P7st;3es*Z`;iHF-9<>bK?7TWU@!(umk+HFf2mK>=KR()5H*meS|N83RkC*K2+;Fh#&AM*; zZ|%9ejjKt>=E|ytwo9<+b}ye%E=y={oLkb)@{%w5NASyRBaJb=|&m zSJ5wPD!K=)+nWvFG-U5={jj-rQN>YgOYM7&J;^^dmhS6(`|z31ThBrNP2gisYa+SO zh^HmSM$6r%{rw*Jr@yhpZY#Afm#tq}S}3zQY#W@#w&l?)iwcUNzzKJO$KP9#Pkwk3 z5#oLD76hm=nwA95iDGE}v$Mma0j5^a9-hxV9}xo-aver-xHF^-2E(60Zl1oIAYHr; zxO<7JP(wU;W;$F2X%Yd~8>v#@dcgDXtAZ0WfX@|I>5V2J5Y7x>G!cFTC7LA*k;qYj zlCSM6^A8N=&5e^rY6Y8u(sr@~+lUWy>t}E|QwcXc6>8jGTjy#xV5=O3zu5g@kW)#|(! zC|Ss_CJl8^ym)~>6T>kb0IJxyWPw^8lb9>%r0|f8$jktX(MGbQD%nvX{1{>?DTp&| zD&V_MfdUWTmE4?24g(o^DO?}#>0S;et;|_bn2sRE1*^RHRM2v(mMM%%lYo3-0SgIN zXM;#zy~|SM0I^AO7a1J|q;aT=enD*RD9g1QU6`7J0}5(rwXU5qzYu_v3WXewK``22 z3^OL+8bi!kh7d?f?#pKUnz`FBm9G4$Eabd9JUGcIA#@4Z zKB-!Y42e}T1I1AJ+c*Y`7>}+Dm=SqN|HqT{QodV2Z zdY3gk7!bM2Aoiu{I2Dtt3X%iG7_^3l6FGt)QioziSGURtuV-dXE1vT#%%95mUt-u+ zY?p?J;u%N~vBoZrOY)8NqfJ^5KLd(#Jf0W&Q-o5hVJtFV12E)ESjfKA3G_VB5|!7V+ChQ;Pb@d6!XiXC%s?cr%(n#a*Ldh@M3QSJF?EoCMg~q{27L^Z5NFQ= zI>8RMc!3CzCX|Kryuy9EYKR;jK*}5EhXOgFs7aW&9AIcCo9%E?ie5Uz$7*KWBSQK`MI42_clZgefnnHvIP!*lj$ z@z<<+xP#) zF$y(-AOyxx7)ro-CXGK@BST8D3hAkCA*_s{$VAxn*H literal 0 HcmV?d00001 diff --git a/assets/tinymce/.svn/all-wcprops b/assets/tinymce/.svn/all-wcprops new file mode 100644 index 0000000..3838e68 --- /dev/null +++ b/assets/tinymce/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce +END +changelog.txt +K 25 +svn:wc:ra_dav:version-url +V 62 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/changelog.txt +END diff --git a/assets/tinymce/.svn/entries b/assets/tinymce/.svn/entries new file mode 100644 index 0000000..bf65ec6 --- /dev/null +++ b/assets/tinymce/.svn/entries @@ -0,0 +1,68 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce +http://django-grappelli.googlecode.com/svn + + + +2010-05-28T12:30:12.584501Z +1047 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +jscripts +dir + +changelog.txt +file + + + + +2010-06-04T12:51:48.008532Z +b82f6e4eb456076023fbb9392ba399ff +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +95750 + +examples +dir + diff --git a/assets/tinymce/.svn/text-base/changelog.txt.svn-base b/assets/tinymce/.svn/text-base/changelog.txt.svn-base new file mode 100644 index 0000000..017d4cc --- /dev/null +++ b/assets/tinymce/.svn/text-base/changelog.txt.svn-base @@ -0,0 +1,993 @@ +Version 3.3 (2010-03-10) + Fixed bug where backspace on a table on IE would produce an empty tbody and some JS exceptions. + Fixed bug where some redundant children wasn't removed properly when applying inline styles to them. + Fixed bug where Chrome would produce incorect dialog sizes if the inlinepopups plugin wasn't used. + Fixed bug where spans with different classes would get merged if they where siblings to each other. + Fixed bug where IE 8 would crash if you used the spellchecker. + Fixed bug where Input Method for non western languages didn't work correctly. + Fixed bug where the UI would render incorrectly in FF 3.6 on Mac due to a bug n their rendering engine. + Fixed bug where WebKit wouldn't scroll down correctly if Shift+Enter was used. Patch contributed by Thomas Andersen. +Version 3.3rc1 (2010-02-23) + Fixed bug with new legacyoutput plugin not working correctly on it's own. + Fixed bug some performance issues with removing text formats. + Fixed bug where TinyMCE specific attributes wasn't removed properly by remove format. + Fixed bug where it wasn't possible to align images within inline elements. + Fixed bug where Ctrl+Delete/Backspace would produce an invalid argument exception on IE. + Fixed bug where the search/replace logic could produce an infinite loop on IE for reverse searches. + Fixed bug where cloning formats in cells didn't work properly on IE. + Fixed bug where IE6 would produce a horizontal scroll bar. + Fixed so remove jQuery method removes the TinyMCE instance as well as the specified textarea. + Fixed so selected rows and cells gets updated using the row/cell properties dialogs. +Version 3.3b2 (2010-02-04) + Fixed bug where sometimes img elements would be removed by split method in DOMUtils. + Fixed bug where merging of span elements could occur on bookmark nodes. + Fixed bug where classes wasn't properly removed when removeformat was used on IE 6. + Fixed bug where multiple calls to an tinyMCE.init with mode set to exact could produce the same unique ID. + Fixed bug with the IE selection implementation when it was feeded an document range. + Fixed bug where block elements formatting wasn't properly removed by removeformat on all browsers. + Fixed bug where selection location was lost if you performed a manual cleanup. + Fixed bug where removeformat wouldn't remove span elements within styled block elements. + Fixed bug where an error would be thrown if you clicked on the separator lines in menus. + Fixed bug with the jQuery plugin adding always adding a querystring value to other resources. + Fixed bug where IE would produce an error message if you had an empty editor instance. + Fixed bug where Shift+Enter didn't produce br elements on WebKit browsers. + Fixed bug where a temporary marker element wasn't removed by the paste plugin. + Fixed bug where inserting a table would produce two undo levels instead of one. +Version 3.3b1 (2010-01-25) + Added new text formatting engine. Fixes a lot of browser quirks and adds new possibilities. + Added new advlist plugin that enables you to set the formats of list elements. + Added new paste plugin logic that enables you to retain style information from Office. + Added new autosave plugin logic that automatically saves contents in local storage. + Added new valid_styles option. Adds the possibility to restrict styles and their order. + Added new theme_advanced_runtime_fontsize option to display the runtime font size in font size select box. + Added new jquery plugin version that handles the gzip compressor amongst other things. Contributed by Speednet. + Added new $ function to tinymce namespace and editor instances for the jQuery build. + Added the possibility to get editors by index as well as name in the tinyMCE.editors collection. + Fixed so the contents inside the editor renders in standards mode by default. + Fixed bug where it wasn't possible to move the caret on short documents running in standards mode on IE. + Fixed bug where the decode method of the DOMUtils class could end up in an endless loop. + Fixed bug where it was possible to bypass the paste cleanup on non IE browsers if you clicked while pasting. + Fixed bug where some attributes wasn't serialized correctly on IE if wildcard attribute patters where used. + Fixed bug where entity decoding was performed on strings that didn't have any valid entities in them. + Fixed bugs with the insertNode method of the IE DOMRange implementation. Patch contributed by Scott McNaught. + Rewrote the getBookmark/moveToBookmark selection logic to boost performance on larger documents. + Rewrote the table plugin to include new cell selection logic and fixed various bugs and issues. + Merged the tinyMCE, tinymce and tinymce.EditorManager into the same instance makes more sense. + Removed browser setting since the browser support for TinyMCE is not far better than it was when that setting was introduced. + Changed the mce_ attribute prefix to the more standard _mce_ prefix. This is similar to browser vendors prefixes. + Optimized performance with named entities on Gecko. Regexp replace was executing very slowly probably due to a Gecko bug. + Optimized performance of the IE specific selection/range implementation. + Removed the safari plugin since we now replaced all text formatting logic to custom code. +Version 3.2.7 (2009-09-22) + Fixed bug where uppercase paragraphs could still produce an invalid DOM tree on IE. + Fixed bug where split command didn't work on WebKit since the node serializer needs a real document to work with. + Fixed bug where it was impossible in Gecko to place the caret before a table if it was the first one. + Fixed bug where linking to urls like ../../ would produce an extra traling slash ../..//. + Fixed bug where the template cdate functionality was using an old 2.x API call. Patch contributed by vectorjohn. + Fixed bug where urls to the same site but different protocol would be converted when relative_urls where set to false. Patch contributed by Ted Rust. + Fixed bug where the paste plugin would remove mceItem prefixed classes. + Fixed bug where the paste plugin would sometimes add items in a reverse order on WebKit. + Fixed bug where the paste buttons would present an error message on Gecko even if you changed user.js. Patch contributed by Todd (teeaykay). + Fixed bug where Opera would crash if you had tables incorrectly placed inside paragraphs. + Fixed bug where styles elements wasn't properly processed if you had bad input HTML. + Fixed bug where style attributes wasn't properly forced into a specific format. + Fixed bug and issues with boolean attributes like checked, nowrap etc. + Fixed bug where input elements could override attributes on form elements. + Fixed bug where script or style elements could get modified by the DOMUtils processHTML method. + Fixed bug where the selected attribute could get lost when force root blocks logic got executed on IE. Patch contributed by Attila Mezei-Horvati. + Fixed bug where getAttribs method didn't handle boolean attributes correctly on IE. + Fixed so the paste from word dialog is presented if you paste content on an IE with to restrictive security settings. + Fixed so the paste_strip_class_attributes option is set to none by default in the paste plugin. + Removed default border=0 on tables for the default value of valid_elements. +Version 3.2.6 (2009-08-19) + Added new wordcount plugin, this will display the number of typed words as you write. Contributed by Andrew Ozz. + Added new getNext and getPrev methods to DOM utils. These will return the first matching sibling. + Fixed bug where it was impossible to place the caret after a table on Gecko. It will now add a paragraph after tables. + Fixed bug where inline dialogs would fail if used in a window opened using a showModalDialog. Patch contributed by Derek Britt. + Fixed bug where IE could sometimes render a unknown runtime error on invalid input HTML. + Fixed bug where some incorrectly placed tables wouldn't be moved outside the paragraphs on IE. + Fixed bug where uppercase script/style element wouldn't be handled correctly and converted to valid lowercase. + Fixed bug where some WebKit versions on Mac OS X would produce issues with hidden select fields. + Fixed bug where the media plugin would fail on WebKit since the node wasn't properly imported to the right document. + Fixed bug where absolute URLs for the TinyMCE script using a base href element would cause loading problems in IE 6/7. + Fixed bug where pasting using the paste plugin wasn't possible on IE with to restrictive security settings. + Fixed bug where pasting of whitespace was impossible using the new custom paste method. + Fixed bug where pasting on some WebKit browsers would not work if you pasted specific contents due to a WebKit bug. + Fixed bug where doctypes with multiple lines would not be parsed correctly by the fullpage plugin. Patch contributed by Colin. + Fixed bug where the autoresize plugin would break the fullscreen functionality. + Fixed bug where tables would be chopped up running on IE using invalid contents and pasting paragraphs into a cell. + Fixed bug where the each method of jQuery build didn't iterate styleSheets. We now use the TinyMCE API one instead. + Fixed bug where auto switching to paragraphs after headers some times failed in Gecko. + Fixed so all editor options gets passed to the Serializer class. Patch contributed by Jasper Mattsson. + Fixed so script/style blocks isn't wrapped in paragraphs as other inline elements. + Fixed so the XHR requests sends the X-Requested-With HTTP header. + Fixed so the data url scheme is handled in the tinymce.util.URI class. + Changed inline documentation to use moxiedoc style comments. + Removed the compat2x plugin people should have upgraded to the 3.x API by now. 3.0 was released more then a year ago. + Re-added Gecko specific message for users who doesn't understand the security concept regarding paste. +Version 3.2.5 (2009-06-29) + Added new jQuery plugin for the jQuery specific package. This enables you to more easily load and use TinyMCE. + Added new autoresize plugin contributed by Peter Dekkers. This plugin will auto resize the editor to the size of the contents. + Fixed so all packages have the same directory structure. Previous releases had a different structure for the production package. + Fixed so the paste from word dialog forces the contents to be processed as word contents even if it's not. + Fixed so the jQuery build adapter build works. It's currently only excluding Sizzle. + Fixed so noscript element contents is retained during the editing process. + Fixed bug where the getBookmark method would need a "simple" string input when the documented way is a boolean. + Fixed bug where invalid contents could break the fix_table_elements logic. + Fixed bug where Sizzle specific attributes would be serialized if the valid_elements was set to *[*]. + Fixed bug where IE would produce an error if you specified a relative content_css and opened the paste dialog. + Fixed bug where pasting images on IE would produce broken images if they came from an external site. + Fixed bug where memory was leaked if you add/remove controls dynamically. Some event handlers wasn't removed properly. + Fixed bug where domain relaxing wasn't treated correctly if you added it after the TinyMCE script element. + Fixed bug where the activeEditor wasn't set to null if the last editor instance was removed. + Fixed bug where IE was leaking memory on the onbeforeunload event due to some recently introduced logic. Patch contributed by Options. + Fixed bug where inserting tables in Safari 4 didn't work due to a new WebKit bug where some element names are reserved. + Fixed bug where URLs having a :// value in the query string would make it absolute regardless of URL settings. + Fixed the WebKit specific bug where DOM Ranges would fail if the node wasn't attached to something in a different way. + Removed the auto_resize option and the resizeToContent method from the tinymce.Editor class. Use the new autoresize plugin instead. +Version 3.2.4.1 (2009-05-25) + Fixed bug where Gecko browsers would produce an extra space after for example strong when loaded from sub domains. + Fixed bug where script elements would be removed if they where placed inside a paragraph element. + Fixed bug where IE 8 would produce 1 item remaining when loading CSS files dynamically with an empty cache. + Fixed bug where bound events would be removed from other editor instances if a specific one was removed. + Fixed various bugs and issues with script and style elements inside the editor. + Fixed so all script contents gets wrapped in CDATA sections so that they can be parsed using a XML parser. + Fixed so it's impossible for elements marked as closed to have child nodes rendered in output. +Version 3.2.4 (2009-05-21) + Added new paste_remove_styles/paste_remove_styles_if_webkit option to paste plugin concept contributed by Hadrien Gardeur. + Added new functionality to paste plugin contributed by Scott Eade aka monkeybrain. + Added new paste_block_drop option to the paste plugin this is disabled by default and will block any drag/drop event. + Added new bind/unbind methods to DOMUtils these works like Event.add/Event.remove but is easier to access. + Added new paste_dialog_width/paste_dialog_height options to paste pluign. Enables you to change the dialog sizes. + Fixed bug on IE 8 where it would sometimes produce a "1 item remaining" status message that would never finish. + Fixed bug on Safari 4 beta that would produce DOM Range exceptions on the DOMUtils split method since the browser has a bug. + Fixed bug where the paste plugin could accidentally think that some word sentences was supposed to be list elements. + Fixed bug where paste plugin would produce one extra empty undo level on some browsers. + Fixed bug where spans wasn't produced correctly on new line when the keep_styles option was enabled. + Fixed bug where the caret would be placed at the beginning of contents in IE 8 if you selected colors from the color pickers. + Fixed so the Event class is a normal class instead of a static one. The tinymce.dom.Event is now a global instance of that class. + Fixed so internal events for instances gets removed when the DOMUtils instance is removed. + Fixed so preventDefault and stopPropagation methods can be used on the event object in all browsers. +Version 3.2.3.1 (2009-05-05) + Fixed bug where paragraphs containing form elements such as input or textarea would be removed. + Fixed bug where some IE versions would produce a wrapper function for events attributes. + Fixed bug where table cell contents could be removed if you pressed return/enter at the end of the cell contents. + Fixed bug where the paste plugin would remove a extra character if the selection range was collapsed. + Fixed bug where creating tables with % width wouldn't be handled correctly on WebKit browsers. +Version 3.2.3 (2009-04-23) + Added new paste plugin logic. This new version will autodetect Word contents and clean it up. + Added a optional root element argument to getPos so you can tell it where to stop the calculation. + Added new DOM ready logic to remove the usage of document.write. We now use basically the same method as jQuery. + Fixed bug where WebKit browsers would fail when selecting all contents in the area using Ctrl+A. + Fixed bug where IE would produce paragraphs with empty inline style elements. + Fixed bug where WebKit browsers would fail when inserting tables with a non pixel width. + Fixed bug where block elements could get a redundant br element at the end of the element. + Fixed bug where the tabfocus plugin only worked with a single editor instance on page. + Fixed bug where IE 8 was loosing caret position if the selection was collapsed and a menu was clicked. + Fixed bug with application/xhtml+xml mode where menus wasn't working properly. + Fixed bug where the onstop workaround fix for IE would produce errors in an ASP update panel. + Fixed bug where the submit function override could produce errors if executed in the wrong scope. + Fixed bug where the area element wasn't closed by a short ending. + Fixed various number issues in the style plugins properties dialog. Contributed by datpaulchen. + Fixed issues with size suffix values in the style plugin dialog. + Fixed issue where hasDuplicate variable would leak out to the global space due to a bug in the Sizzle engine. + Fixed issue where the paste event would fire a dialog warning on IE since we extracted the text contents. + Updated Sizzle engine to the latest version, this version fixes a few bugs that was reported. +Version 3.2.2.3 (2009-03-26) + Fixed regression bug with the getPos method, it would return invalid if the view port was to small. +Version 3.2.2.2 (2009-03-25) + Fixed so the DOMUtils getPos method can be used cross documents if needed. + Fixed bug where undo/redo wasn't working correctly in Gecko browsers. +Version 3.2.2.1 (2009-03-19) + Added support for tel: URL prefixes. Even though this doesn't match any official RFC. + Fixed so the select method of the Selection class selects the first best suitable contents. + Fixed bug where the regexps for www. prefixes for link and advlink dialogs would match wwwX. + Fixed bug where the preview dialog would fail to open if the content_css wasn't defined. Patch contributed by David Bildstrm (ChronoZ). + Fixed bug where editors wasn't converted in application/xhtml+xml mode due to an issue with Sizzle. + Fixed bug where alignment would fail if multiple lines where selected. + Updated Sizzle engine to the latest version, this version fixes a few bugs that was reported. +Version 3.2.2 (2009-03-05) + Added new CSS selector engine. Sizzle the same one that jQuery and other libraries are using. + Added new is and getParents methods to the DOMUtils class. These use the new Sizzle engine to select elements. + Added new removeformat_selector option, enables you to specify a CSS selector pattern of elements to remove when using removeformat. + Fixed so the getParent method can take CSS expressions when selecting it's parents. + Added new ant based build process, includes a new javabased preprocessor and a yuicompressor ant task. + Moved the tab_focus logic into a plugin called tabfocus, so the old tab_focus option has been removed from the core. + Replaced the TinyMCE custom unit testing framework with Qunit and rewrote all tests to match the new logic. + Moved the examples/testcases to a root directory called tests since it now includes slickspeed. + Fixed bug where nbsp wasn't replaced correctly in ForceBlocks.js. Patch contributed by thorn. + Fixed bug where an dom exception would be thrown in Gecko when the theme_advanced_path path was set to false under xml application mode. + Fixed bug where it was impossible to get out of a link at the end of a block element in Gecko. + Fixed bug where the latest WebKit nightly would fail when changing font size and font family. + Fixed bug where the latest WebKit nightly would fail when opening dialogs due to changes to the arguments object. + Fixed bug where paragraphs wasn't added to elements positioned absolute using classes. + Fixed bug where font size values with dot's like 1.4em would produce a class instead of the style value. + Fixed bug where IE 8 would return an incorrect position for elements. + Fixed bug where IE 8 would render colorpicker/filepicker icons incorrectly. + Fixed bug where trailing slashes for directories in URLs would be removed. + Fixed bug where autostart and other boolean values in the media dialog wouldn't be stored/parsed correctly. + Fixed bug where the repaint call for the media plugin wouldn't be executed due to a typo in the source. + Fixed bug where id attribute of object elements wasn't kept intact by the media plugin. + Fixed bug where preview of embeded elements when the media_use_script option was used would fail. + Fixed bug where inlinepopups could be rendered at an incorrect location on IE 6 while dragging. + Fixed bug where the blocker shim could be placed at an incorrect location on IE 6. + Fixed bug where the multiple and size attributes of select elements would produce incorrect values while running in IE. + Fixed bug where IE would loose the caret position is you selected a color from the color drop down. + Fixed bug where remove format wouldn't work on IE since it couldn't remove span elements that had style information. + Fixed bug where Opera was removing links when removing formatting from selected contents. + Fixed bug where paragraphs could be produced inside non positional elements styled with the CSS position value of static. + Fixed bug where removeformat wouldn't work if you selected part of a span in IE. + Fixed bug where media plugin didn't retain the style attribute on embed/object elements. + Fixed bug where auto focus on empty editor instances could produce strange results if you inserted an image into it. + Fixed bug where   characters would be removed in FF when inserted with the mceInsertContent or selection.setContent methods. + Fixed bug where warning message of missing paste support wasn't displayed on WebKit browsers. + Fixed bug where anchor links could include other links. The selected range is now unlinked before adding news links to it. + Fixed memory leak when TinyMCE was used with prototype. Patch contributed by James Ots. + Fixed so the non documented fullpage_hide_in_source_view option for the fullpage plugin works again in the 3.x branch. + Fixed so tables doesn't get inserted into paragraphs by default since it's not W3C valid. Can be disabled by using the fix_table_elements option. + Fixed so the source view dialog sets a source_view state to the event object. Enables plugins to intercept the source view mode. + Fixed various validation issues with the html dialogs and pages. + Removed ask mode option since there is way better ways of doing this now. Use the add/remove control methods instead. + Removed logic for compatibility with Safari 2.x, this browser is no longer supported since no one is using it. + Removed the auto domain relaxing feature. If loading scripts cross sub domains it's better to specify the document.domain by hand. +Version 3.2.1.1 (2008-11-27) + Added new theme_advanced_default_background_color/theme_advanced_default_foreground_color options. Patch contributed by David Bildstrm (ChronoZ). + Fixed font style formatting compatibility issue with Adobe Air. + Fixed so legacy font elements get converted into spans even if cleanup_on_startup isn't enabled. + Fixed bug where pre elements could be incorrectly modified by an IE bug workaround. Patch contributed by hu vime. + Fixed bug where input elements inside inlinepopups wasn't editable in Firefox 2. + Fixed bug where the xhtmlxtras plugin wasn't replacing attribute values correctly. + Fixed bug where menu buttons in skin variants would look strange due to IE 8 fixes. + Fixed bug where WebKit browsers would on backspace take you back to the previous page if the editor was empty. + Fixed bug where DOMUtils decode method wouldn't handle strings larger than 4096kb due to node chunking. + Fixed bug where meta key wasn't handled as ctrl key on Mac OS X for custom keyboard short cuts. + Fixed bug where init event would get fired twice on WebKit on Mac OS X. +Version 3.2.1 (2008-11-04) + Added support for custom icon image for drop menus. Use icon_src to set a custom image directly. + Added new media_strict option to media plugin. Enables you to control if the flash embed is strict or not. Enabled by default. + Fixed so the editors script files gets dynamically loaded without using XHR or eval. + Fixed so the media plugin outputs valid XHTML object elements for Flash movies. Can be disabled with the media_strict option. + Fixed so dynamic loading doesn't require eval calls on non IE browsers for better Air support. + Fixed bug where the editor wasn't treated as empty if the remaining paragraph had attributes. + Fixed bug where id's of elements was removed ones they got wrapped in paragraphs. Patch contributed by ChronoZ. + Fixed bug where WebKit browsers where placing list elements inside paragraph elements. + Fixed bug where inserting images or links would produce absolute urls on WebKit browsers. + Fixed bug where values for checked, readonly, disabled and selected attributes was incorrect on IE. + Fixed bug where positive values for checked, readonly, disabled and selected attributes wasn't forced to valid values. + Fixed bug where selecting the first option in a native select box would produce an undefined error. + Fixed bug where tabindex 32768 could be outputted on IE if element attributes where cloned. + Fixed bug where the media dialogs preview window would display incorrect contents due to duplicate clsid prefixes. + Fixed bug where non pixel or percent heights for textarea elements would produce errors on IE. + Fixed bug where cdata sections in script elements wasn't handled correctly. + Fixed bug where nowrap of table cells would produce a 65535 value output. + Fixed bug where media plugin would produce an error if you selected the first item in the items list. + Fixed bug where media plugin would modify links with the item _value in them. + Fixed so table width/height is better forced if inline_styles is enabled. Patch contributed by daKmoR. + Fixed css for IE 8 such as opacity and other rendering quirks. +Version 3.2.0.2 (2008-10-02) + Fixed bug where the SelectBox and NativeSelectBox wasn't updated correctly if undefined was passed to them. + Fixed bug where the style dropdown wasn't correctly changed back to it's original state when element had no class. + Fixed bug where multiple pending font styles wasn't handled correctly. + Fixed so you can disable all auto css loading for dialogs by setting the popups_css option to false. +Version 3.2.0.1 (2008-09-17) + Fixed bug where font sizes and faces wouldn't be changed correctly when there was a parent with a different style. + Fixed bug where adding fonts to the same selection would produce redundant spans. +Version 3.2 (2008-09-11) + Added new text style support, it will now use span elements internally instead of font elements. + Added new improved support for the theme_advanced_font_sizes option, check the Wiki for details. + Added new keep_style setting that maintains the text style on return/enter on non IE browsers, enabled by default. + Added new onBeforeSetContent/onBeforeGetContent/onSetContent/onGetContent events to the Selection class. + Added new selectByIndex method to ListBox class. This enables you to select list items by an index instead of a value. + Added new possibility to the select method of the ListBox class. This can now have a selector function as it's value argument. + Added new possibility to skip the loading of popups css by setting the feature popup_css to the value false. + Added new possibility to skip translation of popups by setting the translate_i18n feature to false. + Added new element_format option enables you to produce HTML element endings instead of XHTML. But we are still in the XHTML is better camp. + Added missing allowfullscreen and quality options for flash elements, this will now get correctly stored. + Fixed bug where table cell dialog didn't close properly unless the accessibility_warnings option was set to false. + Fixed bug where the modal dialog blocker element for inlinepopups wasn't placed at a correct location if the page had scroll. + Fixed bug where non inline dialogs didn't close correctly if the inlinepopups plugin was used. + Fixed bug where non inline dialogs could make the modal dialog blocker to work incorrectly. + Fixed bug where style select wasn't populated correctly if you pressed the arrow. Patch by Hari Karam Singh. + Fixed bug where toggling the fullscreen mode didn't restore scrollbars on IE when the editor was inside a frame. Patch by Jacob Barrett. + Fixed bug where inserting flash contents using the template plugin didn't work correctly. + Fixed bug where inserting flash contents using the selection.setContent or mceInsertContent command didn't work correctly. + Fixed bug where IE would produce an exception if a comment started with -. + Fixed bug where the blockquote button would wrap lists incorrectly on non IE browsers. + Fixed bug where Opera would display BR elements in the element path. + Fixed bug where xhtmlxtras didn't insert elements correctly on IE. + Fixed bug where the buttons wasn't activated correctly in the xhtmlxtras plugin. + Fixed bug where adding an object as the style attribute for the dom setAttribs method wouldn't work. + Fixed bug where the background color would bleed out to parent container element in Gecko. + Fixed bug where the insert column actions for tables would fail if you did it in a thead or tfoot. Patch contributed by T Andersen (tan73). + Fixed bug where event blocker element wasn't positioned correctly for the inlinepopups plugin. + Fixed bug where pasting from Office 2007 would produce an odd comment in the contents. + Fixed bug where the paste as plain text could remove an extra character. Patch contributed by Speednet. + Fixed bug where some characters where missing for the paste_replace_list option. Patch contributed by Speednet. + Fixed bug where removing non existing editor instances by the mceRemoveControl command would produce an error. + Fixed bug where meta elements with the name description would produce errors in IE. + Fixed bug where color and background colors wouldn't be updated properly. + Fixed bug where the createMenuButton of tinymce.ControlManager didn't implement the last class argument. + Fixed bug where the editor_css option was relative from the TinyMCE installation directory not the current page. + Fixed bug where elements wouldn't be padded if the element contained bogus br elements. For example TD elements. + Fixed bug where parsing of in fullpage plugin would produce an error. + Fixed bug where relative urls with just ./ would become an empty string. + Fixed bug where outdent button would be disabled if inline_styles where set to false. + Fixed bug where replace with an empty search string would produce an error on IE. + Fixed bug where restoring the overflow state of the body in fullscreen plugin running on IE would produce vertical scrollbars. + Fixed bug where pressing return/enter in list items would sometimes move the caret the to top of the content area in FF. + Fixed bug where the style listbox wouldn't be updated correctly if you used the use_native_selects option. + Fixed bug where WebKit browsers would produce a div element when ending list elements using return. + Fixed so translation of popup contents only occurs if it's needed. + Optimized the URI object in regards or converting absolute URIs to relative URIs. +Version 3.1.1 (2008-08-18) + Added new getSize method to DOMUtils it will return the dimensions only of an element. + Added new alert/confirm methods to the tinyMCEPopup class to prevent focus problems and also to shorten method calls. + Added new plugin_preview_inline option to preview plugin to enable/disable native/inline dialogs. + Added new readonly option. If this is set the editor will only display the contents for the user. + Added missing tabindex and accesskey to input elements in the default valid_elements setup. + Updated firebug lite to 1.2, to enable it use the tiny_mce_dev.js?debug=1 on the development package. + Fixed so the preview dialog in the preview plugin uses inline dialogs/popups. + Fixed so CDATA sections remains intact through the serialization process of the DOM tree. + Fixed various issues with the getAttrib command. It will now return more correct values. + Fixed bug where the embed element wasn't properly parsed in the media plugin it now supports 3 formats. + Fixed bug where the noshade attribute was serialized incorrectly on IE. + Fixed bug where editing an existing link element didn't force it relative. + Fixed bug where image link creation fails on Safari if the image is aligned. + Fixed bug where it was possible to scroll the fullscreen mode in Opera 9.50. + Fixed bug where removal of center image alignment would fail. Patch contributed by Andrew Ozz. + Fixed bug where inlinedialogs didn't work properly if the doctype was incorrect in IE. + Fixed bug where cross domain loading didn't work correctly in Opera 9.50. + Fixed bug where breaking huge text blocks with return/enter key would scroll to end of block. + Fixed bug where replace button kept inserting the replacement text even if there is no more matches. + Fixed bug with fullpage plugin where value wasn't set correctly. Patch contributed by Pascal Chantelois. + Fixed bug where the dom utils setAttrib method call could produce an exception if the input was null/false. + Fixed bug where pressing backspace would sometimes remove one extra character in Gecko browsers. + Fixed bug where the native confirm/alert boxes would move focus to parent document if fired in dialogs. + Fixed bug where Opera 9.50 was telling you that the selection is collapsed even when it isn't. + Fixed bug where mceInsertContent would break up existing elements in Opera and Gecko. + Fixed bug where TinyMCE fails to detect some keyboard combos on Mac, contributed by MattyRob. + Fixed bug where replace all didn't move the caret to beginning of text before searching. + Fixed bug where the oninit callback wasn't executed correctly when the strict_loading_mode option was used, thanks goes to Nicholas Oxhoej. + Fixed bug where a access denied exception was thrown if some other script specified document.domain before loading TinyMCE. + Fixed so setting language to empty string will skip language loading if translations are made by some backend. + Fixed so dialog_type is automatically modal if you use the inlinepopups plugin use dialog_type : "window" to re-enable the old behavior. +Version 3.1.0.1 (2008-06-18) + Fixed bug where the Opera line break fix didn't work correctly on Mac OS X and Unix. + Fixed bug where IE was producing the default value the maxlength attribute of input elements. +Version 3.1.0 (2008-06-17) + Fixed bug where the paste as text didn't work correctly it encoded produced paragraphs and br elements. + Fixed bug where embed element in XHTML style didn't work correctly in the media plugin. + Fixed bug where style elements was forced empty in IE. The will now be wrapped in a comment just like script elements. + Fixed bug where some script elements wrapped in CDATA could fail to be serialized correctly. + Fixed bug where FF 3 produced -moz- internal styles in some style attributes. + Fixed bug where query strings and external URLs didn't work correctly in style attributes. + Fixed bug where shape attribute of area elements got serialized as rect regardless of it's initial value in IE 6. + Fixed bug where selection of elements inside layers would fail in IE since focus was moved to the document body. + Fixed bug where pressing enter/return in an editable select box would produce an __mce_add_custom__ class value. + Fixed bug where changing font size of text placed inside a colored text chunk would remove the parent node. + Fixed bug where Opera 9.5 final produced a strange line break behavior due to a workaround for previous Opera versions. + Fixed bug where text/background color would produce a strange focus problem when you tried to click on the body in IE. + Fixed issue where selecting the title of an listbox equals the old 2.x behavior of changing the value to an empty string. + Fixed issue where it was common for the media plugin to break if the _value attribute wasn't added for the param element. + Fixed issue where the wrong parent editor instance might be updated if you use fullscreen mode in an incorrect way. + Fixed issue where Safari was producing a warning about the base element not being closed correctly. + Removed redundant form element name matching from regexp in the DOMUtils class. +Version 3.0.9 (2008-06-02) + Added new contextmenu_offset_x/contextmenu_offset_y options for the contextmenu plugin. + Added cite attribute to the default rule for the blockquote element. + Added support for using arrow keys for selection of items in listboxes. + Added support for using arrow keys for selection of items in dropmenus. + Fixed bug where blockformat change on elements with BR inside them didn't change correctly on Firefox. + Fixed bug where removing table rows inside thead or tfoot would remove the whole table if it was the last one. + Fixed bug where XHR synchronous mode didn't execute the callback handlers synchronously. + Fixed bug where setting border to 0 didn't add border: 0 to the style attribute when using the advimage dialog. + Fixed bug where the selection of images and table cells didn't work correctly when the editor is placed in a frame and running on IE. + Fixed bug where the store/restore of a selection didn't work correctly in non IE browsers. + Fixed bug where only the first element would be invalid for the invalid_elements option. + Fixed bug where paste as plain text didn't encode the characters correctly when they where inserted. + Fixed bug where HTML source window couldn't be maximized on Gecko when the maximizable feature was enabled. + Fixed bug where color selection using the color picker could produce exception in IE. + Fixed bug where font size changes could produce produce extra redundant elements. + Fixed bug where IE could produce unknown runtime error if you replaced a image with another image from a separate frame. + Fixed bug where the domLoaded state for the Event class wasn't set correctly if the editor was loaded dynamically using the gzip compressor. + Fixed bug where handling of the base element for a page would produce incorrect urls. Based on a patch contributed by John LeSueur. + Fixed bug where table constraint alert boxes was presented with an empty value and wasn't the skinned inline ones. + Fixed bug where the onChange event wasn't fired when the form was submitted. It's now also triggered when the save method is called. + Fixed bug where encoding set to xml didn't work as expected. It now encodes the contents into XML entities. + Fixed bug where numrows didn't work correctly for the merge cells dialog of the table plugin. + Fixed bug where the onGetContent event was fired even when the no_events flag was set. + Fixed bug where the preview panels for the advimage and the media plugin could overflow on Safari and FF 3. + Fixed bug where the editing and removal of abbr elements using the xhtmlxtras plugin working correctly on IE. + Fixed bug where save button in the save plugin didn't work correctly on IE. + Fixed bug where dragging layers didn't work as expected since it would snap back to it's original location if you saved. + Fixed bug where the description of the template plugin dialog wasn't updated correctly. + Fixed bug where the values for frame and rules in the table dialogs where swapped. + Fixed bug where the elements like ins, del, cite, acronym and abbr didn't have the default editing style as the old 2.x branch. + Fixed bug where ask mode would lock the focused textarea if you pressed cancel in the confirm dialog on FF 3. + Fixed bug where ask mode would produce contents for empty textareas if you reloaded the page. + Fixed so the onGetContent event gets the full pass through object just like the other events. + Fixed so attributes for block elements remains the same when you change format of a element. +Version 3.0.8 (2008-04-30) + Fixed bug where IE would produce an error if textareas without names where converted. + Fixed bug where editor wasn't forced empty when there was only a single br or empty paragraph left. + Fixed bug where IE would produce an warning message if object elements where produced in the media plugins preview running on https. + Fixed bug where new addVer function didn't handle hash items correctly. Patch contributed by Mirek Burkon. + Fixed bug where font_size_style_values option wasn't applied correctly to fonts inside the editor. + Fixed bug where image selection could be lost if a image was edited using context menu on IE. + Fixed bug where style values wasn't updated properly due to an invalid regexp. + Fixed bug where IE 6 where displaying warning message about insecure items when inserting an image while using https. Patch contributed by Norifumi Sunaoka. + Fixed bug where IE was producing an auto save message if you selected a color from the color split button. + Fixed bug where backspace sometimes would move the caret to the end of the previous block in Gecko. + Fixed bug where the rowlayout manager didn't work as described in the documentation. + Fixed bug where the default options for the fullpage plugin wasn't applied correctly. + Fixed bug where selection would jump one character if you applied a styles to a words in non IE browsers. + Fixed bug where undo levels wasn't added correctly if you went back in undo history and added a new event. + Fixed bug where font size dropdown didn't mark the selected size in IE. + Fixed bug where the size of the editor was determined using clientWidth instead of offsetWidth. + Fixed so the onchange event doesn't fire on the initial undo level, it will also fire when the editor is blurred. + Fixed so the advhr plugin produces XHTML valid output instead of non standard attributes. + Fixed so blockquote gets converted into [quote] in when the bbcode plugin is enabled. + Fixed so theme_advanced_font_sizes can be named for example Font 1=1, Font 2=2 etc. + Fixed so editor_selector/editor_deselector can be regexps. By default only strings are allowed not part regexps like before. + Fixed so that the version suffix is optional. It still requires the build process so you need to export it manually. + Fixed so it's possible to tab to table cells in non Gecko browsers and also produce new rows if you tab at the end of a table. Contributed by Josh Peek. +Version 3.0.7 (2008-04-14) + Added new version suffix to all internal GET requests to make sure that the users cache gets cleared correctly. + Fixed issue with isDirty returning true event if it wasn't dirty on IE due to changes in tables during initialization. + Fixed memory leak in IE where if a page was unloaded before all images on the page was loaded it would leak. + Fixed bug in IE where underline and strikethrough could produce an exception error message. + Fixed bug where inserting paragraphs in totally empty table cells would produce odd effects. + Fixed bug where layer style data wasn't updated correctly due to some performance enhancements with the DOM serializer. + Fixed bug where it would convert the wrong element if there was two elements with the same name and id on the page. + Fixed bug where it was possible to add style information to the body element using the style plugin. + Fixed bug where Gecko would add an extra undo level some times due to the blur event. + Fixed bug where the underline icon would get active if the caret was inside a link element. + Fixed bug where merging th cells not working correctly. Patch contributed by Andr R. + Fixed bug where forecolorpicker and backcolorpicker buttons where rendered incorrectly when the o2k7 skin was used. + Fixed bug where comment couldn't contain -- since it's invalid markup. It will now at least not break on those invalid comments. + Fixed bug where apos wasn't handled correctly in IE. It will now convert apos to ' on IE since that browser doesn't support that entity. + Fixed bug where entities wasn't encoded correctly inside pre elements since they where protected from whitespace removal. + Fixed bug where color split buttons where rendered incorrectly on IE6 when using the non default theme. + Fixed so caret is placed after links ones they are created, to improve usability of the editor. + Fixed so you can select tables by clicking on it's borders in non IE browsers to normalize the behavior. + Fixed so the menus can be toggled by clicking once more on the icon in listboxes, menubuttons and splitbuttons based on code contributed by Josh Peek. + Fixed so buttons can be labeled, currently only works with the default skin, so it's kind of experimental. Patch contributed by Daniel Insley. + Fixed so forecolorpicker and backcolorpicker remembers the last selected color. Patch contributed by Shane Tomlinson. + Fixed so that you can only execute the mceAddEditor command once for the same instance name. + Fixed so command functions added with addCommand can pass though the call to default handles if it returns true. +Version 3.0.6.2 (2008-04-07) + Fixed bug where empty tables couldn't be edited correctly on non IE browsers if they where loaded into the editor. + Fixed bug where it was impossible to resize layers correctly in IE since it thought it was an image. + Fixed bug where an editor instance was stealing focus in IE resulting in a scroll to the editor on page reloads. + Fixed bug where Safari was crashing on Mac OS X if you closed dialogs using the Esc key. +Version 3.0.6.1 (2008-04-04) + Added support for the missing mceAddFrameControl command. The input for this command has changed so consult the Wiki. + Fixed bug where sub menus for the drop menus would leave an empty element behind. + Fixed memory leak in IE if the editor was placed in a frame or iframe. +Version 3.0.6 (2008-04-03) + Added elements to the default value of valid_elements option. It now contains all XHTML strict elements and a few transitional. + Added more accessibility fixes, it's now possible to navigate and close list boxes and split button menus with the keyboard. + Added missing getInfo method to the contextmenu and safari plugin, this caused problems for the Drupal module. + Added new inlinepopups_zindex option to the inlinepopups plugin so that you can configure the default start z-index. + Added new setControlType method to the tinymce.ControlManager class. This method enables you to override the default classes. + Added ability to specific an optional control class to use instead of the default one for the ControlManager methods. Based on concept by Josh Peek. + Fixed bug where attribute rules for the DOM Serializer couldn't contain - or _ characters in their names. + Fixed bug where inlinepopups event blocker and modal dialog blocker elements produced vertical scrollbars. + Fixed bug where there was a rendering issue with quirks mode in Safari moving the resize handle to an incorrect position. + Fixed bug with forecolor/backcolor controls on IE. Sometimes elements positioned relative will generate display errors. + Fixed bug where a p2 was leaking out in the global name space when you selected a color from the forecolor/backcolor controls. + Fixed bug where empty paragraphs didn't work as expected in browsers other than IE. + Fixed bug where the load method of the tinymce.dom.ScriptLoader didn't check if the file was already loaded. + Fixed bug where the load method for the PluginManager and ThemeManager didn't check if a plugin/theme by a specific name was all ready loaded. + Fixed bug where the theme_advanced_link_targets option didn't work correctly with the advanced themes link dialog. Patch contributed by Arnold B. + Fixed bug where the style command would merge classes into empty span elements. + Fixed bug where the style command would remove empty span elements outside the current selection. + Fixed bug where the fix for the Safari backspace bug removed all editor contents if it was filled with empty paragraphs. + Fixed bug where alert and confirm boxes opened by the inlinepopups plugin would produce an exception if domain relaxing was used. + Fixed bug where Safari was adding style attributes to all elements when you paste them into the editor. + Fixed bug where the spellchecker menus was visually incorrect since the space for the non existing icon was still there. + Fixed bug where remove_linebreaks option didn't remove line breaks inside the text contents of a element. + Fixed bug where Safari 3.1 was introducing _mc_tmp into paragraphs due to the new querySelectorAll and a TinyMCE specific workaround. + Fixed bug where getParam method in the Editor class was returning incorrect objects and would mess up the font drop down. Patch contributed by speednet. + Fixed bug where the table dialog would produce an exception in IE when you edited tables since it tried to place focus in a disabled field. + Fixed bug where class attribute on some span elements was removed on cleanup. + Fixed bug where resizing the editor in IE could produce an exception if the editor width/height got to be a negative value. + Fixed bug where wmv files wouldn't play since the src param was used instead of the url param. + Fixed bug where br elements would be added here and there in Gecko. Geckos internal _moz_dirty br elements where serialized as well. + Fixed bug where editing named anchors would produce two anchors instead of one updated one. + Fixed bug where arrow and function keys didn't work when an noneditable element was focused within the editor. + Fixed bug where the dispatcher could produce an exception if the listener list was altered inside an event callback. + Fixed bug where it was impossible to totally empty the editor contents on Safari due to an mistreatment of nbsp as whitespace. Patch contributed by Andrew Ozz. + Fixed bug where TinyMCE would not convert textareas with the same name attribute value. It will now generate an unique id for those textareas. + Fixed bug where backspace/delete key was deleting td elements inside tables while running on Gecko. + Fixed bug where Firefox 3.0b4 and Opera 9.26 where scrolling to the top of document when pressing return/enter. + Fixed bug where the template plugin wasn't just inserting the mceTmpl tagged element. + Fixed bug where the alert method of the default WindowManager implementation didn't translate input language strings like the inlinepopups dialog does. + Fixed bugs with the backspace behavior in Gecko. The caret was placed on incorrect locations in the DOM sometimes. + Fixed so advimage dialog and table dialogs has support for editable select boxes for the class value. + Fixed so the media, pagebreak and spellchecker doesn't load it's default content.css file if the content_css option is set to false. + Fixed so the paste_use_dialog option works again it's enabled by default but can be disabled on IE. Patch contributed by Speednet. + Fixed so that the fullscreen editor is focused when switching fullscreen editing on. + Fixed so it's possible to edit images and links inside tables using the context menu. + Fixed so table dialogs and the advanced image dialog doesn't loose selection in IE if the dialogs where navigated/submitted with the keyboard. + Fixed so the theme_advanced_blockformats options can have named items for example title 1=h1;title 2=h2. + Fixed so it's possible to add a custom editor_css for the simple theme. + Fixed quirks with directionality rtl, patch contributed by Andrew Ozz. + Fixed so the inlinepopups default start zIndex is 300000. + Fixed typo in media plugin Shockware is now replaced with Shockwave. + Fixed psuedo memory leak in IE with the replaceChild method inside the DOMUtils.replace method. + Fixed so memory is released when an editor instance is removed from page. + Optimized the color split button menus so that they use less event handlers. + Removed the util/mclayer.js file since it's no longer used by any of the TinyMCE dialogs and is considered deprecated. +Version 3.0.5 (2008-03-12) + Added new black skin variant to the o2k7 skin contributed by Stefan Moonen. + Added new explode method to the tinymce core class. This does a split but removed whitespace it also defaults to a , delimiter. + Added new detection logic for IE 8 standards mode into the DOMUtils class strMode can now be checked to see if that mode is on/off. + Added new noscale option value for the scale select box for Flash in the media plugin. + Fixed bug where the menu for the ColorSplitButton wasn't removed when the editor was removed. + Fixed bug where font colors couldn't be edited correctly since the style of the element didn't get updated correctly. + Fixed bug where class of elements would get lost when TinyMCE was fixing incorrect HTML markup. + Fixed bug where table editing would produce double height values. + Fixed bug where width style value wouldn't be removed if you switched width unit from cm/em to pixels or percent. + Fixed bug where the search/replace input box wasn't auto focused like the other dialogs. + Fixed bug where the old mceAddControl command would use the fullscreen settings next time it created an instance. + Fixed bug where multiple lines where added to the target cell if you merged multiple empty cells. + Fixed bug where drop down menus would be incorrectly positioned inside scrollable divs. + Fixed bug where the separators of the silver skin variant didn't display correctly in IE 6. + Fixed bug where createStyleSheet seems to load scripts at opposite order in some IE versions. + Fixed bug where directionality could produce odd results for the UI and the dialogs. + Fixed bug where the DOM serializer wouldn't serialize custom namespaced attributes in IE 6 using the *[*] valid elements rule. + Fixed bug where table caption would be inserted after the thead element if you swapped a tr to be inside the thead. + Fixed bug where the youtube detection logic for the media plugin was to generic. + Fixed so the deprecated and undocumented theme_advanced_path_location set to none won't hide the whole statusbar. + Fixed so most input lists can have whitespace in them they are now split using the new tinymce.explode method. + Fixed so the popup_css and popup_css_add URLs are relative to where the current document is located. + Fixed various bugs and quirks with the store/restore selection logic. + Fixed so the editor starts in IE 8 standards mode but still that browser is very very buggy. + Fixed so dialog_type set to modal will block the background and other inline windows and only give access to the front most window. +Version 3.0.4.1 (2008-03-08) + Fixed critical bug where it was impossible to edit images when inlinepopups where used due to lost selection in IE. +Version 3.0.4 (2008-03-07) + Added new option constrain_menus, this enables you to force view port constraints on all menus. Contributed by Shane Tomlinson. + Fixed bug where table background wasn't visible inside the editor due to a default CSS rule overriding the style attribute. + Fixed bug where links would get a null class added if no styles was used in IE. + Fixed bug where spellchecker was auto focusing the editor in IE. + Fixed bug where document.domain would produce invalid argument if the editor was loaded in IE6 over a network UNC path. + Fixed bug where table height attribute was used, this is deprecated in XHTML so it now adds it as an style. + Fixed bug where textareas with style values would produce error in IE. + Fixed so the first element in each dialog is focused by default to enhance keyboard usage. + Fixed so you can add a mceFocus class to elements to make it auto focused. + Fixed so you can close dialogs using the esc key. + Fixed so you can press return/enter to submit the action of each dialog. + Fixed so tabbing inside an inline popups wont focus the resize anchor elements. + Fixed so you can press ok in inline alert messages using the return/enter key. + Fixed so textareas can be set to non px or % sizes for example em, cm, pt etc. + Fixed so non pixel values can be used in width/height properties for tables. + Fixed so the custom context menu can be disabled by holding down ctrl key while clicking. + Fixed so the layout for the o2k7 skin looks better if you don't have separators before and after list boxes. + Fixed so the sub classes get a copy of the super class constructor function to ease up type checking. + Fixed so font sizes for the format block previews are normalized according to http://www.w3.org/TR/CSS21/sample.html (it can be overridden). + Fixed so font sizes for h1-h6 in the default content.css is normalized according to http://www.w3.org/TR/CSS21/sample.html (it can be overridden). +Version 3.0.3 (2008-03-03) + Fixed bug where an error about document.domain would be thrown if TinyMCE was loaded using a different port. + Fixed bug where mode exact would convert textareas without id or name if the elements option was omitted. + Fixed bug where the caret could be placed at an incorrect location when backspace was used in Gecko. + Fixed bug where local file:// URLs where converted into absolute domain URLs. + Fixed bug where an error was produced if a editor was removed inside an editor command. + Fixed bug where force_p_newlines didn't effect the paste plugin correctly. + Fixed bug where the paste plugin was producing an exception on IE if you pasted contents with middots. + Fixed bug where delete key could produce exceptions in Gecko sometimes due to the fix for the table cell bug. + Fixed bug where the layer plugin would produce an visual add class called mceVisualAid this one is now renamed to mceItemVisualAid to mark it internal. + Fixed bug where TinyMCE wouldn't initialize properly if ActiveX controls was disabled in IE. + Fixed bug where tables and other elements that had visual aids on them would produce an extra space after any custom class names. + Fixed bug where search with an empty string would produce some odd "invalid pointer" error in IE. + Fixed bug where elements like menus where placed at incorrect positions in Opera 9.26. + Fixed bug where IE was loosing focus of the editor when you clicked some dropmenu and if it was placed in a frame or iframe. + Fixed bug where focus of images could be lost in IE if you focused the accessibility confirm dialog in the advimage plugin. + Fixed bug where nestled font elements would produce odd output like missing font elements. + Fixed bug where text colors and styles got removed if invalid_elements included the font element. + Fixed bug where text-decoration set to underline or line-through would remove other styles from span elements. + Fixed bug where editor contents like \n\n would be incorrectly handled and processed as real line feeds. + Fixed bug where incorrectly encoded urls with ampersands in them would be decoded incorrectly. + Optimized the DOMUtils decode method to be a lot faster if the string doesn't have any entities to decode. +Version 3.0.2.1 (2008-02-26) + Fixed alert/confirm dialogs so they display correctly. +Version 3.0.2 (2008-02-26) + Added new body_id option that enables you to specify the id of the body inside the editor iframe based on ideas by David Bildstrm (ChronoZ). + Added new body_class option that enables you to set the class for the body of the editor iframe based on ideas by David Bildstrm (ChronoZ). + Added new CSS class to the default content.css files mceForceColors that forces white background and black text can be used with the body_class option. + Added new type parameter to the Editor.getParam function to reduce redundant logic for parsing hash tables. + Added new isDone method to the ScriptLoaded class, this enables you to check if a script has been loaded or not. + Added new resizeTo and resizeBy methods for the advanced theme. Can be called using tinyMCE.activeEditor.theme.resizeTo(w, h); + Added new skin_variant option this can be used to extend existing skins with slight modifications like color. + Added new variant of the o2k7 skin called "silver" based on a contribution made by Stefan Moonen. + Fixed bug where the template plugin might produce errors if the template_mdate_classes wasn't configured. + Fixed bug where the media plugin didn't convert the URLs for movies once they where inserted. + Fixed bug where the style field for the advlink dialog didn't work correctly if you edited an existing link. + Fixed bug where alignment of toolbars would fail in editor was uses in a quirks mode on IE, fix contributed by Peter Wood & Art Lawry. + Fixed bug where initialization of multiple editors at the same time using the mceAddControl method would produce errors. + Fixed bug where initialization of editors using mceAddControl command or new tinymce.Editor calls would fail during page load. + Fixed bug where the check for domain relaxing could fail if the document.domain property was changed by another script. + Fixed bug where textareas couldn't be named description or any other name that matches the meta elements in IE and Opera. + Fixed bug where the element path would fail sometimes in IE due to "unknown runtime error" on innerHTML. + Fixed bug where Safari would crash if you was hiding the editor before serializing the contents. + Fixed bug where the editor wasn't scaled propertly in fullscreen mode using the old fullscreen_new_window option. + Fixed bug where render method didn't load language packs in IE and Opera if you rendered an editor during page load. + Fixed bug where resizing the browser window in fullscreen didn't resize the editor. + Fixed bug where the blockquote command didn't move the caret inside the new empty blockquote if you used it on an empty document. + Fixed bug where auto in a style width/height for the textarea would produce an editor with the size value of 100. Fix contributed by Shane Tomlinson. + Fixed bug where restoration of selection at the beginning of an element could fail in Gecko. + Fixed bug where caret restoration after a cleanup could place the it at an incorrect location. + Fixed bug where delete key inside td elements would delete the cell in Gecko. + Fixed so the blockquote button toggles individual lines. This behavior is a bit more like the old indentation behavior in the 2.x branch. + Fixed so the dialog language packs only gets loaded the first time you open a dialog. + Fixed so all classes in the whole UI is prefixed with "mce" to avoid collisions, use the skin converter to update your existing skins. + Fixed so all classes in the inlinepopups logic is prefixed with "mce" to avoid collisions, use the skin converter to update your existing skins. + Fixed so that the window in fullscreen mode can be resized when fullscreen_new_window option is enabled. + Fixed so blockquote elements are formatted in the source output with an linefeed before and after it. + Optimized the editor initialization by reducing the number of calls to getBookmark/moveToBookmark. +Version 3.0.1 (2008-02-21) + Added spellchecker plugin into the main package, but without any backend can be specified with the spellchecker_rpc_url option. + Added src attribute for script elements to the default valid_elements option value. + Added extra parameter to the class_filter callback it can now also filter out classes based on the whole CSS rule. + Added support for domain relaxing, TinyMCE can now be loaded from an remote domain as long as they are on the same root domain. + Added support for custom elements the new custom_elements option enables you to add non HTML elements to the editor. + Added support for the W3C Selectors API that was added to latest nightly build of WebKit. + Fixed bug where some object param element wasn't stored correctly using the media plugin. + Fixed bug where Opera was scrolling to top of page is drop menus on list boxes where displayed. + Fixed bug where IE6 was crashing if a format block was used on a container with anchor elements. + Fixed bug where spans with font sizes wasn't handled correctly when editor was loading contents. + Fixed bug where mode exact couldn't convert editors with name only. Id is no longer required but recommended. + Fixed bug where the mceInsertRawHTML command produced an extra undo level. + Fixed bug where the specific_textareas mode didn't work correctly this is the same thing as textareas now. + Fixed bug where the values of input elements in the HTML page of dialogs pages where changed in IE. + Fixed bug where fullscreen and fullpage plugins didn't work well together. + Fixed bug where embed elements wasn't handled properly in the media plugin. + Fixed bug where style information on span elements gets munged when fonts are converted to spans. + Fixed bug where some entities in element attributes where encoded incorrectly in the latest WebKit build. + Fixed bug where initialization would fail in IE if there where two input elements with the name submit in the form. + Fixed bug where fullscreen mode didn't work correctly in IE when the fullscreen_new_window option was used. + Fixed bug where invalid contents like an ul inside a p element would produce odd results in IE. + Fixed bug where Opera 9.2x was placing the drop menus at incorrect locations if the editor was placed in a table. + Fixed bug where Opera was producing odd results if enter/return was pressed while having forced_root_blocks disabled. + Fixed bug where layer plugin was stealing focus in IE on initialization. + Fixed bug where body attributes wasn't set properly in the fullpage plugin, fix contributed by Hiroaki Kawai. + Fixed bug where insert image and insert link dialogs where producing an extra level in the undo history. + Fixed bug where Gecko would produce an error if empty elements like

where inserted using mceInsertContent. + Fixed bug where center alignment of images produced odd results inside table cells. + Fixed bug where center alignment of images couldn't be toggled correctly. + Fixed bug where alignment of images inside tables would produce double float style items in IE if the fix_table_elements option was enabled. + Fixed bug where a variable called 'v' was polluting the global namespace. Objects tinymce and tinyMCE are the only ones allowed to be global. + Fixed bug where insert table from context menu couldn't insert new tables inside existing tables. + Fixed bug where Safari wouldn't produce br elements on enter when the force_br_newlines option was enabled. + Fixed bug where switching cell type in table cell dialog would produce odd attributes in IE. + Fixed bug where Gecko was outputting internal attributes if valid_elements where set to "*[*]". + Fixed bug where the style plugin would produce non hex colors inside the dialog when running on Gecko. + Fixed bug where an empty src value for insert image would remove the currently selected image if it wasn't and image element. + Fixed bug where hidden input elements would break the logic for the tab_focus option. + Fixed bug where save button wasn't working correctly in fullscreen mode. + Fixed bug where the editor was forced to be placed in a form element if the save_onsavecallback option was used. + Fixed bug where upper case param attributes wasn't parsed correctly in the media plugin. + Fixed bug where render method of tinymce.Editor class would produce an exception if the strict_loading_mode option was omitted. + Fixed bug where nodeChanged event could be fired while the editor was loading and there for produce an exception in FF. + Fixed bug where no undo levels where added if the user created new table rows using the tab key on Gecko. + Fixed bug where tables would be broken if you selected a different block format for contents withing an table cell. + Fixed bug where the render method of the tinymce.Editor class didn't setup the tinymce.EditorManager.settings object correctly. + Fixed bug where the advanced image dialog would go to the first tab if the alternative image was changed using the file browser link. + Fixed bug where the forced_root_block option would produce BR elements inside empty blocks if the block wasn't a paragraph. + Fixed bug where the forced_root_block doesn't work correctly on IE if the specified element was something else than paragraphs. + Fixed bug where selection of images would get lost if user selected something from the context menu in IE. + Fixed bug where the context menu plugin would pollute the global namespace with two variables p1 and p2. + Fixed compatibility issue with Mootools, it is destroying document.getElementById on unload in IE. (Mantra: You don't own the internal objects). + Fixed bugs where dialogs/tabs and other UI elements where rendered incorrectly in Firefox 3. + Fixed so the auto CSS class importer is compatible with 2.x. + Fixed so the editor UI and inlinedialogs works correctly with the YUI CSS reset package. + Fixed so header and footer elements are forced to lower case when the fullpage plugin is used. + Fixed so load prefixes "-" for plugins and themes isn't required if the plugin/theme was loaded by the ThemeManager/PluginManager. + Fixed so the JSONRequest uses application/json content type to make Ruby on rails happy. + Fixed so the CSS rule is more exact for the body in the default content.css files. Body is now defined as "body.mceContentBody" instead of just "body". + Fixed so the tiny_mce_dev.js uses XHR instead of document.write to load scripts to resolve an issue with Opera 9.50. + Fixed so language pack loading can be disabled by setting the language option to false. Can be useful for systems with their own language pack management. +Version 3.0 (2008-01-30) + Added map and area elements to the default valid_elements list and also some indentation rules. + Fixed bug where empty paragraphs wasn't padded when loading contents. + Fixed bug where the RowLayout manager didn't work at all. + Fixed bug where style attribute data would get messed up in advimage dialog. + Fixed bug where the table dialogs class select wasn't updated correctly. + Fixed bug where elements would get extra whitespace around on insert when body was present in valid_elements. + Fixed bug where coords attribute of the area element wasn't handled properly in IE. + Fixed bug where Safari didn't produce BR elements on shift+return. + Fixed bug where force blocks would cast odd invalid attribute exception in IE. + Fixed bug where media plugin would produce extra whitespace before and after objects. + Fixed bug where cleanup_callback could break the contents of the editor. But use the new event system instead of this option. + Fixed bug where the tab_focus option didn't work between editor instanced. You can now tab between editors. + Fixed bug where the load function of the ScriptLoader class didn't load single files without the load que as it was supposed to. + Fixed bug where the execcommand_callback parameter order was incorrect. Recommendation use the new addCommand method. + Fixed bug where range.select calls sometimes failed on some IE versions. + Fixed bug where Safari was scrolling to top of document when enter/returned was pressed. + Fixed bug where fullscreen_new_window option didn't work correctly. + Fixed bug where the nonbreaking plugin inserted an space instead of an non breaking space the first time. + Fixed bug where the visualization of non breaking spaces where visual in element path. + Fixed so the focus is restored to the editor after inserting an custom character. + Fixed so the isNotDirty state is set to false if a new undo level is added. + Fixed so pointless style information for borders gets removed in IE. + Fixed so the resize button has a se-resize cursor css value. +Version 3.0rc2 (2008-01-18) + Added new fix_nesting option to fix bug #1867292, this is disabled by default. + Added new indentation option enables you to specify how much each indent/outdent call will add/remove. + Added easier support for enabling/disabling icon columns on drop menues. + Added new menu button control class. This control is very similar to the splitbutton but without any onclick action. + Added support for previous tab focus (shift+tab). The tab_focus setting now takes two items next and previous element. + Fixed bug where iframes inside the editor got removed in Firefox on initial load. + Fixed bug where the CSS for abbr elements wasn't applied correctly in IE. + Fixed bug where mceAddControl on element inside a hidden container produced errors. + Fixed bug where closed anchors like produced strange results. + Fixed bug where caret would jump to the top of the editor if enter was pressed a the end of a list. + Fixed bug where remove editor failed if the editor wasn't properly initialized. + Fixed bug where render call on for a non existing element produced exception. + Fixed bug where parent window was hidden when the color picker was used in a non inlinepopups setup. + Fixed bug where onchange event wasn't fired correctly on IE when color picker was used in dialogs. + Fixed bug where save plugin could not save contents if the converted element wasn't an textarea. + Fixed bug where events might be fired even after an editor instance was removed such as blur events. + Fixed bug where an exception about undefined undo levels could be throwed sometimes. + Fixed bug where the plugin_preview_pageurl option didn't work. + Fixed bug where adding/removing an editor instance very fast could produce problems. + Fixed bug where the link button was highlighted when an anchor element was selected. + Fixed bug where the selected contents where removed if a new anchor element was added. + Fixed bug where splitbuttons where rendered one pixel down in the default theme. + Fixed bug where some buttons where placed at incorrect positions in the o2k7 theme. + Fixed bug that made it impossible to visually disable a custom button that used an image instead of CSS sprites. + Fixed bug where it wasn't possible to press delete/backspace if the editor was added+removed and re-added due to a FF bug. + Fixed bug where an entities option with only 38,amp,60,lt,62,gt would fail in IE. + Fixed bug where innerHTML sometimes generated unknown runtime error on IE. + Fixed bug where content_css files wasn't loaded in the template preview iframe. + Fixed bug where scroll position was incorrect when toggling fullscreen mode. + Fixed bug where restoration of overflow didn't work correctly when disabling fullscreen mode in Opera. + Fixed bug where drop menus where places at incorrect locations if the editor was placed in a scrollable container element. + Fixed bug where hideMenu didn't hide sub menus correctly. It will now hide all menus recursively. + Fixed so theme_advanced_path_location can be used in init options for compatibility reasons. + Fixed so the drop menu colors matches the rest of o2k7 theme. + Fixed so the preview example.html file is updated to the new 3.x API. + Fixed so the margins are the same by default inside the editable area between IE and other browsers. + Fixed so editor contents gets stored before it the onSubmit event is fired. +Version 3.0rc1 (2008-01-08) + Added new classes for toolbar rows in advanced theme mceToolbarRow1..n enabled you to change appearance of individual rows. + Added auto detection for the strict_loading_mode option when running in application/xhtml+xml mode on Gecko. + Optimized the HTML serializer by bundling some post process methods together. + Fixed so that the toolbars have unique IDs, enables you to alter the toolbars using the ControlManager and the DOM. + Fixed bug where delta values for dialog sizes in language packs didn't work correctly due to missing string to number casting. + Fixed bug where paragraph generation logic didn't handle hr or table elements correctly if they where the only element. + Fixed bug where some elements got extra linebreaks added after or before it in HTML output. + Fixed bug where it was hard to modify existing style data on table rows and table cells. + Fixed bug where the dom.getRect method didn't handle non pixel values correctly. + Fixed bug where strikethrough and underline couldn't be toggled on existing span elements. + Fixed bug where the postprocessor searched for nsbp instead of nbsp entities. + Fixed bug where it was impossible to edit links that had child elements within them. + Fixed bug where it was possible to click on the parent item of a submenu. + Fixed bug where mouseover/mouseout images couldn't be removed in advimage dialog. + Fixed bug where drop menus didn't work when running in application/xhtml+xml mode. + Fixed bug where Opera added doctype to output in application/xhtml+xml mode. + Fixed bug where some DOM methods didn't work correctly in the application/xhtml+xml mode. + Fixed bug where the inlinepopups didn't work correctly in the application/xhtml+xml mode. + Fixed bug where the ColorSplitButton didn't display correctly in the application/xhtml+xml mode. + Fixed bug where the UI layout was incorrect on Gecko browsers when running in application/xhtml+xml mode. + Fixed bug where the word paste plugin produced exception while running in application/xhtml+xml mode. + Fixed bug where there wasn't any hidden input element generated for divs while running in application/xhtml+xml mode. + Fixed bug where indentation of script/style/pre elements where incorrect. + Fixed bug where script element contents was removed in IE. + Fixed bug where script element contents got entity encoded. + Fixed bug where you couldn't edit existing element styles using the styles plugin. + Fixed bug where styles wasn't updated properly sometimes due to an performance enhancement. + Fixed bug where font sizes couldn't be changed using the style plugin. + Fixed bug where an error was produced in Gecko browsers when switching back from fullscreen mode. + Fixed bug where Opera was producing br elements after elements like h3. + Fixed bug where TinyMCE couldn't be loaded on a page using - characters in it's URL. + Fixed bug where the editor container element was forced to have a specific name. + Fixed bug with force_br_newlines option on Firefox, even though it should never be used (Read FAQ). + Fixed bug where onclick event had an return true; prefix added when creating an popup. + Fixed bug where the theme_advanced_statusbar_location option couldn't handle the value "none". + Fixed issue with URLs with multiple at characters for example an Zope URI. + Fixed so simple and advanced themes doesn't collide. + Fixed so a elements gets removed when the href field is left empty, the href attribute is required in a link after all. + Fixed so img elements gets removed when the src field is left empty, the src attribute is required for all images after all. + Removed the indent and encode methods from the tinymce.dom.Serializer class due to performance enhancement and reduction of the API size. +Version 3.0b3 (2007-12-14) + Added new getElement method to Editor class, returns the element that was replaced with the editor instance. + Added new unavailable prefix for disabled controls for accessibility reasons. + Fixed bug where regexp patterns couldn't be used for the editor_selector/editor_deselector options. + Fixed bug where the DOM wasn't properly initialized before the onInit event was executed in popups. + Fixed bug where font sizes where reduced by font size actions on previous spans in Safari. + Fixed bug where HR elements got places at the wrong location in IE. + Fixed bug where align/justify didn't work correctly on multiple paragraphs. + Fixed bug with missing translation for cell scope settings. + Fixed bug where selection/caret position was lost on some table actions. + Fixed bug where editor instances couldn't be added to hidden div elements. + Fixed bug where list elements in Safari would get an odd ID attribute. + Fixed bug where IE would return when the editor was completely empty. + Fixed bug where accessibility title attribute for access keys wasn't setup properly. + Fixed bug where forecolorpicker and backcolorpicker control names wasn't working. + Fixed bug where inserting template content didn't work in Safari due to selection exception. + Fixed bug where absolute URLs to remote hosts couldn't be used for background images. + Fixed bug where mysterious span elements where produced in Safari when injecting HTML contents. + Fixed bug where the media plugin didn't work correctly on the latest Opera 9.24. + Fixed bug where indentation of HTML output wasn't applied to all block elements. + Fixed bug where Safari was production DOM exception if you pressed enter in an empty editor. + Fixed bug where media plugin didn't parse script tags correctly patch contributed by Mathieu Campagna. + Fixed bug where the drop menus of list boxes like blockformat could produce scrolling of the page. + Fixed bug where the drop menus where placed at an incorrect location if TinyMCE was placed in a scrollable div. + Fixed bug where submit buttons couldn't be named submit, it's not recommended to name submit buttons submit anyway. + Fixed bug where the stylelistbox produced an exception if there was only one class in the list box. + Fixed bug where the stylelistbox wasn't updated correctly when the current class was removed. + Fixed bug where the formatblock command sometimes removed the body element. + Fixed bug where fullscreen switching in IE sometimes produced an exception when the spellchecker plugin was enabled. + Fixed issue where FF produced an empty paragraph when the editor was completely empty. + Fixed issue with size of image dialog in the advanced theme. + Fixed issues with the bbcode plugin it now also handles spans and the [font] rule. + Fixed so the style compression feature is a bit smarter to resolve issues with Opera. + Reintroduced the remove_linebreaks option, this is enabled by default. +Version 3.0b2 (2007-11-29) + Added type and compact attributes to the default valid_elements list for the ul and ol elements. + Added missing accessibility support to native list boxes in both the toolbar and dialogs. + Added missing access key for the element path for accessibility reasons. + Fixed support for loading themes from external URLs. + Fixed bug where setOuterHTML didn't work correctly when multiple elements where passed to it. + Fixed bug with visualchars plugin was moving elements around in the DOM. + Fixed bug with DIV elements that got converted into editors on IE. + Fixed bug with paste plugin using the old event API. + Fixed bug where the spellchecker was removing the word when it was ignored. + Fixed bug where fullscreen wasn't working properly. + Fixed bug where the base href element and attribute was ignored. + Fixed bug where redo function didn't work in IE. + Fixed bug where content_css didn't work as previous 2.x branch. + Fixed bug where preview dialog was throwing errors if the content_css wasn't defined. + Fixed bug where the theme_advanced_path option didn't work like the 2.x branch. + Fixed bug where the theme_advanced_statusbar_location was called theme_advanced_status_location. + Fixed bug where the strict_loading_mode option didn't work if you created editors dynamically without using the EditorManager. + Fixed bug where some language values wasn't translated such as insert and update in dialogs. + Fixed bug where some image attributes wasn't stored correctly when inserting an image. + Fixed bug where fullscreen mode didn't restore scrollbars when disabled. + Fixed bug where there was no visual representation for tab focus in toolbars on IE. + Fixed bug where HR elements wasn't treated as block elements so forced_root_block would fail on these. + Fixed bug where autosave presented warning message even when the form was submitted normally. + Fixed typo of openBrower it's now openBrowser in form_utils.js. + Fixed various HTML problems like missing TD elements and duplicated doctypes. + Fixed default values for theme_advanced_resize_horizontal, theme_advanced_resizing_use_cookie to be 2.x compatible. + Moved spellchecker JS files into the development package. + Removed support for theme_advanced_path_location since the theme_advanced_statusbar_location is the correct option name. +Version 3.0b1 (2007-11-21) + Added new tab_focus option, that enables you to specify a element id or that the next element to be focused on tab key down. + Added new addQueryValueHandler method to the tinymce.Editor class. + Added new class_filter option, this enables you to specify a function that can filter out CSS classes for the styles list box. + Added support form [url=url]title[/url] to the bbcode plugin. + Renamed the addCommandQueryState method in the tinymce.Editor class to addQueryStateHandler. + Renamed loadQue to loadQueue, to correct spelling. + Removed the createDOM method from the window manager and replace it with a createInstance method. + Removed the add to beginning of class attribute parameter of the DOMUtils.addClass method. + Fixed bug with the forced_root_block option, didn't work correctly with multiple inline elements. + Fixed bug where image dialogs replaced the current image element with a new one even when it was updated. + Fixed bug where the submit trigger wasn't executed when divs where converted into editor instances. + Fixed bug where div elements that got converted into editors didn't get a hidden input element generated for them. + Fixed bug where the the media_use_script option for the media plugin wasn't working correctly. + Fixed bug where the font size and font family listboxes wasn't updated correctly on Safari. + Fixed bug where the height of the fieldset in default image dialog for the advanced theme was to small. + Fixed bug where the font sizes behaved incorrectly after a cleanup on Safari. + Fixed bug where formatblock didn't work correctly in Safari on some elements. + Fixed bug where template plugin didn't insert content correctly unless some options where specified. + Fixed bug where charmap on Safari produced scrollbars. + Fixed bug where there was white artifacts in some dialogs due to missing background color. + Fixed bug where port was added to all external URLs if the editor was loaded from a custom port. + Fixed bug where the context menus got duplicated on Safari 3.0.4 on Mac OS X. + Fixed bug where dialogs like paste from word was huge on Firefox. + Fixed bug with media plugin not working with windows media objects. + Fixed bug where a forever loop was created if multiple instances where submitted using form.submit. + Fixed bug with editing a table produce error in IE when inlinepopups where used. + Fixed bug where the style plugin generated ugly looking style information in IE. + Fixed bug where the inline dialogs that got opened while in fullscreen mode wasn't visible. + Fixed bug where it was difficult to place the caret inside the word paste dialog. + Fixed bug where Opera produced strange border in the word paste dialog. + Fixed bug where viewport constraints could move a inlinepopup to a negative x, y position if the viewport was to small. + Fixed bug where template plugin was producing an error due to a deprecated API call. + Fixed bug where drag drop of images failed in Gecko if a document_base_url was specified. + Fixed bug where Firefox 3 failed to apply block formats like H1-H6 it still breaks on DIVs this has been reported to bugzilla. + Fixed bug where IE was producing a warning dialog about non secure items when running TinyMCE over HTTPS. + Fixed bug where the onbeforeunload event was triggered when menus or dialogs where opened. + Fixed bug where the fullscreen mode of the HTML view source box threw an error. + Fixed bug where the mceFocus command didn't work correctly. + Fixed bug where the selection could get lost in IE using inlinepopups. + Fixed so the body of the editor area has the mceContentBody class just like the 2.x branch. + Fixed so the media icon gets active when a media element is selected. +Version 3.0a3 (2007-11-13) + Added new experimental jQuery and Prototype framework adapters to the development package. + Added new translation.html file for the development package. Helps with the internationalization of TinyMCE. + Added new setup callback option, use this callback to add events to TinyMCE. This method is recommended over the old callbacks. + Added new API documetation to all classes, functions, events, properties to the Wiki with examples etc. + Added new init method to all plugins and themes, since it's shorter to write and it mimics interface capable languages better. + Fixed various CSS issues in the default skin such as alignment of split buttons and separators. + Fixed issues with mod_security. It didn't like that a content type of text/javascript was forced in a XHR. + Fixed all events so that they now pass the sender object as it's first argument. + Fixed some DOM methods so they now can take an array as input. + Fixed so addButton and the methods of the ControlManager uses less arguments and it now uses a settings object instead. + Fixed various issues with the tinymce.util.URI class. + Fixed bug in IE and Safari and the on demand gzip loading feature. + Fixed bug with moving inline windows sometimes failed in IE6. + Fixed bug where save_callback function wasn't executed at all. + Fixed bug where inlinepopups produces scrollbars if windows where moved to the corners of the browser. + Fixed bug where view HTML source failed when inserting a embedded media object. + Fixed bug where the listbox menus didn't display correctly on IE6. + Fixed bug where undo level wasn't added when editor was blurred. + Fixed bug where spellchecker wasn't disabled when fullscreen mode was enabled. + Fixed bug where Firefox could crash some times when the user switched to fullscreen mode. + Fixed bug where tinymce.ui.DropMenu didn't remove all item data when an item was removed from the menu. + Fixed bug where anchor list in advlink dialog wasn't populated correctly in Safari. + Fixed bug where it wasn't possible to edit tables in IE when inlinepopups was enabled. + Fixed bug where it wasn't possible to change the table width of an existing table. + Fixed bug where xhtmlxtras like abbr didn't work correctly on IE. + Fixed bug where IE6 had some graphics rendering issues with the inlinepopups. + Fixed bug where inlinepopup windows where moved incorrectly when they were boundary checked for min width. + Fixed bug where textareas without id or name couldn't be converted into editor instances. + Fixed bug where TinyMCE was stealing element focus on IE. + Fixed bug where the getParam method didn't handle false values correctly. + Fixed bug where inlinepopups was clipped by other TinyMCE instances or relative elements in IE. + Fixed bug where the contextmenu was clipped by other TinyMCE instances or relative elements in IE. + Fixed bug where listbox menus was clipped by other TinyMCE instances or relative elements in IE. + Fixed bug where listboxes wasn't updated correctly when the a value wasn't found by select. + Fixed various CSS issues that produced odd rendering bugs in IE. + Fixed issues with tinymce.ui.DropMenu class, it required some optional settings to be specified. + Fixed so multiple blockquotes can be removed with a easier method than before. + Optimized some of the core API to boost performance. + Removed some functions from the core API that wasn't needed. +Version 3.0a2 (2007-11-02) + Fixed critical bug where IE generaded an error on a hasAttribute call in the serialization engine. + Fixed critical bug where some dialogs didn't open in the non dev package. + Fixed bug when using the theme_advanced_styles option. Error was thrown in some dialogs. + Fixed bug where the close buttons produced an error when native windows where used. + Fixed bug in default skin so that split buttons gets activated correctly. + Fixed so plugins can be loaded from external urls outsite the plugins directory. +Version 3.0a1 (2007-11-01) + Rewrote the core and most of the plugins and themes from scratch. + Added new and improved serialization engine, faster and more powerful. + Added new internal event system, things like editor.onClick.add(func). + Added new inlinepopups plugin, the dialogs are now skinnable and uses clearlooks2 as default. + Added new contextmenu plugin, context menus can now have submenus and plugins can add items on the fly. + Added new skin support for the simple and advanced themes you can alter the whole UI using CSS. + Added new o2k7 skin for the simple and advanced themes. + Added new custom list boxes for font size/format/style etc with preview support. + Added new UI management, enabled plugins to create controls like splitbuttons or menus easier. + Added new JSON parser/serializer and JSON-RPC class to the core API. + Added new cookie utility class to the core API. + Added new Unit testing class to the core API only available in dev mode. + Added new firebug lite integration when loading the dev version of TinyMCE. + Added new Safari plugin, fixes lots compatibility of issues with Safari 3.x. + Added new URI/URL parsing it now handles the hole RFC and even some exceptions. + Added new pagebreak plugin, enables you to insert pagebreak comments like + Added new on demand loading of plugins and themes. Enables you to load and init TinyMCE at any time. + Added new throbber/progress visualization a plugin can show/hide this when it's needed. + Added new blockquote button. Enables you to wrap paragraphs in blockquotes. + Added new compat2x plugin. Will provide a TinyMCE 2.x API for older plugins. + Added new theme_advanced_resizing_min_width, theme_advanced_resizing_min_height options. + Added new theme_advanced_resizing_max_height, theme_advanced_resizing_max_height options. + Added new use_native_selects option. Enables you to toggle native listboxes on and off. + Added new docs_url option enables you to specify where the TinyMCE user documentation is located. + Added new frame and rules options for the table dialog. + Added new global rule for valid_elements/extended_valid_elements enables you to specify global attributes for all elements. + Added new deny attribute rule characher so it's possible to deny global attribute rules on specific elements. + Added new unit tests in the dev package of TinyMCE. Runs tests on the core API, commands and settings of the editor. + Readded the inline_styles option and enabled it by default so deprecated attributes are no longer used. + Removed all button images and replaced them with CSS sprite images. Reduces the number of requests needed. + Removed lots of language files and merged them into the base language files. Reduces the number of requests needed. + Removed lots of unnecessary files and merged many of them together to reduce requests and improve loading speed. + Reduced the over all script size by 33% and the number of files/requests by 75% so it loads a lot faster. + Fixed so convert_fonts_to_spans are enabled by default. So no more font tags. + Fixed so underline and strikethrough uses spans instread of deprecated U and STRIKE elements. + Fixed so indent/outdent adds/removed margin-left instead of blockquotes. + Fixed so alignment of paragraphs results in a text-align style value instead of the deprecated align attribute. + Fixed so alignment of images uses float or vertical-align style values instead of the deprecated align attribute. + Fixed so all classes from @import stylesheets gets imported into the editor. + Fixed so the directionality can toggle the dir attribute on and off. + Fixed so the fullscreen_settings can be used for all types of fullscreen modes. + Fixed so the advanced HR dialog gets displayed when inserting a HR not only on edit. + Fixed bug where word wrap didn't work in the source editor on Safari. + Fixed so non HTML elements can be used within the editor such as + Fixed various memory leaks in IE and reduced the unload cleanups needed. + Fixed so the preformatted option adds an invisible container pre tag inside the editor. + Renamed the _template plugin to example and updated it to use the new 3.x API. diff --git a/assets/tinymce/changelog.txt b/assets/tinymce/changelog.txt new file mode 100644 index 0000000..017d4cc --- /dev/null +++ b/assets/tinymce/changelog.txt @@ -0,0 +1,993 @@ +Version 3.3 (2010-03-10) + Fixed bug where backspace on a table on IE would produce an empty tbody and some JS exceptions. + Fixed bug where some redundant children wasn't removed properly when applying inline styles to them. + Fixed bug where Chrome would produce incorect dialog sizes if the inlinepopups plugin wasn't used. + Fixed bug where spans with different classes would get merged if they where siblings to each other. + Fixed bug where IE 8 would crash if you used the spellchecker. + Fixed bug where Input Method for non western languages didn't work correctly. + Fixed bug where the UI would render incorrectly in FF 3.6 on Mac due to a bug n their rendering engine. + Fixed bug where WebKit wouldn't scroll down correctly if Shift+Enter was used. Patch contributed by Thomas Andersen. +Version 3.3rc1 (2010-02-23) + Fixed bug with new legacyoutput plugin not working correctly on it's own. + Fixed bug some performance issues with removing text formats. + Fixed bug where TinyMCE specific attributes wasn't removed properly by remove format. + Fixed bug where it wasn't possible to align images within inline elements. + Fixed bug where Ctrl+Delete/Backspace would produce an invalid argument exception on IE. + Fixed bug where the search/replace logic could produce an infinite loop on IE for reverse searches. + Fixed bug where cloning formats in cells didn't work properly on IE. + Fixed bug where IE6 would produce a horizontal scroll bar. + Fixed so remove jQuery method removes the TinyMCE instance as well as the specified textarea. + Fixed so selected rows and cells gets updated using the row/cell properties dialogs. +Version 3.3b2 (2010-02-04) + Fixed bug where sometimes img elements would be removed by split method in DOMUtils. + Fixed bug where merging of span elements could occur on bookmark nodes. + Fixed bug where classes wasn't properly removed when removeformat was used on IE 6. + Fixed bug where multiple calls to an tinyMCE.init with mode set to exact could produce the same unique ID. + Fixed bug with the IE selection implementation when it was feeded an document range. + Fixed bug where block elements formatting wasn't properly removed by removeformat on all browsers. + Fixed bug where selection location was lost if you performed a manual cleanup. + Fixed bug where removeformat wouldn't remove span elements within styled block elements. + Fixed bug where an error would be thrown if you clicked on the separator lines in menus. + Fixed bug with the jQuery plugin adding always adding a querystring value to other resources. + Fixed bug where IE would produce an error message if you had an empty editor instance. + Fixed bug where Shift+Enter didn't produce br elements on WebKit browsers. + Fixed bug where a temporary marker element wasn't removed by the paste plugin. + Fixed bug where inserting a table would produce two undo levels instead of one. +Version 3.3b1 (2010-01-25) + Added new text formatting engine. Fixes a lot of browser quirks and adds new possibilities. + Added new advlist plugin that enables you to set the formats of list elements. + Added new paste plugin logic that enables you to retain style information from Office. + Added new autosave plugin logic that automatically saves contents in local storage. + Added new valid_styles option. Adds the possibility to restrict styles and their order. + Added new theme_advanced_runtime_fontsize option to display the runtime font size in font size select box. + Added new jquery plugin version that handles the gzip compressor amongst other things. Contributed by Speednet. + Added new $ function to tinymce namespace and editor instances for the jQuery build. + Added the possibility to get editors by index as well as name in the tinyMCE.editors collection. + Fixed so the contents inside the editor renders in standards mode by default. + Fixed bug where it wasn't possible to move the caret on short documents running in standards mode on IE. + Fixed bug where the decode method of the DOMUtils class could end up in an endless loop. + Fixed bug where it was possible to bypass the paste cleanup on non IE browsers if you clicked while pasting. + Fixed bug where some attributes wasn't serialized correctly on IE if wildcard attribute patters where used. + Fixed bug where entity decoding was performed on strings that didn't have any valid entities in them. + Fixed bugs with the insertNode method of the IE DOMRange implementation. Patch contributed by Scott McNaught. + Rewrote the getBookmark/moveToBookmark selection logic to boost performance on larger documents. + Rewrote the table plugin to include new cell selection logic and fixed various bugs and issues. + Merged the tinyMCE, tinymce and tinymce.EditorManager into the same instance makes more sense. + Removed browser setting since the browser support for TinyMCE is not far better than it was when that setting was introduced. + Changed the mce_ attribute prefix to the more standard _mce_ prefix. This is similar to browser vendors prefixes. + Optimized performance with named entities on Gecko. Regexp replace was executing very slowly probably due to a Gecko bug. + Optimized performance of the IE specific selection/range implementation. + Removed the safari plugin since we now replaced all text formatting logic to custom code. +Version 3.2.7 (2009-09-22) + Fixed bug where uppercase paragraphs could still produce an invalid DOM tree on IE. + Fixed bug where split command didn't work on WebKit since the node serializer needs a real document to work with. + Fixed bug where it was impossible in Gecko to place the caret before a table if it was the first one. + Fixed bug where linking to urls like ../../ would produce an extra traling slash ../..//. + Fixed bug where the template cdate functionality was using an old 2.x API call. Patch contributed by vectorjohn. + Fixed bug where urls to the same site but different protocol would be converted when relative_urls where set to false. Patch contributed by Ted Rust. + Fixed bug where the paste plugin would remove mceItem prefixed classes. + Fixed bug where the paste plugin would sometimes add items in a reverse order on WebKit. + Fixed bug where the paste buttons would present an error message on Gecko even if you changed user.js. Patch contributed by Todd (teeaykay). + Fixed bug where Opera would crash if you had tables incorrectly placed inside paragraphs. + Fixed bug where styles elements wasn't properly processed if you had bad input HTML. + Fixed bug where style attributes wasn't properly forced into a specific format. + Fixed bug and issues with boolean attributes like checked, nowrap etc. + Fixed bug where input elements could override attributes on form elements. + Fixed bug where script or style elements could get modified by the DOMUtils processHTML method. + Fixed bug where the selected attribute could get lost when force root blocks logic got executed on IE. Patch contributed by Attila Mezei-Horvati. + Fixed bug where getAttribs method didn't handle boolean attributes correctly on IE. + Fixed so the paste from word dialog is presented if you paste content on an IE with to restrictive security settings. + Fixed so the paste_strip_class_attributes option is set to none by default in the paste plugin. + Removed default border=0 on tables for the default value of valid_elements. +Version 3.2.6 (2009-08-19) + Added new wordcount plugin, this will display the number of typed words as you write. Contributed by Andrew Ozz. + Added new getNext and getPrev methods to DOM utils. These will return the first matching sibling. + Fixed bug where it was impossible to place the caret after a table on Gecko. It will now add a paragraph after tables. + Fixed bug where inline dialogs would fail if used in a window opened using a showModalDialog. Patch contributed by Derek Britt. + Fixed bug where IE could sometimes render a unknown runtime error on invalid input HTML. + Fixed bug where some incorrectly placed tables wouldn't be moved outside the paragraphs on IE. + Fixed bug where uppercase script/style element wouldn't be handled correctly and converted to valid lowercase. + Fixed bug where some WebKit versions on Mac OS X would produce issues with hidden select fields. + Fixed bug where the media plugin would fail on WebKit since the node wasn't properly imported to the right document. + Fixed bug where absolute URLs for the TinyMCE script using a base href element would cause loading problems in IE 6/7. + Fixed bug where pasting using the paste plugin wasn't possible on IE with to restrictive security settings. + Fixed bug where pasting of whitespace was impossible using the new custom paste method. + Fixed bug where pasting on some WebKit browsers would not work if you pasted specific contents due to a WebKit bug. + Fixed bug where doctypes with multiple lines would not be parsed correctly by the fullpage plugin. Patch contributed by Colin. + Fixed bug where the autoresize plugin would break the fullscreen functionality. + Fixed bug where tables would be chopped up running on IE using invalid contents and pasting paragraphs into a cell. + Fixed bug where the each method of jQuery build didn't iterate styleSheets. We now use the TinyMCE API one instead. + Fixed bug where auto switching to paragraphs after headers some times failed in Gecko. + Fixed so all editor options gets passed to the Serializer class. Patch contributed by Jasper Mattsson. + Fixed so script/style blocks isn't wrapped in paragraphs as other inline elements. + Fixed so the XHR requests sends the X-Requested-With HTTP header. + Fixed so the data url scheme is handled in the tinymce.util.URI class. + Changed inline documentation to use moxiedoc style comments. + Removed the compat2x plugin people should have upgraded to the 3.x API by now. 3.0 was released more then a year ago. + Re-added Gecko specific message for users who doesn't understand the security concept regarding paste. +Version 3.2.5 (2009-06-29) + Added new jQuery plugin for the jQuery specific package. This enables you to more easily load and use TinyMCE. + Added new autoresize plugin contributed by Peter Dekkers. This plugin will auto resize the editor to the size of the contents. + Fixed so all packages have the same directory structure. Previous releases had a different structure for the production package. + Fixed so the paste from word dialog forces the contents to be processed as word contents even if it's not. + Fixed so the jQuery build adapter build works. It's currently only excluding Sizzle. + Fixed so noscript element contents is retained during the editing process. + Fixed bug where the getBookmark method would need a "simple" string input when the documented way is a boolean. + Fixed bug where invalid contents could break the fix_table_elements logic. + Fixed bug where Sizzle specific attributes would be serialized if the valid_elements was set to *[*]. + Fixed bug where IE would produce an error if you specified a relative content_css and opened the paste dialog. + Fixed bug where pasting images on IE would produce broken images if they came from an external site. + Fixed bug where memory was leaked if you add/remove controls dynamically. Some event handlers wasn't removed properly. + Fixed bug where domain relaxing wasn't treated correctly if you added it after the TinyMCE script element. + Fixed bug where the activeEditor wasn't set to null if the last editor instance was removed. + Fixed bug where IE was leaking memory on the onbeforeunload event due to some recently introduced logic. Patch contributed by Options. + Fixed bug where inserting tables in Safari 4 didn't work due to a new WebKit bug where some element names are reserved. + Fixed bug where URLs having a :// value in the query string would make it absolute regardless of URL settings. + Fixed the WebKit specific bug where DOM Ranges would fail if the node wasn't attached to something in a different way. + Removed the auto_resize option and the resizeToContent method from the tinymce.Editor class. Use the new autoresize plugin instead. +Version 3.2.4.1 (2009-05-25) + Fixed bug where Gecko browsers would produce an extra space after for example strong when loaded from sub domains. + Fixed bug where script elements would be removed if they where placed inside a paragraph element. + Fixed bug where IE 8 would produce 1 item remaining when loading CSS files dynamically with an empty cache. + Fixed bug where bound events would be removed from other editor instances if a specific one was removed. + Fixed various bugs and issues with script and style elements inside the editor. + Fixed so all script contents gets wrapped in CDATA sections so that they can be parsed using a XML parser. + Fixed so it's impossible for elements marked as closed to have child nodes rendered in output. +Version 3.2.4 (2009-05-21) + Added new paste_remove_styles/paste_remove_styles_if_webkit option to paste plugin concept contributed by Hadrien Gardeur. + Added new functionality to paste plugin contributed by Scott Eade aka monkeybrain. + Added new paste_block_drop option to the paste plugin this is disabled by default and will block any drag/drop event. + Added new bind/unbind methods to DOMUtils these works like Event.add/Event.remove but is easier to access. + Added new paste_dialog_width/paste_dialog_height options to paste pluign. Enables you to change the dialog sizes. + Fixed bug on IE 8 where it would sometimes produce a "1 item remaining" status message that would never finish. + Fixed bug on Safari 4 beta that would produce DOM Range exceptions on the DOMUtils split method since the browser has a bug. + Fixed bug where the paste plugin could accidentally think that some word sentences was supposed to be list elements. + Fixed bug where paste plugin would produce one extra empty undo level on some browsers. + Fixed bug where spans wasn't produced correctly on new line when the keep_styles option was enabled. + Fixed bug where the caret would be placed at the beginning of contents in IE 8 if you selected colors from the color pickers. + Fixed so the Event class is a normal class instead of a static one. The tinymce.dom.Event is now a global instance of that class. + Fixed so internal events for instances gets removed when the DOMUtils instance is removed. + Fixed so preventDefault and stopPropagation methods can be used on the event object in all browsers. +Version 3.2.3.1 (2009-05-05) + Fixed bug where paragraphs containing form elements such as input or textarea would be removed. + Fixed bug where some IE versions would produce a wrapper function for events attributes. + Fixed bug where table cell contents could be removed if you pressed return/enter at the end of the cell contents. + Fixed bug where the paste plugin would remove a extra character if the selection range was collapsed. + Fixed bug where creating tables with % width wouldn't be handled correctly on WebKit browsers. +Version 3.2.3 (2009-04-23) + Added new paste plugin logic. This new version will autodetect Word contents and clean it up. + Added a optional root element argument to getPos so you can tell it where to stop the calculation. + Added new DOM ready logic to remove the usage of document.write. We now use basically the same method as jQuery. + Fixed bug where WebKit browsers would fail when selecting all contents in the area using Ctrl+A. + Fixed bug where IE would produce paragraphs with empty inline style elements. + Fixed bug where WebKit browsers would fail when inserting tables with a non pixel width. + Fixed bug where block elements could get a redundant br element at the end of the element. + Fixed bug where the tabfocus plugin only worked with a single editor instance on page. + Fixed bug where IE 8 was loosing caret position if the selection was collapsed and a menu was clicked. + Fixed bug with application/xhtml+xml mode where menus wasn't working properly. + Fixed bug where the onstop workaround fix for IE would produce errors in an ASP update panel. + Fixed bug where the submit function override could produce errors if executed in the wrong scope. + Fixed bug where the area element wasn't closed by a short ending. + Fixed various number issues in the style plugins properties dialog. Contributed by datpaulchen. + Fixed issues with size suffix values in the style plugin dialog. + Fixed issue where hasDuplicate variable would leak out to the global space due to a bug in the Sizzle engine. + Fixed issue where the paste event would fire a dialog warning on IE since we extracted the text contents. + Updated Sizzle engine to the latest version, this version fixes a few bugs that was reported. +Version 3.2.2.3 (2009-03-26) + Fixed regression bug with the getPos method, it would return invalid if the view port was to small. +Version 3.2.2.2 (2009-03-25) + Fixed so the DOMUtils getPos method can be used cross documents if needed. + Fixed bug where undo/redo wasn't working correctly in Gecko browsers. +Version 3.2.2.1 (2009-03-19) + Added support for tel: URL prefixes. Even though this doesn't match any official RFC. + Fixed so the select method of the Selection class selects the first best suitable contents. + Fixed bug where the regexps for www. prefixes for link and advlink dialogs would match wwwX. + Fixed bug where the preview dialog would fail to open if the content_css wasn't defined. Patch contributed by David Bildstrm (ChronoZ). + Fixed bug where editors wasn't converted in application/xhtml+xml mode due to an issue with Sizzle. + Fixed bug where alignment would fail if multiple lines where selected. + Updated Sizzle engine to the latest version, this version fixes a few bugs that was reported. +Version 3.2.2 (2009-03-05) + Added new CSS selector engine. Sizzle the same one that jQuery and other libraries are using. + Added new is and getParents methods to the DOMUtils class. These use the new Sizzle engine to select elements. + Added new removeformat_selector option, enables you to specify a CSS selector pattern of elements to remove when using removeformat. + Fixed so the getParent method can take CSS expressions when selecting it's parents. + Added new ant based build process, includes a new javabased preprocessor and a yuicompressor ant task. + Moved the tab_focus logic into a plugin called tabfocus, so the old tab_focus option has been removed from the core. + Replaced the TinyMCE custom unit testing framework with Qunit and rewrote all tests to match the new logic. + Moved the examples/testcases to a root directory called tests since it now includes slickspeed. + Fixed bug where nbsp wasn't replaced correctly in ForceBlocks.js. Patch contributed by thorn. + Fixed bug where an dom exception would be thrown in Gecko when the theme_advanced_path path was set to false under xml application mode. + Fixed bug where it was impossible to get out of a link at the end of a block element in Gecko. + Fixed bug where the latest WebKit nightly would fail when changing font size and font family. + Fixed bug where the latest WebKit nightly would fail when opening dialogs due to changes to the arguments object. + Fixed bug where paragraphs wasn't added to elements positioned absolute using classes. + Fixed bug where font size values with dot's like 1.4em would produce a class instead of the style value. + Fixed bug where IE 8 would return an incorrect position for elements. + Fixed bug where IE 8 would render colorpicker/filepicker icons incorrectly. + Fixed bug where trailing slashes for directories in URLs would be removed. + Fixed bug where autostart and other boolean values in the media dialog wouldn't be stored/parsed correctly. + Fixed bug where the repaint call for the media plugin wouldn't be executed due to a typo in the source. + Fixed bug where id attribute of object elements wasn't kept intact by the media plugin. + Fixed bug where preview of embeded elements when the media_use_script option was used would fail. + Fixed bug where inlinepopups could be rendered at an incorrect location on IE 6 while dragging. + Fixed bug where the blocker shim could be placed at an incorrect location on IE 6. + Fixed bug where the multiple and size attributes of select elements would produce incorrect values while running in IE. + Fixed bug where IE would loose the caret position is you selected a color from the color drop down. + Fixed bug where remove format wouldn't work on IE since it couldn't remove span elements that had style information. + Fixed bug where Opera was removing links when removing formatting from selected contents. + Fixed bug where paragraphs could be produced inside non positional elements styled with the CSS position value of static. + Fixed bug where removeformat wouldn't work if you selected part of a span in IE. + Fixed bug where media plugin didn't retain the style attribute on embed/object elements. + Fixed bug where auto focus on empty editor instances could produce strange results if you inserted an image into it. + Fixed bug where   characters would be removed in FF when inserted with the mceInsertContent or selection.setContent methods. + Fixed bug where warning message of missing paste support wasn't displayed on WebKit browsers. + Fixed bug where anchor links could include other links. The selected range is now unlinked before adding news links to it. + Fixed memory leak when TinyMCE was used with prototype. Patch contributed by James Ots. + Fixed so the non documented fullpage_hide_in_source_view option for the fullpage plugin works again in the 3.x branch. + Fixed so tables doesn't get inserted into paragraphs by default since it's not W3C valid. Can be disabled by using the fix_table_elements option. + Fixed so the source view dialog sets a source_view state to the event object. Enables plugins to intercept the source view mode. + Fixed various validation issues with the html dialogs and pages. + Removed ask mode option since there is way better ways of doing this now. Use the add/remove control methods instead. + Removed logic for compatibility with Safari 2.x, this browser is no longer supported since no one is using it. + Removed the auto domain relaxing feature. If loading scripts cross sub domains it's better to specify the document.domain by hand. +Version 3.2.1.1 (2008-11-27) + Added new theme_advanced_default_background_color/theme_advanced_default_foreground_color options. Patch contributed by David Bildstrm (ChronoZ). + Fixed font style formatting compatibility issue with Adobe Air. + Fixed so legacy font elements get converted into spans even if cleanup_on_startup isn't enabled. + Fixed bug where pre elements could be incorrectly modified by an IE bug workaround. Patch contributed by hu vime. + Fixed bug where input elements inside inlinepopups wasn't editable in Firefox 2. + Fixed bug where the xhtmlxtras plugin wasn't replacing attribute values correctly. + Fixed bug where menu buttons in skin variants would look strange due to IE 8 fixes. + Fixed bug where WebKit browsers would on backspace take you back to the previous page if the editor was empty. + Fixed bug where DOMUtils decode method wouldn't handle strings larger than 4096kb due to node chunking. + Fixed bug where meta key wasn't handled as ctrl key on Mac OS X for custom keyboard short cuts. + Fixed bug where init event would get fired twice on WebKit on Mac OS X. +Version 3.2.1 (2008-11-04) + Added support for custom icon image for drop menus. Use icon_src to set a custom image directly. + Added new media_strict option to media plugin. Enables you to control if the flash embed is strict or not. Enabled by default. + Fixed so the editors script files gets dynamically loaded without using XHR or eval. + Fixed so the media plugin outputs valid XHTML object elements for Flash movies. Can be disabled with the media_strict option. + Fixed so dynamic loading doesn't require eval calls on non IE browsers for better Air support. + Fixed bug where the editor wasn't treated as empty if the remaining paragraph had attributes. + Fixed bug where id's of elements was removed ones they got wrapped in paragraphs. Patch contributed by ChronoZ. + Fixed bug where WebKit browsers where placing list elements inside paragraph elements. + Fixed bug where inserting images or links would produce absolute urls on WebKit browsers. + Fixed bug where values for checked, readonly, disabled and selected attributes was incorrect on IE. + Fixed bug where positive values for checked, readonly, disabled and selected attributes wasn't forced to valid values. + Fixed bug where selecting the first option in a native select box would produce an undefined error. + Fixed bug where tabindex 32768 could be outputted on IE if element attributes where cloned. + Fixed bug where the media dialogs preview window would display incorrect contents due to duplicate clsid prefixes. + Fixed bug where non pixel or percent heights for textarea elements would produce errors on IE. + Fixed bug where cdata sections in script elements wasn't handled correctly. + Fixed bug where nowrap of table cells would produce a 65535 value output. + Fixed bug where media plugin would produce an error if you selected the first item in the items list. + Fixed bug where media plugin would modify links with the item _value in them. + Fixed so table width/height is better forced if inline_styles is enabled. Patch contributed by daKmoR. + Fixed css for IE 8 such as opacity and other rendering quirks. +Version 3.2.0.2 (2008-10-02) + Fixed bug where the SelectBox and NativeSelectBox wasn't updated correctly if undefined was passed to them. + Fixed bug where the style dropdown wasn't correctly changed back to it's original state when element had no class. + Fixed bug where multiple pending font styles wasn't handled correctly. + Fixed so you can disable all auto css loading for dialogs by setting the popups_css option to false. +Version 3.2.0.1 (2008-09-17) + Fixed bug where font sizes and faces wouldn't be changed correctly when there was a parent with a different style. + Fixed bug where adding fonts to the same selection would produce redundant spans. +Version 3.2 (2008-09-11) + Added new text style support, it will now use span elements internally instead of font elements. + Added new improved support for the theme_advanced_font_sizes option, check the Wiki for details. + Added new keep_style setting that maintains the text style on return/enter on non IE browsers, enabled by default. + Added new onBeforeSetContent/onBeforeGetContent/onSetContent/onGetContent events to the Selection class. + Added new selectByIndex method to ListBox class. This enables you to select list items by an index instead of a value. + Added new possibility to the select method of the ListBox class. This can now have a selector function as it's value argument. + Added new possibility to skip the loading of popups css by setting the feature popup_css to the value false. + Added new possibility to skip translation of popups by setting the translate_i18n feature to false. + Added new element_format option enables you to produce HTML element endings instead of XHTML. But we are still in the XHTML is better camp. + Added missing allowfullscreen and quality options for flash elements, this will now get correctly stored. + Fixed bug where table cell dialog didn't close properly unless the accessibility_warnings option was set to false. + Fixed bug where the modal dialog blocker element for inlinepopups wasn't placed at a correct location if the page had scroll. + Fixed bug where non inline dialogs didn't close correctly if the inlinepopups plugin was used. + Fixed bug where non inline dialogs could make the modal dialog blocker to work incorrectly. + Fixed bug where style select wasn't populated correctly if you pressed the arrow. Patch by Hari Karam Singh. + Fixed bug where toggling the fullscreen mode didn't restore scrollbars on IE when the editor was inside a frame. Patch by Jacob Barrett. + Fixed bug where inserting flash contents using the template plugin didn't work correctly. + Fixed bug where inserting flash contents using the selection.setContent or mceInsertContent command didn't work correctly. + Fixed bug where IE would produce an exception if a comment started with -. + Fixed bug where the blockquote button would wrap lists incorrectly on non IE browsers. + Fixed bug where Opera would display BR elements in the element path. + Fixed bug where xhtmlxtras didn't insert elements correctly on IE. + Fixed bug where the buttons wasn't activated correctly in the xhtmlxtras plugin. + Fixed bug where adding an object as the style attribute for the dom setAttribs method wouldn't work. + Fixed bug where the background color would bleed out to parent container element in Gecko. + Fixed bug where the insert column actions for tables would fail if you did it in a thead or tfoot. Patch contributed by T Andersen (tan73). + Fixed bug where event blocker element wasn't positioned correctly for the inlinepopups plugin. + Fixed bug where pasting from Office 2007 would produce an odd comment in the contents. + Fixed bug where the paste as plain text could remove an extra character. Patch contributed by Speednet. + Fixed bug where some characters where missing for the paste_replace_list option. Patch contributed by Speednet. + Fixed bug where removing non existing editor instances by the mceRemoveControl command would produce an error. + Fixed bug where meta elements with the name description would produce errors in IE. + Fixed bug where color and background colors wouldn't be updated properly. + Fixed bug where the createMenuButton of tinymce.ControlManager didn't implement the last class argument. + Fixed bug where the editor_css option was relative from the TinyMCE installation directory not the current page. + Fixed bug where elements wouldn't be padded if the element contained bogus br elements. For example TD elements. + Fixed bug where parsing of in fullpage plugin would produce an error. + Fixed bug where relative urls with just ./ would become an empty string. + Fixed bug where outdent button would be disabled if inline_styles where set to false. + Fixed bug where replace with an empty search string would produce an error on IE. + Fixed bug where restoring the overflow state of the body in fullscreen plugin running on IE would produce vertical scrollbars. + Fixed bug where pressing return/enter in list items would sometimes move the caret the to top of the content area in FF. + Fixed bug where the style listbox wouldn't be updated correctly if you used the use_native_selects option. + Fixed bug where WebKit browsers would produce a div element when ending list elements using return. + Fixed so translation of popup contents only occurs if it's needed. + Optimized the URI object in regards or converting absolute URIs to relative URIs. +Version 3.1.1 (2008-08-18) + Added new getSize method to DOMUtils it will return the dimensions only of an element. + Added new alert/confirm methods to the tinyMCEPopup class to prevent focus problems and also to shorten method calls. + Added new plugin_preview_inline option to preview plugin to enable/disable native/inline dialogs. + Added new readonly option. If this is set the editor will only display the contents for the user. + Added missing tabindex and accesskey to input elements in the default valid_elements setup. + Updated firebug lite to 1.2, to enable it use the tiny_mce_dev.js?debug=1 on the development package. + Fixed so the preview dialog in the preview plugin uses inline dialogs/popups. + Fixed so CDATA sections remains intact through the serialization process of the DOM tree. + Fixed various issues with the getAttrib command. It will now return more correct values. + Fixed bug where the embed element wasn't properly parsed in the media plugin it now supports 3 formats. + Fixed bug where the noshade attribute was serialized incorrectly on IE. + Fixed bug where editing an existing link element didn't force it relative. + Fixed bug where image link creation fails on Safari if the image is aligned. + Fixed bug where it was possible to scroll the fullscreen mode in Opera 9.50. + Fixed bug where removal of center image alignment would fail. Patch contributed by Andrew Ozz. + Fixed bug where inlinedialogs didn't work properly if the doctype was incorrect in IE. + Fixed bug where cross domain loading didn't work correctly in Opera 9.50. + Fixed bug where breaking huge text blocks with return/enter key would scroll to end of block. + Fixed bug where replace button kept inserting the replacement text even if there is no more matches. + Fixed bug with fullpage plugin where value wasn't set correctly. Patch contributed by Pascal Chantelois. + Fixed bug where the dom utils setAttrib method call could produce an exception if the input was null/false. + Fixed bug where pressing backspace would sometimes remove one extra character in Gecko browsers. + Fixed bug where the native confirm/alert boxes would move focus to parent document if fired in dialogs. + Fixed bug where Opera 9.50 was telling you that the selection is collapsed even when it isn't. + Fixed bug where mceInsertContent would break up existing elements in Opera and Gecko. + Fixed bug where TinyMCE fails to detect some keyboard combos on Mac, contributed by MattyRob. + Fixed bug where replace all didn't move the caret to beginning of text before searching. + Fixed bug where the oninit callback wasn't executed correctly when the strict_loading_mode option was used, thanks goes to Nicholas Oxhoej. + Fixed bug where a access denied exception was thrown if some other script specified document.domain before loading TinyMCE. + Fixed so setting language to empty string will skip language loading if translations are made by some backend. + Fixed so dialog_type is automatically modal if you use the inlinepopups plugin use dialog_type : "window" to re-enable the old behavior. +Version 3.1.0.1 (2008-06-18) + Fixed bug where the Opera line break fix didn't work correctly on Mac OS X and Unix. + Fixed bug where IE was producing the default value the maxlength attribute of input elements. +Version 3.1.0 (2008-06-17) + Fixed bug where the paste as text didn't work correctly it encoded produced paragraphs and br elements. + Fixed bug where embed element in XHTML style didn't work correctly in the media plugin. + Fixed bug where style elements was forced empty in IE. The will now be wrapped in a comment just like script elements. + Fixed bug where some script elements wrapped in CDATA could fail to be serialized correctly. + Fixed bug where FF 3 produced -moz- internal styles in some style attributes. + Fixed bug where query strings and external URLs didn't work correctly in style attributes. + Fixed bug where shape attribute of area elements got serialized as rect regardless of it's initial value in IE 6. + Fixed bug where selection of elements inside layers would fail in IE since focus was moved to the document body. + Fixed bug where pressing enter/return in an editable select box would produce an __mce_add_custom__ class value. + Fixed bug where changing font size of text placed inside a colored text chunk would remove the parent node. + Fixed bug where Opera 9.5 final produced a strange line break behavior due to a workaround for previous Opera versions. + Fixed bug where text/background color would produce a strange focus problem when you tried to click on the body in IE. + Fixed issue where selecting the title of an listbox equals the old 2.x behavior of changing the value to an empty string. + Fixed issue where it was common for the media plugin to break if the _value attribute wasn't added for the param element. + Fixed issue where the wrong parent editor instance might be updated if you use fullscreen mode in an incorrect way. + Fixed issue where Safari was producing a warning about the base element not being closed correctly. + Removed redundant form element name matching from regexp in the DOMUtils class. +Version 3.0.9 (2008-06-02) + Added new contextmenu_offset_x/contextmenu_offset_y options for the contextmenu plugin. + Added cite attribute to the default rule for the blockquote element. + Added support for using arrow keys for selection of items in listboxes. + Added support for using arrow keys for selection of items in dropmenus. + Fixed bug where blockformat change on elements with BR inside them didn't change correctly on Firefox. + Fixed bug where removing table rows inside thead or tfoot would remove the whole table if it was the last one. + Fixed bug where XHR synchronous mode didn't execute the callback handlers synchronously. + Fixed bug where setting border to 0 didn't add border: 0 to the style attribute when using the advimage dialog. + Fixed bug where the selection of images and table cells didn't work correctly when the editor is placed in a frame and running on IE. + Fixed bug where the store/restore of a selection didn't work correctly in non IE browsers. + Fixed bug where only the first element would be invalid for the invalid_elements option. + Fixed bug where paste as plain text didn't encode the characters correctly when they where inserted. + Fixed bug where HTML source window couldn't be maximized on Gecko when the maximizable feature was enabled. + Fixed bug where color selection using the color picker could produce exception in IE. + Fixed bug where font size changes could produce produce extra redundant elements. + Fixed bug where IE could produce unknown runtime error if you replaced a image with another image from a separate frame. + Fixed bug where the domLoaded state for the Event class wasn't set correctly if the editor was loaded dynamically using the gzip compressor. + Fixed bug where handling of the base element for a page would produce incorrect urls. Based on a patch contributed by John LeSueur. + Fixed bug where table constraint alert boxes was presented with an empty value and wasn't the skinned inline ones. + Fixed bug where the onChange event wasn't fired when the form was submitted. It's now also triggered when the save method is called. + Fixed bug where encoding set to xml didn't work as expected. It now encodes the contents into XML entities. + Fixed bug where numrows didn't work correctly for the merge cells dialog of the table plugin. + Fixed bug where the onGetContent event was fired even when the no_events flag was set. + Fixed bug where the preview panels for the advimage and the media plugin could overflow on Safari and FF 3. + Fixed bug where the editing and removal of abbr elements using the xhtmlxtras plugin working correctly on IE. + Fixed bug where save button in the save plugin didn't work correctly on IE. + Fixed bug where dragging layers didn't work as expected since it would snap back to it's original location if you saved. + Fixed bug where the description of the template plugin dialog wasn't updated correctly. + Fixed bug where the values for frame and rules in the table dialogs where swapped. + Fixed bug where the elements like ins, del, cite, acronym and abbr didn't have the default editing style as the old 2.x branch. + Fixed bug where ask mode would lock the focused textarea if you pressed cancel in the confirm dialog on FF 3. + Fixed bug where ask mode would produce contents for empty textareas if you reloaded the page. + Fixed so the onGetContent event gets the full pass through object just like the other events. + Fixed so attributes for block elements remains the same when you change format of a element. +Version 3.0.8 (2008-04-30) + Fixed bug where IE would produce an error if textareas without names where converted. + Fixed bug where editor wasn't forced empty when there was only a single br or empty paragraph left. + Fixed bug where IE would produce an warning message if object elements where produced in the media plugins preview running on https. + Fixed bug where new addVer function didn't handle hash items correctly. Patch contributed by Mirek Burkon. + Fixed bug where font_size_style_values option wasn't applied correctly to fonts inside the editor. + Fixed bug where image selection could be lost if a image was edited using context menu on IE. + Fixed bug where style values wasn't updated properly due to an invalid regexp. + Fixed bug where IE 6 where displaying warning message about insecure items when inserting an image while using https. Patch contributed by Norifumi Sunaoka. + Fixed bug where IE was producing an auto save message if you selected a color from the color split button. + Fixed bug where backspace sometimes would move the caret to the end of the previous block in Gecko. + Fixed bug where the rowlayout manager didn't work as described in the documentation. + Fixed bug where the default options for the fullpage plugin wasn't applied correctly. + Fixed bug where selection would jump one character if you applied a styles to a words in non IE browsers. + Fixed bug where undo levels wasn't added correctly if you went back in undo history and added a new event. + Fixed bug where font size dropdown didn't mark the selected size in IE. + Fixed bug where the size of the editor was determined using clientWidth instead of offsetWidth. + Fixed so the onchange event doesn't fire on the initial undo level, it will also fire when the editor is blurred. + Fixed so the advhr plugin produces XHTML valid output instead of non standard attributes. + Fixed so blockquote gets converted into [quote] in when the bbcode plugin is enabled. + Fixed so theme_advanced_font_sizes can be named for example Font 1=1, Font 2=2 etc. + Fixed so editor_selector/editor_deselector can be regexps. By default only strings are allowed not part regexps like before. + Fixed so that the version suffix is optional. It still requires the build process so you need to export it manually. + Fixed so it's possible to tab to table cells in non Gecko browsers and also produce new rows if you tab at the end of a table. Contributed by Josh Peek. +Version 3.0.7 (2008-04-14) + Added new version suffix to all internal GET requests to make sure that the users cache gets cleared correctly. + Fixed issue with isDirty returning true event if it wasn't dirty on IE due to changes in tables during initialization. + Fixed memory leak in IE where if a page was unloaded before all images on the page was loaded it would leak. + Fixed bug in IE where underline and strikethrough could produce an exception error message. + Fixed bug where inserting paragraphs in totally empty table cells would produce odd effects. + Fixed bug where layer style data wasn't updated correctly due to some performance enhancements with the DOM serializer. + Fixed bug where it would convert the wrong element if there was two elements with the same name and id on the page. + Fixed bug where it was possible to add style information to the body element using the style plugin. + Fixed bug where Gecko would add an extra undo level some times due to the blur event. + Fixed bug where the underline icon would get active if the caret was inside a link element. + Fixed bug where merging th cells not working correctly. Patch contributed by Andr R. + Fixed bug where forecolorpicker and backcolorpicker buttons where rendered incorrectly when the o2k7 skin was used. + Fixed bug where comment couldn't contain -- since it's invalid markup. It will now at least not break on those invalid comments. + Fixed bug where apos wasn't handled correctly in IE. It will now convert apos to ' on IE since that browser doesn't support that entity. + Fixed bug where entities wasn't encoded correctly inside pre elements since they where protected from whitespace removal. + Fixed bug where color split buttons where rendered incorrectly on IE6 when using the non default theme. + Fixed so caret is placed after links ones they are created, to improve usability of the editor. + Fixed so you can select tables by clicking on it's borders in non IE browsers to normalize the behavior. + Fixed so the menus can be toggled by clicking once more on the icon in listboxes, menubuttons and splitbuttons based on code contributed by Josh Peek. + Fixed so buttons can be labeled, currently only works with the default skin, so it's kind of experimental. Patch contributed by Daniel Insley. + Fixed so forecolorpicker and backcolorpicker remembers the last selected color. Patch contributed by Shane Tomlinson. + Fixed so that you can only execute the mceAddEditor command once for the same instance name. + Fixed so command functions added with addCommand can pass though the call to default handles if it returns true. +Version 3.0.6.2 (2008-04-07) + Fixed bug where empty tables couldn't be edited correctly on non IE browsers if they where loaded into the editor. + Fixed bug where it was impossible to resize layers correctly in IE since it thought it was an image. + Fixed bug where an editor instance was stealing focus in IE resulting in a scroll to the editor on page reloads. + Fixed bug where Safari was crashing on Mac OS X if you closed dialogs using the Esc key. +Version 3.0.6.1 (2008-04-04) + Added support for the missing mceAddFrameControl command. The input for this command has changed so consult the Wiki. + Fixed bug where sub menus for the drop menus would leave an empty element behind. + Fixed memory leak in IE if the editor was placed in a frame or iframe. +Version 3.0.6 (2008-04-03) + Added elements to the default value of valid_elements option. It now contains all XHTML strict elements and a few transitional. + Added more accessibility fixes, it's now possible to navigate and close list boxes and split button menus with the keyboard. + Added missing getInfo method to the contextmenu and safari plugin, this caused problems for the Drupal module. + Added new inlinepopups_zindex option to the inlinepopups plugin so that you can configure the default start z-index. + Added new setControlType method to the tinymce.ControlManager class. This method enables you to override the default classes. + Added ability to specific an optional control class to use instead of the default one for the ControlManager methods. Based on concept by Josh Peek. + Fixed bug where attribute rules for the DOM Serializer couldn't contain - or _ characters in their names. + Fixed bug where inlinepopups event blocker and modal dialog blocker elements produced vertical scrollbars. + Fixed bug where there was a rendering issue with quirks mode in Safari moving the resize handle to an incorrect position. + Fixed bug with forecolor/backcolor controls on IE. Sometimes elements positioned relative will generate display errors. + Fixed bug where a p2 was leaking out in the global name space when you selected a color from the forecolor/backcolor controls. + Fixed bug where empty paragraphs didn't work as expected in browsers other than IE. + Fixed bug where the load method of the tinymce.dom.ScriptLoader didn't check if the file was already loaded. + Fixed bug where the load method for the PluginManager and ThemeManager didn't check if a plugin/theme by a specific name was all ready loaded. + Fixed bug where the theme_advanced_link_targets option didn't work correctly with the advanced themes link dialog. Patch contributed by Arnold B. + Fixed bug where the style command would merge classes into empty span elements. + Fixed bug where the style command would remove empty span elements outside the current selection. + Fixed bug where the fix for the Safari backspace bug removed all editor contents if it was filled with empty paragraphs. + Fixed bug where alert and confirm boxes opened by the inlinepopups plugin would produce an exception if domain relaxing was used. + Fixed bug where Safari was adding style attributes to all elements when you paste them into the editor. + Fixed bug where the spellchecker menus was visually incorrect since the space for the non existing icon was still there. + Fixed bug where remove_linebreaks option didn't remove line breaks inside the text contents of a element. + Fixed bug where Safari 3.1 was introducing _mc_tmp into paragraphs due to the new querySelectorAll and a TinyMCE specific workaround. + Fixed bug where getParam method in the Editor class was returning incorrect objects and would mess up the font drop down. Patch contributed by speednet. + Fixed bug where the table dialog would produce an exception in IE when you edited tables since it tried to place focus in a disabled field. + Fixed bug where class attribute on some span elements was removed on cleanup. + Fixed bug where resizing the editor in IE could produce an exception if the editor width/height got to be a negative value. + Fixed bug where wmv files wouldn't play since the src param was used instead of the url param. + Fixed bug where br elements would be added here and there in Gecko. Geckos internal _moz_dirty br elements where serialized as well. + Fixed bug where editing named anchors would produce two anchors instead of one updated one. + Fixed bug where arrow and function keys didn't work when an noneditable element was focused within the editor. + Fixed bug where the dispatcher could produce an exception if the listener list was altered inside an event callback. + Fixed bug where it was impossible to totally empty the editor contents on Safari due to an mistreatment of nbsp as whitespace. Patch contributed by Andrew Ozz. + Fixed bug where TinyMCE would not convert textareas with the same name attribute value. It will now generate an unique id for those textareas. + Fixed bug where backspace/delete key was deleting td elements inside tables while running on Gecko. + Fixed bug where Firefox 3.0b4 and Opera 9.26 where scrolling to the top of document when pressing return/enter. + Fixed bug where the template plugin wasn't just inserting the mceTmpl tagged element. + Fixed bug where the alert method of the default WindowManager implementation didn't translate input language strings like the inlinepopups dialog does. + Fixed bugs with the backspace behavior in Gecko. The caret was placed on incorrect locations in the DOM sometimes. + Fixed so advimage dialog and table dialogs has support for editable select boxes for the class value. + Fixed so the media, pagebreak and spellchecker doesn't load it's default content.css file if the content_css option is set to false. + Fixed so the paste_use_dialog option works again it's enabled by default but can be disabled on IE. Patch contributed by Speednet. + Fixed so that the fullscreen editor is focused when switching fullscreen editing on. + Fixed so it's possible to edit images and links inside tables using the context menu. + Fixed so table dialogs and the advanced image dialog doesn't loose selection in IE if the dialogs where navigated/submitted with the keyboard. + Fixed so the theme_advanced_blockformats options can have named items for example title 1=h1;title 2=h2. + Fixed so it's possible to add a custom editor_css for the simple theme. + Fixed quirks with directionality rtl, patch contributed by Andrew Ozz. + Fixed so the inlinepopups default start zIndex is 300000. + Fixed typo in media plugin Shockware is now replaced with Shockwave. + Fixed psuedo memory leak in IE with the replaceChild method inside the DOMUtils.replace method. + Fixed so memory is released when an editor instance is removed from page. + Optimized the color split button menus so that they use less event handlers. + Removed the util/mclayer.js file since it's no longer used by any of the TinyMCE dialogs and is considered deprecated. +Version 3.0.5 (2008-03-12) + Added new black skin variant to the o2k7 skin contributed by Stefan Moonen. + Added new explode method to the tinymce core class. This does a split but removed whitespace it also defaults to a , delimiter. + Added new detection logic for IE 8 standards mode into the DOMUtils class strMode can now be checked to see if that mode is on/off. + Added new noscale option value for the scale select box for Flash in the media plugin. + Fixed bug where the menu for the ColorSplitButton wasn't removed when the editor was removed. + Fixed bug where font colors couldn't be edited correctly since the style of the element didn't get updated correctly. + Fixed bug where class of elements would get lost when TinyMCE was fixing incorrect HTML markup. + Fixed bug where table editing would produce double height values. + Fixed bug where width style value wouldn't be removed if you switched width unit from cm/em to pixels or percent. + Fixed bug where the search/replace input box wasn't auto focused like the other dialogs. + Fixed bug where the old mceAddControl command would use the fullscreen settings next time it created an instance. + Fixed bug where multiple lines where added to the target cell if you merged multiple empty cells. + Fixed bug where drop down menus would be incorrectly positioned inside scrollable divs. + Fixed bug where the separators of the silver skin variant didn't display correctly in IE 6. + Fixed bug where createStyleSheet seems to load scripts at opposite order in some IE versions. + Fixed bug where directionality could produce odd results for the UI and the dialogs. + Fixed bug where the DOM serializer wouldn't serialize custom namespaced attributes in IE 6 using the *[*] valid elements rule. + Fixed bug where table caption would be inserted after the thead element if you swapped a tr to be inside the thead. + Fixed bug where the youtube detection logic for the media plugin was to generic. + Fixed so the deprecated and undocumented theme_advanced_path_location set to none won't hide the whole statusbar. + Fixed so most input lists can have whitespace in them they are now split using the new tinymce.explode method. + Fixed so the popup_css and popup_css_add URLs are relative to where the current document is located. + Fixed various bugs and quirks with the store/restore selection logic. + Fixed so the editor starts in IE 8 standards mode but still that browser is very very buggy. + Fixed so dialog_type set to modal will block the background and other inline windows and only give access to the front most window. +Version 3.0.4.1 (2008-03-08) + Fixed critical bug where it was impossible to edit images when inlinepopups where used due to lost selection in IE. +Version 3.0.4 (2008-03-07) + Added new option constrain_menus, this enables you to force view port constraints on all menus. Contributed by Shane Tomlinson. + Fixed bug where table background wasn't visible inside the editor due to a default CSS rule overriding the style attribute. + Fixed bug where links would get a null class added if no styles was used in IE. + Fixed bug where spellchecker was auto focusing the editor in IE. + Fixed bug where document.domain would produce invalid argument if the editor was loaded in IE6 over a network UNC path. + Fixed bug where table height attribute was used, this is deprecated in XHTML so it now adds it as an style. + Fixed bug where textareas with style values would produce error in IE. + Fixed so the first element in each dialog is focused by default to enhance keyboard usage. + Fixed so you can add a mceFocus class to elements to make it auto focused. + Fixed so you can close dialogs using the esc key. + Fixed so you can press return/enter to submit the action of each dialog. + Fixed so tabbing inside an inline popups wont focus the resize anchor elements. + Fixed so you can press ok in inline alert messages using the return/enter key. + Fixed so textareas can be set to non px or % sizes for example em, cm, pt etc. + Fixed so non pixel values can be used in width/height properties for tables. + Fixed so the custom context menu can be disabled by holding down ctrl key while clicking. + Fixed so the layout for the o2k7 skin looks better if you don't have separators before and after list boxes. + Fixed so the sub classes get a copy of the super class constructor function to ease up type checking. + Fixed so font sizes for the format block previews are normalized according to http://www.w3.org/TR/CSS21/sample.html (it can be overridden). + Fixed so font sizes for h1-h6 in the default content.css is normalized according to http://www.w3.org/TR/CSS21/sample.html (it can be overridden). +Version 3.0.3 (2008-03-03) + Fixed bug where an error about document.domain would be thrown if TinyMCE was loaded using a different port. + Fixed bug where mode exact would convert textareas without id or name if the elements option was omitted. + Fixed bug where the caret could be placed at an incorrect location when backspace was used in Gecko. + Fixed bug where local file:// URLs where converted into absolute domain URLs. + Fixed bug where an error was produced if a editor was removed inside an editor command. + Fixed bug where force_p_newlines didn't effect the paste plugin correctly. + Fixed bug where the paste plugin was producing an exception on IE if you pasted contents with middots. + Fixed bug where delete key could produce exceptions in Gecko sometimes due to the fix for the table cell bug. + Fixed bug where the layer plugin would produce an visual add class called mceVisualAid this one is now renamed to mceItemVisualAid to mark it internal. + Fixed bug where TinyMCE wouldn't initialize properly if ActiveX controls was disabled in IE. + Fixed bug where tables and other elements that had visual aids on them would produce an extra space after any custom class names. + Fixed bug where search with an empty string would produce some odd "invalid pointer" error in IE. + Fixed bug where elements like menus where placed at incorrect positions in Opera 9.26. + Fixed bug where IE was loosing focus of the editor when you clicked some dropmenu and if it was placed in a frame or iframe. + Fixed bug where focus of images could be lost in IE if you focused the accessibility confirm dialog in the advimage plugin. + Fixed bug where nestled font elements would produce odd output like missing font elements. + Fixed bug where text colors and styles got removed if invalid_elements included the font element. + Fixed bug where text-decoration set to underline or line-through would remove other styles from span elements. + Fixed bug where editor contents like \n\n would be incorrectly handled and processed as real line feeds. + Fixed bug where incorrectly encoded urls with ampersands in them would be decoded incorrectly. + Optimized the DOMUtils decode method to be a lot faster if the string doesn't have any entities to decode. +Version 3.0.2.1 (2008-02-26) + Fixed alert/confirm dialogs so they display correctly. +Version 3.0.2 (2008-02-26) + Added new body_id option that enables you to specify the id of the body inside the editor iframe based on ideas by David Bildstrm (ChronoZ). + Added new body_class option that enables you to set the class for the body of the editor iframe based on ideas by David Bildstrm (ChronoZ). + Added new CSS class to the default content.css files mceForceColors that forces white background and black text can be used with the body_class option. + Added new type parameter to the Editor.getParam function to reduce redundant logic for parsing hash tables. + Added new isDone method to the ScriptLoaded class, this enables you to check if a script has been loaded or not. + Added new resizeTo and resizeBy methods for the advanced theme. Can be called using tinyMCE.activeEditor.theme.resizeTo(w, h); + Added new skin_variant option this can be used to extend existing skins with slight modifications like color. + Added new variant of the o2k7 skin called "silver" based on a contribution made by Stefan Moonen. + Fixed bug where the template plugin might produce errors if the template_mdate_classes wasn't configured. + Fixed bug where the media plugin didn't convert the URLs for movies once they where inserted. + Fixed bug where the style field for the advlink dialog didn't work correctly if you edited an existing link. + Fixed bug where alignment of toolbars would fail in editor was uses in a quirks mode on IE, fix contributed by Peter Wood & Art Lawry. + Fixed bug where initialization of multiple editors at the same time using the mceAddControl method would produce errors. + Fixed bug where initialization of editors using mceAddControl command or new tinymce.Editor calls would fail during page load. + Fixed bug where the check for domain relaxing could fail if the document.domain property was changed by another script. + Fixed bug where textareas couldn't be named description or any other name that matches the meta elements in IE and Opera. + Fixed bug where the element path would fail sometimes in IE due to "unknown runtime error" on innerHTML. + Fixed bug where Safari would crash if you was hiding the editor before serializing the contents. + Fixed bug where the editor wasn't scaled propertly in fullscreen mode using the old fullscreen_new_window option. + Fixed bug where render method didn't load language packs in IE and Opera if you rendered an editor during page load. + Fixed bug where resizing the browser window in fullscreen didn't resize the editor. + Fixed bug where the blockquote command didn't move the caret inside the new empty blockquote if you used it on an empty document. + Fixed bug where auto in a style width/height for the textarea would produce an editor with the size value of 100. Fix contributed by Shane Tomlinson. + Fixed bug where restoration of selection at the beginning of an element could fail in Gecko. + Fixed bug where caret restoration after a cleanup could place the it at an incorrect location. + Fixed bug where delete key inside td elements would delete the cell in Gecko. + Fixed so the blockquote button toggles individual lines. This behavior is a bit more like the old indentation behavior in the 2.x branch. + Fixed so the dialog language packs only gets loaded the first time you open a dialog. + Fixed so all classes in the whole UI is prefixed with "mce" to avoid collisions, use the skin converter to update your existing skins. + Fixed so all classes in the inlinepopups logic is prefixed with "mce" to avoid collisions, use the skin converter to update your existing skins. + Fixed so that the window in fullscreen mode can be resized when fullscreen_new_window option is enabled. + Fixed so blockquote elements are formatted in the source output with an linefeed before and after it. + Optimized the editor initialization by reducing the number of calls to getBookmark/moveToBookmark. +Version 3.0.1 (2008-02-21) + Added spellchecker plugin into the main package, but without any backend can be specified with the spellchecker_rpc_url option. + Added src attribute for script elements to the default valid_elements option value. + Added extra parameter to the class_filter callback it can now also filter out classes based on the whole CSS rule. + Added support for domain relaxing, TinyMCE can now be loaded from an remote domain as long as they are on the same root domain. + Added support for custom elements the new custom_elements option enables you to add non HTML elements to the editor. + Added support for the W3C Selectors API that was added to latest nightly build of WebKit. + Fixed bug where some object param element wasn't stored correctly using the media plugin. + Fixed bug where Opera was scrolling to top of page is drop menus on list boxes where displayed. + Fixed bug where IE6 was crashing if a format block was used on a container with anchor elements. + Fixed bug where spans with font sizes wasn't handled correctly when editor was loading contents. + Fixed bug where mode exact couldn't convert editors with name only. Id is no longer required but recommended. + Fixed bug where the mceInsertRawHTML command produced an extra undo level. + Fixed bug where the specific_textareas mode didn't work correctly this is the same thing as textareas now. + Fixed bug where the values of input elements in the HTML page of dialogs pages where changed in IE. + Fixed bug where fullscreen and fullpage plugins didn't work well together. + Fixed bug where embed elements wasn't handled properly in the media plugin. + Fixed bug where style information on span elements gets munged when fonts are converted to spans. + Fixed bug where some entities in element attributes where encoded incorrectly in the latest WebKit build. + Fixed bug where initialization would fail in IE if there where two input elements with the name submit in the form. + Fixed bug where fullscreen mode didn't work correctly in IE when the fullscreen_new_window option was used. + Fixed bug where invalid contents like an ul inside a p element would produce odd results in IE. + Fixed bug where Opera 9.2x was placing the drop menus at incorrect locations if the editor was placed in a table. + Fixed bug where Opera was producing odd results if enter/return was pressed while having forced_root_blocks disabled. + Fixed bug where layer plugin was stealing focus in IE on initialization. + Fixed bug where body attributes wasn't set properly in the fullpage plugin, fix contributed by Hiroaki Kawai. + Fixed bug where insert image and insert link dialogs where producing an extra level in the undo history. + Fixed bug where Gecko would produce an error if empty elements like
where inserted using mceInsertContent. + Fixed bug where center alignment of images produced odd results inside table cells. + Fixed bug where center alignment of images couldn't be toggled correctly. + Fixed bug where alignment of images inside tables would produce double float style items in IE if the fix_table_elements option was enabled. + Fixed bug where a variable called 'v' was polluting the global namespace. Objects tinymce and tinyMCE are the only ones allowed to be global. + Fixed bug where insert table from context menu couldn't insert new tables inside existing tables. + Fixed bug where Safari wouldn't produce br elements on enter when the force_br_newlines option was enabled. + Fixed bug where switching cell type in table cell dialog would produce odd attributes in IE. + Fixed bug where Gecko was outputting internal attributes if valid_elements where set to "*[*]". + Fixed bug where the style plugin would produce non hex colors inside the dialog when running on Gecko. + Fixed bug where an empty src value for insert image would remove the currently selected image if it wasn't and image element. + Fixed bug where hidden input elements would break the logic for the tab_focus option. + Fixed bug where save button wasn't working correctly in fullscreen mode. + Fixed bug where the editor was forced to be placed in a form element if the save_onsavecallback option was used. + Fixed bug where upper case param attributes wasn't parsed correctly in the media plugin. + Fixed bug where render method of tinymce.Editor class would produce an exception if the strict_loading_mode option was omitted. + Fixed bug where nodeChanged event could be fired while the editor was loading and there for produce an exception in FF. + Fixed bug where no undo levels where added if the user created new table rows using the tab key on Gecko. + Fixed bug where tables would be broken if you selected a different block format for contents withing an table cell. + Fixed bug where the render method of the tinymce.Editor class didn't setup the tinymce.EditorManager.settings object correctly. + Fixed bug where the advanced image dialog would go to the first tab if the alternative image was changed using the file browser link. + Fixed bug where the forced_root_block option would produce BR elements inside empty blocks if the block wasn't a paragraph. + Fixed bug where the forced_root_block doesn't work correctly on IE if the specified element was something else than paragraphs. + Fixed bug where selection of images would get lost if user selected something from the context menu in IE. + Fixed bug where the context menu plugin would pollute the global namespace with two variables p1 and p2. + Fixed compatibility issue with Mootools, it is destroying document.getElementById on unload in IE. (Mantra: You don't own the internal objects). + Fixed bugs where dialogs/tabs and other UI elements where rendered incorrectly in Firefox 3. + Fixed so the auto CSS class importer is compatible with 2.x. + Fixed so the editor UI and inlinedialogs works correctly with the YUI CSS reset package. + Fixed so header and footer elements are forced to lower case when the fullpage plugin is used. + Fixed so load prefixes "-" for plugins and themes isn't required if the plugin/theme was loaded by the ThemeManager/PluginManager. + Fixed so the JSONRequest uses application/json content type to make Ruby on rails happy. + Fixed so the CSS rule is more exact for the body in the default content.css files. Body is now defined as "body.mceContentBody" instead of just "body". + Fixed so the tiny_mce_dev.js uses XHR instead of document.write to load scripts to resolve an issue with Opera 9.50. + Fixed so language pack loading can be disabled by setting the language option to false. Can be useful for systems with their own language pack management. +Version 3.0 (2008-01-30) + Added map and area elements to the default valid_elements list and also some indentation rules. + Fixed bug where empty paragraphs wasn't padded when loading contents. + Fixed bug where the RowLayout manager didn't work at all. + Fixed bug where style attribute data would get messed up in advimage dialog. + Fixed bug where the table dialogs class select wasn't updated correctly. + Fixed bug where elements would get extra whitespace around on insert when body was present in valid_elements. + Fixed bug where coords attribute of the area element wasn't handled properly in IE. + Fixed bug where Safari didn't produce BR elements on shift+return. + Fixed bug where force blocks would cast odd invalid attribute exception in IE. + Fixed bug where media plugin would produce extra whitespace before and after objects. + Fixed bug where cleanup_callback could break the contents of the editor. But use the new event system instead of this option. + Fixed bug where the tab_focus option didn't work between editor instanced. You can now tab between editors. + Fixed bug where the load function of the ScriptLoader class didn't load single files without the load que as it was supposed to. + Fixed bug where the execcommand_callback parameter order was incorrect. Recommendation use the new addCommand method. + Fixed bug where range.select calls sometimes failed on some IE versions. + Fixed bug where Safari was scrolling to top of document when enter/returned was pressed. + Fixed bug where fullscreen_new_window option didn't work correctly. + Fixed bug where the nonbreaking plugin inserted an space instead of an non breaking space the first time. + Fixed bug where the visualization of non breaking spaces where visual in element path. + Fixed so the focus is restored to the editor after inserting an custom character. + Fixed so the isNotDirty state is set to false if a new undo level is added. + Fixed so pointless style information for borders gets removed in IE. + Fixed so the resize button has a se-resize cursor css value. +Version 3.0rc2 (2008-01-18) + Added new fix_nesting option to fix bug #1867292, this is disabled by default. + Added new indentation option enables you to specify how much each indent/outdent call will add/remove. + Added easier support for enabling/disabling icon columns on drop menues. + Added new menu button control class. This control is very similar to the splitbutton but without any onclick action. + Added support for previous tab focus (shift+tab). The tab_focus setting now takes two items next and previous element. + Fixed bug where iframes inside the editor got removed in Firefox on initial load. + Fixed bug where the CSS for abbr elements wasn't applied correctly in IE. + Fixed bug where mceAddControl on element inside a hidden container produced errors. + Fixed bug where closed anchors like
produced strange results. + Fixed bug where caret would jump to the top of the editor if enter was pressed a the end of a list. + Fixed bug where remove editor failed if the editor wasn't properly initialized. + Fixed bug where render call on for a non existing element produced exception. + Fixed bug where parent window was hidden when the color picker was used in a non inlinepopups setup. + Fixed bug where onchange event wasn't fired correctly on IE when color picker was used in dialogs. + Fixed bug where save plugin could not save contents if the converted element wasn't an textarea. + Fixed bug where events might be fired even after an editor instance was removed such as blur events. + Fixed bug where an exception about undefined undo levels could be throwed sometimes. + Fixed bug where the plugin_preview_pageurl option didn't work. + Fixed bug where adding/removing an editor instance very fast could produce problems. + Fixed bug where the link button was highlighted when an anchor element was selected. + Fixed bug where the selected contents where removed if a new anchor element was added. + Fixed bug where splitbuttons where rendered one pixel down in the default theme. + Fixed bug where some buttons where placed at incorrect positions in the o2k7 theme. + Fixed bug that made it impossible to visually disable a custom button that used an image instead of CSS sprites. + Fixed bug where it wasn't possible to press delete/backspace if the editor was added+removed and re-added due to a FF bug. + Fixed bug where an entities option with only 38,amp,60,lt,62,gt would fail in IE. + Fixed bug where innerHTML sometimes generated unknown runtime error on IE. + Fixed bug where content_css files wasn't loaded in the template preview iframe. + Fixed bug where scroll position was incorrect when toggling fullscreen mode. + Fixed bug where restoration of overflow didn't work correctly when disabling fullscreen mode in Opera. + Fixed bug where drop menus where places at incorrect locations if the editor was placed in a scrollable container element. + Fixed bug where hideMenu didn't hide sub menus correctly. It will now hide all menus recursively. + Fixed so theme_advanced_path_location can be used in init options for compatibility reasons. + Fixed so the drop menu colors matches the rest of o2k7 theme. + Fixed so the preview example.html file is updated to the new 3.x API. + Fixed so the margins are the same by default inside the editable area between IE and other browsers. + Fixed so editor contents gets stored before it the onSubmit event is fired. +Version 3.0rc1 (2008-01-08) + Added new classes for toolbar rows in advanced theme mceToolbarRow1..n enabled you to change appearance of individual rows. + Added auto detection for the strict_loading_mode option when running in application/xhtml+xml mode on Gecko. + Optimized the HTML serializer by bundling some post process methods together. + Fixed so that the toolbars have unique IDs, enables you to alter the toolbars using the ControlManager and the DOM. + Fixed bug where delta values for dialog sizes in language packs didn't work correctly due to missing string to number casting. + Fixed bug where paragraph generation logic didn't handle hr or table elements correctly if they where the only element. + Fixed bug where some elements got extra linebreaks added after or before it in HTML output. + Fixed bug where it was hard to modify existing style data on table rows and table cells. + Fixed bug where the dom.getRect method didn't handle non pixel values correctly. + Fixed bug where strikethrough and underline couldn't be toggled on existing span elements. + Fixed bug where the postprocessor searched for nsbp instead of nbsp entities. + Fixed bug where it was impossible to edit links that had child elements within them. + Fixed bug where it was possible to click on the parent item of a submenu. + Fixed bug where mouseover/mouseout images couldn't be removed in advimage dialog. + Fixed bug where drop menus didn't work when running in application/xhtml+xml mode. + Fixed bug where Opera added doctype to output in application/xhtml+xml mode. + Fixed bug where some DOM methods didn't work correctly in the application/xhtml+xml mode. + Fixed bug where the inlinepopups didn't work correctly in the application/xhtml+xml mode. + Fixed bug where the ColorSplitButton didn't display correctly in the application/xhtml+xml mode. + Fixed bug where the UI layout was incorrect on Gecko browsers when running in application/xhtml+xml mode. + Fixed bug where the word paste plugin produced exception while running in application/xhtml+xml mode. + Fixed bug where there wasn't any hidden input element generated for divs while running in application/xhtml+xml mode. + Fixed bug where indentation of script/style/pre elements where incorrect. + Fixed bug where script element contents was removed in IE. + Fixed bug where script element contents got entity encoded. + Fixed bug where you couldn't edit existing element styles using the styles plugin. + Fixed bug where styles wasn't updated properly sometimes due to an performance enhancement. + Fixed bug where font sizes couldn't be changed using the style plugin. + Fixed bug where an error was produced in Gecko browsers when switching back from fullscreen mode. + Fixed bug where Opera was producing br elements after elements like h3. + Fixed bug where TinyMCE couldn't be loaded on a page using - characters in it's URL. + Fixed bug where the editor container element was forced to have a specific name. + Fixed bug with force_br_newlines option on Firefox, even though it should never be used (Read FAQ). + Fixed bug where onclick event had an return true; prefix added when creating an popup. + Fixed bug where the theme_advanced_statusbar_location option couldn't handle the value "none". + Fixed issue with URLs with multiple at characters for example an Zope URI. + Fixed so simple and advanced themes doesn't collide. + Fixed so a elements gets removed when the href field is left empty, the href attribute is required in a link after all. + Fixed so img elements gets removed when the src field is left empty, the src attribute is required for all images after all. + Removed the indent and encode methods from the tinymce.dom.Serializer class due to performance enhancement and reduction of the API size. +Version 3.0b3 (2007-12-14) + Added new getElement method to Editor class, returns the element that was replaced with the editor instance. + Added new unavailable prefix for disabled controls for accessibility reasons. + Fixed bug where regexp patterns couldn't be used for the editor_selector/editor_deselector options. + Fixed bug where the DOM wasn't properly initialized before the onInit event was executed in popups. + Fixed bug where font sizes where reduced by font size actions on previous spans in Safari. + Fixed bug where HR elements got places at the wrong location in IE. + Fixed bug where align/justify didn't work correctly on multiple paragraphs. + Fixed bug with missing translation for cell scope settings. + Fixed bug where selection/caret position was lost on some table actions. + Fixed bug where editor instances couldn't be added to hidden div elements. + Fixed bug where list elements in Safari would get an odd ID attribute. + Fixed bug where IE would return when the editor was completely empty. + Fixed bug where accessibility title attribute for access keys wasn't setup properly. + Fixed bug where forecolorpicker and backcolorpicker control names wasn't working. + Fixed bug where inserting template content didn't work in Safari due to selection exception. + Fixed bug where absolute URLs to remote hosts couldn't be used for background images. + Fixed bug where mysterious span elements where produced in Safari when injecting HTML contents. + Fixed bug where the media plugin didn't work correctly on the latest Opera 9.24. + Fixed bug where indentation of HTML output wasn't applied to all block elements. + Fixed bug where Safari was production DOM exception if you pressed enter in an empty editor. + Fixed bug where media plugin didn't parse script tags correctly patch contributed by Mathieu Campagna. + Fixed bug where the drop menus of list boxes like blockformat could produce scrolling of the page. + Fixed bug where the drop menus where placed at an incorrect location if TinyMCE was placed in a scrollable div. + Fixed bug where submit buttons couldn't be named submit, it's not recommended to name submit buttons submit anyway. + Fixed bug where the stylelistbox produced an exception if there was only one class in the list box. + Fixed bug where the stylelistbox wasn't updated correctly when the current class was removed. + Fixed bug where the formatblock command sometimes removed the body element. + Fixed bug where fullscreen switching in IE sometimes produced an exception when the spellchecker plugin was enabled. + Fixed issue where FF produced an empty paragraph when the editor was completely empty. + Fixed issue with size of image dialog in the advanced theme. + Fixed issues with the bbcode plugin it now also handles spans and the [font] rule. + Fixed so the style compression feature is a bit smarter to resolve issues with Opera. + Reintroduced the remove_linebreaks option, this is enabled by default. +Version 3.0b2 (2007-11-29) + Added type and compact attributes to the default valid_elements list for the ul and ol elements. + Added missing accessibility support to native list boxes in both the toolbar and dialogs. + Added missing access key for the element path for accessibility reasons. + Fixed support for loading themes from external URLs. + Fixed bug where setOuterHTML didn't work correctly when multiple elements where passed to it. + Fixed bug with visualchars plugin was moving elements around in the DOM. + Fixed bug with DIV elements that got converted into editors on IE. + Fixed bug with paste plugin using the old event API. + Fixed bug where the spellchecker was removing the word when it was ignored. + Fixed bug where fullscreen wasn't working properly. + Fixed bug where the base href element and attribute was ignored. + Fixed bug where redo function didn't work in IE. + Fixed bug where content_css didn't work as previous 2.x branch. + Fixed bug where preview dialog was throwing errors if the content_css wasn't defined. + Fixed bug where the theme_advanced_path option didn't work like the 2.x branch. + Fixed bug where the theme_advanced_statusbar_location was called theme_advanced_status_location. + Fixed bug where the strict_loading_mode option didn't work if you created editors dynamically without using the EditorManager. + Fixed bug where some language values wasn't translated such as insert and update in dialogs. + Fixed bug where some image attributes wasn't stored correctly when inserting an image. + Fixed bug where fullscreen mode didn't restore scrollbars when disabled. + Fixed bug where there was no visual representation for tab focus in toolbars on IE. + Fixed bug where HR elements wasn't treated as block elements so forced_root_block would fail on these. + Fixed bug where autosave presented warning message even when the form was submitted normally. + Fixed typo of openBrower it's now openBrowser in form_utils.js. + Fixed various HTML problems like missing TD elements and duplicated doctypes. + Fixed default values for theme_advanced_resize_horizontal, theme_advanced_resizing_use_cookie to be 2.x compatible. + Moved spellchecker JS files into the development package. + Removed support for theme_advanced_path_location since the theme_advanced_statusbar_location is the correct option name. +Version 3.0b1 (2007-11-21) + Added new tab_focus option, that enables you to specify a element id or that the next element to be focused on tab key down. + Added new addQueryValueHandler method to the tinymce.Editor class. + Added new class_filter option, this enables you to specify a function that can filter out CSS classes for the styles list box. + Added support form [url=url]title[/url] to the bbcode plugin. + Renamed the addCommandQueryState method in the tinymce.Editor class to addQueryStateHandler. + Renamed loadQue to loadQueue, to correct spelling. + Removed the createDOM method from the window manager and replace it with a createInstance method. + Removed the add to beginning of class attribute parameter of the DOMUtils.addClass method. + Fixed bug with the forced_root_block option, didn't work correctly with multiple inline elements. + Fixed bug where image dialogs replaced the current image element with a new one even when it was updated. + Fixed bug where the submit trigger wasn't executed when divs where converted into editor instances. + Fixed bug where div elements that got converted into editors didn't get a hidden input element generated for them. + Fixed bug where the the media_use_script option for the media plugin wasn't working correctly. + Fixed bug where the font size and font family listboxes wasn't updated correctly on Safari. + Fixed bug where the height of the fieldset in default image dialog for the advanced theme was to small. + Fixed bug where the font sizes behaved incorrectly after a cleanup on Safari. + Fixed bug where formatblock didn't work correctly in Safari on some elements. + Fixed bug where template plugin didn't insert content correctly unless some options where specified. + Fixed bug where charmap on Safari produced scrollbars. + Fixed bug where there was white artifacts in some dialogs due to missing background color. + Fixed bug where port was added to all external URLs if the editor was loaded from a custom port. + Fixed bug where the context menus got duplicated on Safari 3.0.4 on Mac OS X. + Fixed bug where dialogs like paste from word was huge on Firefox. + Fixed bug with media plugin not working with windows media objects. + Fixed bug where a forever loop was created if multiple instances where submitted using form.submit. + Fixed bug with editing a table produce error in IE when inlinepopups where used. + Fixed bug where the style plugin generated ugly looking style information in IE. + Fixed bug where the inline dialogs that got opened while in fullscreen mode wasn't visible. + Fixed bug where it was difficult to place the caret inside the word paste dialog. + Fixed bug where Opera produced strange border in the word paste dialog. + Fixed bug where viewport constraints could move a inlinepopup to a negative x, y position if the viewport was to small. + Fixed bug where template plugin was producing an error due to a deprecated API call. + Fixed bug where drag drop of images failed in Gecko if a document_base_url was specified. + Fixed bug where Firefox 3 failed to apply block formats like H1-H6 it still breaks on DIVs this has been reported to bugzilla. + Fixed bug where IE was producing a warning dialog about non secure items when running TinyMCE over HTTPS. + Fixed bug where the onbeforeunload event was triggered when menus or dialogs where opened. + Fixed bug where the fullscreen mode of the HTML view source box threw an error. + Fixed bug where the mceFocus command didn't work correctly. + Fixed bug where the selection could get lost in IE using inlinepopups. + Fixed so the body of the editor area has the mceContentBody class just like the 2.x branch. + Fixed so the media icon gets active when a media element is selected. +Version 3.0a3 (2007-11-13) + Added new experimental jQuery and Prototype framework adapters to the development package. + Added new translation.html file for the development package. Helps with the internationalization of TinyMCE. + Added new setup callback option, use this callback to add events to TinyMCE. This method is recommended over the old callbacks. + Added new API documetation to all classes, functions, events, properties to the Wiki with examples etc. + Added new init method to all plugins and themes, since it's shorter to write and it mimics interface capable languages better. + Fixed various CSS issues in the default skin such as alignment of split buttons and separators. + Fixed issues with mod_security. It didn't like that a content type of text/javascript was forced in a XHR. + Fixed all events so that they now pass the sender object as it's first argument. + Fixed some DOM methods so they now can take an array as input. + Fixed so addButton and the methods of the ControlManager uses less arguments and it now uses a settings object instead. + Fixed various issues with the tinymce.util.URI class. + Fixed bug in IE and Safari and the on demand gzip loading feature. + Fixed bug with moving inline windows sometimes failed in IE6. + Fixed bug where save_callback function wasn't executed at all. + Fixed bug where inlinepopups produces scrollbars if windows where moved to the corners of the browser. + Fixed bug where view HTML source failed when inserting a embedded media object. + Fixed bug where the listbox menus didn't display correctly on IE6. + Fixed bug where undo level wasn't added when editor was blurred. + Fixed bug where spellchecker wasn't disabled when fullscreen mode was enabled. + Fixed bug where Firefox could crash some times when the user switched to fullscreen mode. + Fixed bug where tinymce.ui.DropMenu didn't remove all item data when an item was removed from the menu. + Fixed bug where anchor list in advlink dialog wasn't populated correctly in Safari. + Fixed bug where it wasn't possible to edit tables in IE when inlinepopups was enabled. + Fixed bug where it wasn't possible to change the table width of an existing table. + Fixed bug where xhtmlxtras like abbr didn't work correctly on IE. + Fixed bug where IE6 had some graphics rendering issues with the inlinepopups. + Fixed bug where inlinepopup windows where moved incorrectly when they were boundary checked for min width. + Fixed bug where textareas without id or name couldn't be converted into editor instances. + Fixed bug where TinyMCE was stealing element focus on IE. + Fixed bug where the getParam method didn't handle false values correctly. + Fixed bug where inlinepopups was clipped by other TinyMCE instances or relative elements in IE. + Fixed bug where the contextmenu was clipped by other TinyMCE instances or relative elements in IE. + Fixed bug where listbox menus was clipped by other TinyMCE instances or relative elements in IE. + Fixed bug where listboxes wasn't updated correctly when the a value wasn't found by select. + Fixed various CSS issues that produced odd rendering bugs in IE. + Fixed issues with tinymce.ui.DropMenu class, it required some optional settings to be specified. + Fixed so multiple blockquotes can be removed with a easier method than before. + Optimized some of the core API to boost performance. + Removed some functions from the core API that wasn't needed. +Version 3.0a2 (2007-11-02) + Fixed critical bug where IE generaded an error on a hasAttribute call in the serialization engine. + Fixed critical bug where some dialogs didn't open in the non dev package. + Fixed bug when using the theme_advanced_styles option. Error was thrown in some dialogs. + Fixed bug where the close buttons produced an error when native windows where used. + Fixed bug in default skin so that split buttons gets activated correctly. + Fixed so plugins can be loaded from external urls outsite the plugins directory. +Version 3.0a1 (2007-11-01) + Rewrote the core and most of the plugins and themes from scratch. + Added new and improved serialization engine, faster and more powerful. + Added new internal event system, things like editor.onClick.add(func). + Added new inlinepopups plugin, the dialogs are now skinnable and uses clearlooks2 as default. + Added new contextmenu plugin, context menus can now have submenus and plugins can add items on the fly. + Added new skin support for the simple and advanced themes you can alter the whole UI using CSS. + Added new o2k7 skin for the simple and advanced themes. + Added new custom list boxes for font size/format/style etc with preview support. + Added new UI management, enabled plugins to create controls like splitbuttons or menus easier. + Added new JSON parser/serializer and JSON-RPC class to the core API. + Added new cookie utility class to the core API. + Added new Unit testing class to the core API only available in dev mode. + Added new firebug lite integration when loading the dev version of TinyMCE. + Added new Safari plugin, fixes lots compatibility of issues with Safari 3.x. + Added new URI/URL parsing it now handles the hole RFC and even some exceptions. + Added new pagebreak plugin, enables you to insert pagebreak comments like + Added new on demand loading of plugins and themes. Enables you to load and init TinyMCE at any time. + Added new throbber/progress visualization a plugin can show/hide this when it's needed. + Added new blockquote button. Enables you to wrap paragraphs in blockquotes. + Added new compat2x plugin. Will provide a TinyMCE 2.x API for older plugins. + Added new theme_advanced_resizing_min_width, theme_advanced_resizing_min_height options. + Added new theme_advanced_resizing_max_height, theme_advanced_resizing_max_height options. + Added new use_native_selects option. Enables you to toggle native listboxes on and off. + Added new docs_url option enables you to specify where the TinyMCE user documentation is located. + Added new frame and rules options for the table dialog. + Added new global rule for valid_elements/extended_valid_elements enables you to specify global attributes for all elements. + Added new deny attribute rule characher so it's possible to deny global attribute rules on specific elements. + Added new unit tests in the dev package of TinyMCE. Runs tests on the core API, commands and settings of the editor. + Readded the inline_styles option and enabled it by default so deprecated attributes are no longer used. + Removed all button images and replaced them with CSS sprite images. Reduces the number of requests needed. + Removed lots of language files and merged them into the base language files. Reduces the number of requests needed. + Removed lots of unnecessary files and merged many of them together to reduce requests and improve loading speed. + Reduced the over all script size by 33% and the number of files/requests by 75% so it loads a lot faster. + Fixed so convert_fonts_to_spans are enabled by default. So no more font tags. + Fixed so underline and strikethrough uses spans instread of deprecated U and STRIKE elements. + Fixed so indent/outdent adds/removed margin-left instead of blockquotes. + Fixed so alignment of paragraphs results in a text-align style value instead of the deprecated align attribute. + Fixed so alignment of images uses float or vertical-align style values instead of the deprecated align attribute. + Fixed so all classes from @import stylesheets gets imported into the editor. + Fixed so the directionality can toggle the dir attribute on and off. + Fixed so the fullscreen_settings can be used for all types of fullscreen modes. + Fixed so the advanced HR dialog gets displayed when inserting a HR not only on edit. + Fixed bug where word wrap didn't work in the source editor on Safari. + Fixed so non HTML elements can be used within the editor such as + Fixed various memory leaks in IE and reduced the unload cleanups needed. + Fixed so the preformatted option adds an invisible container pre tag inside the editor. + Renamed the _template plugin to example and updated it to use the new 3.x API. diff --git a/assets/tinymce/examples/.svn/all-wcprops b/assets/tinymce/examples/.svn/all-wcprops new file mode 100644 index 0000000..878a141 --- /dev/null +++ b/assets/tinymce/examples/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 57 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/examples +END +index.html +K 25 +svn:wc:ra_dav:version-url +V 68 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/examples/index.html +END diff --git a/assets/tinymce/examples/.svn/entries b/assets/tinymce/examples/.svn/entries new file mode 100644 index 0000000..67fab21 --- /dev/null +++ b/assets/tinymce/examples/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/examples +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +index.html +file + + + + +2010-06-04T12:51:48.001866Z +8c10e44b7bb99d04e09bc073ad79775e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +5311 + diff --git a/assets/tinymce/examples/.svn/text-base/index.html.svn-base b/assets/tinymce/examples/.svn/text-base/index.html.svn-base new file mode 100644 index 0000000..65b0edc --- /dev/null +++ b/assets/tinymce/examples/.svn/text-base/index.html.svn-base @@ -0,0 +1,94 @@ + + + +Full featured example using jQuery plugin + + + + + + + + + + + + + +
+
+

Full featured example using jQuery plugin

+ +

+ This example shows how TinyMCE can be lazy loaded using jQuery. The jQuery plugin will also attach it's self to various jQuery methods to make it more easy to get/set editor contents etc. +

+ + +
+ +
+ + +
[Show] + [Hide] + [Bold] + [Get contents] + [Get selected HTML] + [Get selected text] + [Get selected element] + [Insert HTML] + [Replace selection] + +
+ + +
+
+ + + diff --git a/assets/tinymce/examples/index.html b/assets/tinymce/examples/index.html new file mode 100644 index 0000000..65b0edc --- /dev/null +++ b/assets/tinymce/examples/index.html @@ -0,0 +1,94 @@ + + + +Full featured example using jQuery plugin + + + + + + + + + + + + + +
+
+

Full featured example using jQuery plugin

+ +

+ This example shows how TinyMCE can be lazy loaded using jQuery. The jQuery plugin will also attach it's self to various jQuery methods to make it more easy to get/set editor contents etc. +

+ + +
+ +
+ + + [Show] + [Hide] + [Bold] + [Get contents] + [Get selected HTML] + [Get selected text] + [Get selected element] + [Insert HTML] + [Replace selection] + +
+ + +
+
+ + + diff --git a/assets/tinymce/jscripts/.svn/all-wcprops b/assets/tinymce/jscripts/.svn/all-wcprops new file mode 100644 index 0000000..31bc2b2 --- /dev/null +++ b/assets/tinymce/jscripts/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 57 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts +END diff --git a/assets/tinymce/jscripts/.svn/entries b/assets/tinymce/jscripts/.svn/entries new file mode 100644 index 0000000..8a00835 --- /dev/null +++ b/assets/tinymce/jscripts/.svn/entries @@ -0,0 +1,31 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts +http://django-grappelli.googlecode.com/svn + + + +2010-05-28T12:30:12.584501Z +1047 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +tiny_mce +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/.svn/all-wcprops new file mode 100644 index 0000000..290936d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/.svn/all-wcprops @@ -0,0 +1,35 @@ +K 25 +svn:wc:ra_dav:version-url +V 66 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce +END +license.txt +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/license.txt +END +jquery.tinymce.js +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/jquery.tinymce.js +END +tiny_mce.js +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/tiny_mce.js +END +tiny_mce_popup.js +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/tiny_mce_popup.js +END +tiny_mce_src.js +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/tiny_mce_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/.svn/entries b/assets/tinymce/jscripts/tiny_mce/.svn/entries new file mode 100644 index 0000000..b597e4e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/.svn/entries @@ -0,0 +1,210 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce +http://django-grappelli.googlecode.com/svn + + + +2010-05-28T12:30:12.584501Z +1047 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +utils +dir + +license.txt +file + + + + +2010-06-04T12:51:47.918978Z +0571cf371683742c14f1735079a78e38 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +26931 + +plugins +dir + +jquery.tinymce.js +file + + + + +2010-06-04T12:51:47.918978Z +cf7a9d17c60bb20ef1322f517c8e486d +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +3293 + +tiny_mce.js +file + + + + +2010-06-04T12:51:47.918978Z +dbbd32c2f989719b971df250c2b3614a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +164933 + +langs +dir + +themes +dir + +tiny_mce_popup.js +file + + + + +2010-06-04T12:51:47.918978Z +677d2f88ae991728c80ef15d112652b2 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +5189 + +tiny_mce_src.js +file + + + + +2010-06-04T12:51:47.918978Z +b6fdf1f44222de0311f76d84bb332d27 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +332320 + diff --git a/assets/tinymce/jscripts/tiny_mce/.svn/text-base/jquery.tinymce.js.svn-base b/assets/tinymce/jscripts/tiny_mce/.svn/text-base/jquery.tinymce.js.svn-base new file mode 100644 index 0000000..6fc34f0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/.svn/text-base/jquery.tinymce.js.svn-base @@ -0,0 +1 @@ +(function(b){var e,d,a=[],c=window;b.fn.tinymce=function(j){var p=this,g,k,h,m,i,l="",n="";if(!p.length){return}if(!j){return tinyMCE.get(p[0].id)}function o(){var r=[],q=0;if(f){f();f=null}p.each(function(t,u){var s,w=u.id,v=j.oninit;if(!w){u.id=w=tinymce.DOM.uniqueId()}s=new tinymce.Editor(w,j);r.push(s);if(v){s.onInit.add(function(){var x,y=v;if(++q==r.length){if(tinymce.is(y,"string")){x=(y.indexOf(".")===-1)?null:tinymce.resolve(y.replace(/\.\w+$/,""));y=tinymce.resolve(y)}y.apply(x||tinymce,r)}})}});b.each(r,function(t,s){s.render()})}if(!c.tinymce&&!d&&(g=j.script_url)){d=1;h=g.substring(0,g.lastIndexOf("/"));if(/_(src|dev)\.js/g.test(g)){n="_src"}m=g.lastIndexOf("?");if(m!=-1){l=g.substring(m+1)}c.tinyMCEPreInit={base:h,suffix:n,query:l};if(g.indexOf("gzip")!=-1){i=j.language||"en";g=g+(/\?/.test(g)?"&":"?")+"js=true&core=true&suffix="+escape(n)+"&themes="+escape(j.theme)+"&plugins="+escape(j.plugins)+"&languages="+i;if(!c.tinyMCE_GZ){tinyMCE_GZ={start:function(){tinymce.suffix=n;function q(r){tinymce.ScriptLoader.markDone(tinyMCE.baseURI.toAbsolute(r))}q("langs/"+i+".js");q("themes/"+j.theme+"/editor_template"+n+".js");q("themes/"+j.theme+"/langs/"+i+".js");b.each(j.plugins.split(","),function(s,r){if(r){q("plugins/"+r+"/editor_plugin"+n+".js");q("plugins/"+r+"/langs/"+i+".js")}})},end:function(){}}}}b.ajax({type:"GET",url:g,dataType:"script",cache:true,success:function(){tinymce.dom.Event.domLoaded=1;d=2;o();b.each(a,function(q,r){r()})}})}else{if(d===1){a.push(o)}else{o()}}};b.extend(b.expr[":"],{tinymce:function(g){return g.id&&!!tinyMCE.get(g.id)}});function f(){function i(l){if(l==="remove"){this.each(function(n,o){var m=h(o);if(m){m.remove()}})}this.find("span.mceEditor,div.mceEditor").each(function(n,o){var m=tinyMCE.get(o.id.replace(/_parent$/,""));if(m){m.remove()}})}function k(n){var m=this,l;if(n!==e){i.call(m);m.each(function(p,q){var o;if(o=tinyMCE.get(q.id)){o.setContent(n)}})}else{if(m.length>0){if(l=tinyMCE.get(m[0].id)){return l.getContent()}}}}function h(m){var l=null;(m)&&(m.id)&&(c.tinymce)&&(l=tinyMCE.get(m.id));return l}function g(l){return !!((l)&&(l.length)&&(c.tinymce)&&(l.is(":tinymce")))}var j={};b.each(["text","html","val"],function(n,l){var o=j[l]=b.fn[l],m=(l==="text");b.fn[l]=function(r){var p=this;if(!g(p)){return o.call(p,r)}if(r!==e){k.call(p.filter(":tinymce"),r);o.call(p.not(":tinymce"),r);return p}else{var q="";(m?p:p.eq(0)).each(function(t,u){var s=h(u);q+=s?(m?s.getContent().replace(/<(?:"[^"]*"|'[^']*'|[^'">])*>/g,""):s.getContent()):o.call(b(u),r)});return q}}});b.each(["append","prepend"],function(n,m){var o=j[m]=b.fn[m],l=(m==="prepend");b.fn[m]=function(q){var p=this;if(!g(p)){return o.call(p,q)}if(q!==e){p.filter(":tinymce").each(function(s,t){var r=h(t);r&&r.setContent(l?q+r.getContent():r.getContent()+q)});o.call(p.not(":tinymce"),q);return p}}});b.each(["remove","replaceWith","replaceAll","empty"],function(m,l){var n=j[l]=b.fn[l];b.fn[l]=function(){i.call(this,l);return n.apply(this,arguments)}});j.attr=b.fn.attr;b.fn.attr=function(n,q,o){var m=this;if((!n)||(n!=="value")||(!g(m))){return j.attr.call(m,n,q,o)}if(q!==e){k.call(m.filter(":tinymce"),q);j.attr.call(m.not(":tinymce"),n,q,o);return m}else{var p=m[0],l=h(p);return l?l.getContent():j.attr.call(b(p),n,q,o)}}}})(jQuery); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/.svn/text-base/license.txt.svn-base b/assets/tinymce/jscripts/tiny_mce/.svn/text-base/license.txt.svn-base new file mode 100644 index 0000000..60d6d4c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/.svn/text-base/license.txt.svn-base @@ -0,0 +1,504 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/assets/tinymce/jscripts/tiny_mce/.svn/text-base/tiny_mce.js.svn-base b/assets/tinymce/jscripts/tiny_mce/.svn/text-base/tiny_mce.js.svn-base new file mode 100644 index 0000000..085b7d2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/.svn/text-base/tiny_mce.js.svn-base @@ -0,0 +1 @@ +(function(c){var a=/^\s*|\s*$/g,d;var b={majorVersion:"3",minorVersion:"3",releaseDate:"2010-03-10",_init:function(){var r=this,o=document,m=navigator,f=m.userAgent,l,e,k,j,h,q;r.isOpera=c.opera&&opera.buildNumber;r.isWebKit=/WebKit/.test(f);r.isIE=!r.isWebKit&&!r.isOpera&&(/MSIE/gi).test(f)&&(/Explorer/gi).test(m.appName);r.isIE6=r.isIE&&/MSIE [56]/.test(f);r.isGecko=!r.isWebKit&&/Gecko/.test(f);r.isMac=f.indexOf("Mac")!=-1;r.isAir=/adobeair/i.test(f);if(c.tinyMCEPreInit){r.suffix=tinyMCEPreInit.suffix;r.baseURL=tinyMCEPreInit.base;r.query=tinyMCEPreInit.query;return}r.suffix="";e=o.getElementsByTagName("base");for(l=0;l=c.length){for(e=0,b=g.length;e=c.length||g[e]!=c[e]){f=e+1;break}}}if(g.length=g.length||g[e]!=c[e]){f=e+1;break}}}if(f==1){return h}for(e=0,b=g.length-(f-1);e=0;c--){if(f[c].length==0||f[c]=="."){continue}if(f[c]==".."){b++;continue}if(b>0){b--;continue}h.push(f[c])}c=e.length-b;if(c<=0){g=h.reverse().join("/")}else{g=e.slice(0,c).join("/")+"/"+h.reverse().join("/")}if(g.indexOf("/")!==0){g="/"+g}if(d&&g.lastIndexOf("/")!==g.length-1){g+=d}return g},getURI:function(d){var c,b=this;if(!b.source||d){c="";if(!d){if(b.protocol){c+=b.protocol+"://"}if(b.userInfo){c+=b.userInfo+"@"}if(b.host){c+=b.host}if(b.port){c+=":"+b.port}}if(b.path){c+=b.path}if(b.query){c+="?"+b.query}if(b.anchor){c+="#"+b.anchor}b.source=c}return b.source}})})();(function(){var a=tinymce.each;tinymce.create("static tinymce.util.Cookie",{getHash:function(d){var b=this.get(d),c;if(b){a(b.split("&"),function(e){e=e.split("=");c=c||{};c[unescape(e[0])]=unescape(e[1])})}return c},setHash:function(j,b,g,f,i,c){var h="";a(b,function(e,d){h+=(!h?"":"&")+escape(d)+"="+escape(e)});this.set(j,h,g,f,i,c)},get:function(i){var h=document.cookie,g,f=i+"=",d;if(!h){return}d=h.indexOf("; "+f);if(d==-1){d=h.indexOf(f);if(d!=0){return null}}else{d+=2}g=h.indexOf(";",d);if(g==-1){g=h.length}return unescape(h.substring(d+f.length,g))},set:function(i,b,g,f,h,c){document.cookie=i+"="+escape(b)+((g)?"; expires="+g.toGMTString():"")+((f)?"; path="+escape(f):"")+((h)?"; domain="+h:"")+((c)?"; secure":"")},remove:function(e,b){var c=new Date();c.setTime(c.getTime()-1000);this.set(e,"",c,b,c)}})})();tinymce.create("static tinymce.util.JSON",{serialize:function(e){var c,a,d=tinymce.util.JSON.serialize,b;if(e==null){return"null"}b=typeof e;if(b=="string"){a="\bb\tt\nn\ff\rr\"\"''\\\\";return'"'+e.replace(/([\u0080-\uFFFF\x00-\x1f\"])/g,function(g,f){c=a.indexOf(f);if(c+1){return"\\"+a.charAt(c+1)}g=f.charCodeAt().toString(16);return"\\u"+"0000".substring(g.length)+g})+'"'}if(b=="object"){if(e.hasOwnProperty&&e instanceof Array){for(c=0,a="[";c0?",":"")+d(e[c])}return a+"]"}a="{";for(c in e){a+=typeof e[c]!="function"?(a.length>1?',"':'"')+c+'":'+d(e[c]):""}return a+"}"}return""+e},parse:function(s){try{return eval("("+s+")")}catch(ex){}}});tinymce.create("static tinymce.util.XHR",{send:function(g){var a,e,b=window,h=0;g.scope=g.scope||this;g.success_scope=g.success_scope||g.scope;g.error_scope=g.error_scope||g.scope;g.async=g.async===false?false:true;g.data=g.data||"";function d(i){a=0;try{a=new ActiveXObject(i)}catch(c){}return a}a=b.XMLHttpRequest?new XMLHttpRequest():d("Microsoft.XMLHTTP")||d("Msxml2.XMLHTTP");if(a){if(a.overrideMimeType){a.overrideMimeType(g.content_type)}a.open(g.type||(g.data?"POST":"GET"),g.url,g.async);if(g.content_type){a.setRequestHeader("Content-Type",g.content_type)}a.setRequestHeader("X-Requested-With","XMLHttpRequest");a.send(g.data);function f(){if(!g.async||a.readyState==4||h++>10000){if(g.success&&h<10000&&a.status==200){g.success.call(g.success_scope,""+a.responseText,a,g)}else{if(g.error){g.error.call(g.error_scope,h>10000?"TIMED_OUT":"GENERAL",a,g)}}a=null}else{b.setTimeout(f,10)}}if(!g.async){return f()}e=b.setTimeout(f,10)}}});(function(){var c=tinymce.extend,b=tinymce.util.JSON,a=tinymce.util.XHR;tinymce.create("tinymce.util.JSONRequest",{JSONRequest:function(d){this.settings=c({},d);this.count=0},send:function(f){var e=f.error,d=f.success;f=c(this.settings,f);f.success=function(h,g){h=b.parse(h);if(typeof(h)=="undefined"){h={error:"JSON Parse error."}}if(h.error){e.call(f.error_scope||f.scope,h.error,g)}else{d.call(f.success_scope||f.scope,h.result)}};f.error=function(h,g){e.call(f.error_scope||f.scope,h,g)};f.data=b.serialize({id:f.id||"c"+(this.count++),method:f.method,params:f.params});f.content_type="application/json";a.send(f)},"static":{sendRPC:function(d){return new tinymce.util.JSONRequest().send(d)}}})}());(function(m){var k=m.each,j=m.is,i=m.isWebKit,d=m.isIE,a=/^(H[1-6R]|P|DIV|ADDRESS|PRE|FORM|T(ABLE|BODY|HEAD|FOOT|H|R|D)|LI|OL|UL|CAPTION|BLOCKQUOTE|CENTER|DL|DT|DD|DIR|FIELDSET|NOSCRIPT|MENU|ISINDEX|SAMP)$/,e=g("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected"),f=g("src,href,style,coords,shape"),c={"&":"&",'"':""","<":"<",">":">"},n=/[<>&\"]/g,b=/^([a-z0-9],?)+$/i,h=/<(\w+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)(\s*\/?)>/g,l=/(\w+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g;function g(q){var p={},o;q=q.split(",");for(o=q.length;o>=0;o--){p[q[o]]=1}return p}m.create("tinymce.dom.DOMUtils",{doc:null,root:null,files:null,pixelStyles:/^(top|left|bottom|right|width|height|borderWidth)$/,props:{"for":"htmlFor","class":"className",className:"className",checked:"checked",disabled:"disabled",maxlength:"maxLength",readonly:"readOnly",selected:"selected",value:"value",id:"id",name:"name",type:"type"},DOMUtils:function(u,q){var p=this,o;p.doc=u;p.win=window;p.files={};p.cssFlicker=false;p.counter=0;p.boxModel=!m.isIE||u.compatMode=="CSS1Compat";p.stdMode=u.documentMode===8;p.settings=q=m.extend({keep_values:false,hex_colors:1,process_html:1},q);if(m.isIE6){try{u.execCommand("BackgroundImageCache",false,true)}catch(r){p.cssFlicker=true}}if(q.valid_styles){p._styles={};k(q.valid_styles,function(t,s){p._styles[s]=m.explode(t)})}m.addUnload(p.destroy,p)},getRoot:function(){var o=this,p=o.settings;return(p&&o.get(p.root_element))||o.doc.body},getViewPort:function(p){var q,o;p=!p?this.win:p;q=p.document;o=this.boxModel?q.documentElement:q.body;return{x:p.pageXOffset||o.scrollLeft,y:p.pageYOffset||o.scrollTop,w:p.innerWidth||o.clientWidth,h:p.innerHeight||o.clientHeight}},getRect:function(s){var r,o=this,q;s=o.get(s);r=o.getPos(s);q=o.getSize(s);return{x:r.x,y:r.y,w:q.w,h:q.h}},getSize:function(r){var p=this,o,q;r=p.get(r);o=p.getStyle(r,"width");q=p.getStyle(r,"height");if(o.indexOf("px")===-1){o=0}if(q.indexOf("px")===-1){q=0}return{w:parseInt(o)||r.offsetWidth||r.clientWidth,h:parseInt(q)||r.offsetHeight||r.clientHeight}},getParent:function(q,p,o){return this.getParents(q,p,o,false)},getParents:function(z,v,s,y){var q=this,p,u=q.settings,x=[];z=q.get(z);y=y===undefined;if(u.strict_root){s=s||q.getRoot()}if(j(v,"string")){p=v;if(v==="*"){v=function(o){return o.nodeType==1}}else{v=function(o){return q.is(o,p)}}}while(z){if(z==s||!z.nodeType||z.nodeType===9){break}if(!v||v(z)){if(y){x.push(z)}else{return z}}z=z.parentNode}return y?x:null},get:function(o){var p;if(o&&this.doc&&typeof(o)=="string"){p=o;o=this.doc.getElementById(o);if(o&&o.id!==p){return this.doc.getElementsByName(p)[1]}}return o},getNext:function(p,o){return this._findSib(p,o,"nextSibling")},getPrev:function(p,o){return this._findSib(p,o,"previousSibling")},add:function(s,v,o,r,u){var q=this;return this.run(s,function(y){var x,t;x=j(v,"string")?q.doc.createElement(v):v;q.setAttribs(x,o);if(r){if(r.nodeType){x.appendChild(r)}else{q.setHTML(x,r)}}return !u?y.appendChild(x):x})},create:function(q,o,p){return this.add(this.doc.createElement(q),q,o,p,1)},createHTML:function(v,p,s){var u="",r=this,q;u+="<"+v;for(q in p){if(p.hasOwnProperty(q)){u+=" "+q+'="'+r.encode(p[q])+'"'}}if(m.is(s)){return u+">"+s+""}return u+" />"},remove:function(o,p){return this.run(o,function(r){var q,s;q=r.parentNode;if(!q){return null}if(p){while(s=r.firstChild){if(s.nodeType!==3||s.nodeValue){q.insertBefore(s,r)}else{r.removeChild(s)}}}return q.removeChild(r)})},setStyle:function(r,o,p){var q=this;return q.run(r,function(v){var u,t;u=v.style;o=o.replace(/-(\D)/g,function(x,s){return s.toUpperCase()});if(q.pixelStyles.test(o)&&(m.is(p,"number")||/^[\-0-9\.]+$/.test(p))){p+="px"}switch(o){case"opacity":if(d){u.filter=p===""?"":"alpha(opacity="+(p*100)+")";if(!r.currentStyle||!r.currentStyle.hasLayout){u.display="inline-block"}}u[o]=u["-moz-opacity"]=u["-khtml-opacity"]=p||"";break;case"float":d?u.styleFloat=p:u.cssFloat=p;break;default:u[o]=p||""}if(q.settings.update_styles){q.setAttrib(v,"_mce_style")}})},getStyle:function(r,o,q){r=this.get(r);if(!r){return false}if(this.doc.defaultView&&q){o=o.replace(/[A-Z]/g,function(s){return"-"+s});try{return this.doc.defaultView.getComputedStyle(r,null).getPropertyValue(o)}catch(p){return null}}o=o.replace(/-(\D)/g,function(t,s){return s.toUpperCase()});if(o=="float"){o=d?"styleFloat":"cssFloat"}if(r.currentStyle&&q){return r.currentStyle[o]}return r.style[o]},setStyles:function(u,v){var q=this,r=q.settings,p;p=r.update_styles;r.update_styles=0;k(v,function(o,s){q.setStyle(u,s,o)});r.update_styles=p;if(r.update_styles){q.setAttrib(u,r.cssText)}},setAttrib:function(q,r,o){var p=this;if(!q||!r){return}if(p.settings.strict){r=r.toLowerCase()}return this.run(q,function(u){var t=p.settings;switch(r){case"style":if(!j(o,"string")){k(o,function(s,x){p.setStyle(u,x,s)});return}if(t.keep_values){if(o&&!p._isRes(o)){u.setAttribute("_mce_style",o,2)}else{u.removeAttribute("_mce_style",2)}}u.style.cssText=o;break;case"class":u.className=o||"";break;case"src":case"href":if(t.keep_values){if(t.url_converter){o=t.url_converter.call(t.url_converter_scope||p,o,r,u)}p.setAttrib(u,"_mce_"+r,o,2)}break;case"shape":u.setAttribute("_mce_style",o);break}if(j(o)&&o!==null&&o.length!==0){u.setAttribute(r,""+o,2)}else{u.removeAttribute(r,2)}})},setAttribs:function(q,r){var p=this;return this.run(q,function(o){k(r,function(s,t){p.setAttrib(o,t,s)})})},getAttrib:function(r,s,q){var o,p=this;r=p.get(r);if(!r||r.nodeType!==1){return false}if(!j(q)){q=""}if(/^(src|href|style|coords|shape)$/.test(s)){o=r.getAttribute("_mce_"+s);if(o){return o}}if(d&&p.props[s]){o=r[p.props[s]];o=o&&o.nodeValue?o.nodeValue:o}if(!o){o=r.getAttribute(s,2)}if(/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(s)){if(r[p.props[s]]===true&&o===""){return s}return o?s:""}if(r.nodeName==="FORM"&&r.getAttributeNode(s)){return r.getAttributeNode(s).nodeValue}if(s==="style"){o=o||r.style.cssText;if(o){o=p.serializeStyle(p.parseStyle(o),r.nodeName);if(p.settings.keep_values&&!p._isRes(o)){r.setAttribute("_mce_style",o)}}}if(i&&s==="class"&&o){o=o.replace(/(apple|webkit)\-[a-z\-]+/gi,"")}if(d){switch(s){case"rowspan":case"colspan":if(o===1){o=""}break;case"size":if(o==="+0"||o===20||o===0){o=""}break;case"width":case"height":case"vspace":case"checked":case"disabled":case"readonly":if(o===0){o=""}break;case"hspace":if(o===-1){o=""}break;case"maxlength":case"tabindex":if(o===32768||o===2147483647||o==="32768"){o=""}break;case"multiple":case"compact":case"noshade":case"nowrap":if(o===65535){return s}return q;case"shape":o=o.toLowerCase();break;default:if(s.indexOf("on")===0&&o){o=(""+o).replace(/^function\s+\w+\(\)\s+\{\s+(.*)\s+\}$/,"$1")}}}return(o!==undefined&&o!==null&&o!=="")?""+o:q},getPos:function(A,s){var p=this,o=0,z=0,u,v=p.doc,q;A=p.get(A);s=s||v.body;if(A){if(d&&!p.stdMode){A=A.getBoundingClientRect();u=p.boxModel?v.documentElement:v.body;o=p.getStyle(p.select("html")[0],"borderWidth");o=(o=="medium"||p.boxModel&&!p.isIE6)&&2||o;A.top+=p.win.self!=p.win.top?2:0;return{x:A.left+u.scrollLeft-o,y:A.top+u.scrollTop-o}}q=A;while(q&&q!=s&&q.nodeType){o+=q.offsetLeft||0;z+=q.offsetTop||0;q=q.offsetParent}q=A.parentNode;while(q&&q!=s&&q.nodeType){o-=q.scrollLeft||0;z-=q.scrollTop||0;q=q.parentNode}}return{x:o,y:z}},parseStyle:function(r){var u=this,v=u.settings,x={};if(!r){return x}function p(D,A,C){var z,B,o,y;z=x[D+"-top"+A];if(!z){return}B=x[D+"-right"+A];if(z!=B){return}o=x[D+"-bottom"+A];if(B!=o){return}y=x[D+"-left"+A];if(o!=y){return}x[C]=y;delete x[D+"-top"+A];delete x[D+"-right"+A];delete x[D+"-bottom"+A];delete x[D+"-left"+A]}function q(y,s,o,A){var z;z=x[s];if(!z){return}z=x[o];if(!z){return}z=x[A];if(!z){return}x[y]=x[s]+" "+x[o]+" "+x[A];delete x[s];delete x[o];delete x[A]}r=r.replace(/&(#?[a-z0-9]+);/g,"&$1_MCE_SEMI_");k(r.split(";"),function(s){var o,t=[];if(s){s=s.replace(/_MCE_SEMI_/g,";");s=s.replace(/url\([^\)]+\)/g,function(y){t.push(y);return"url("+t.length+")"});s=s.split(":");o=m.trim(s[1]);o=o.replace(/url\(([^\)]+)\)/g,function(z,y){return t[parseInt(y)-1]});o=o.replace(/rgb\([^\)]+\)/g,function(y){return u.toHex(y)});if(v.url_converter){o=o.replace(/url\([\'\"]?([^\)\'\"]+)[\'\"]?\)/g,function(y,z){return"url("+v.url_converter.call(v.url_converter_scope||u,u.decode(z),"style",null)+")"})}x[m.trim(s[0]).toLowerCase()]=o}});p("border","","border");p("border","-width","border-width");p("border","-color","border-color");p("border","-style","border-style");p("padding","","padding");p("margin","","margin");q("border","border-width","border-style","border-color");if(d){if(x.border=="medium none"){x.border=""}}return x},serializeStyle:function(v,p){var q=this,r="";function u(s,o){if(o&&s){if(o.indexOf("-")===0){return}switch(o){case"font-weight":if(s==700){s="bold"}break;case"color":case"background-color":s=s.toLowerCase();break}r+=(r?" ":"")+o+": "+s+";"}}if(p&&q._styles){k(q._styles["*"],function(o){u(v[o],o)});k(q._styles[p.toLowerCase()],function(o){u(v[o],o)})}else{k(v,u)}return r},loadCSS:function(o){var q=this,r=q.doc,p;if(!o){o=""}p=q.select("head")[0];k(o.split(","),function(s){var t;if(q.files[s]){return}q.files[s]=true;t=q.create("link",{rel:"stylesheet",href:m._addVer(s)});if(d&&r.documentMode){t.onload=function(){r.recalc();t.onload=null}}p.appendChild(t)})},addClass:function(o,p){return this.run(o,function(q){var r;if(!p){return 0}if(this.hasClass(q,p)){return q.className}r=this.removeClass(q,p);return q.className=(r!=""?(r+" "):"")+p})},removeClass:function(q,r){var o=this,p;return o.run(q,function(t){var s;if(o.hasClass(t,r)){if(!p){p=new RegExp("(^|\\s+)"+r+"(\\s+|$)","g")}s=t.className.replace(p," ");s=m.trim(s!=" "?s:"");t.className=s;if(!s){t.removeAttribute("class")}return s}return t.className})},hasClass:function(p,o){p=this.get(p);if(!p||!o){return false}return(" "+p.className+" ").indexOf(" "+o+" ")!==-1},show:function(o){return this.setStyle(o,"display","block")},hide:function(o){return this.setStyle(o,"display","none")},isHidden:function(o){o=this.get(o);return !o||o.style.display=="none"||this.getStyle(o,"display")=="none"},uniqueId:function(o){return(!o?"mce_":o)+(this.counter++)},setHTML:function(q,p){var o=this;return this.run(q,function(v){var r,t,s,z,u,r;p=o.processHTML(p);if(d){function y(){while(v.firstChild){v.firstChild.removeNode()}try{v.innerHTML="
"+p;v.removeChild(v.firstChild)}catch(x){r=o.create("div");r.innerHTML="
"+p;k(r.childNodes,function(B,A){if(A){v.appendChild(B)}})}}if(o.settings.fix_ie_paragraphs){p=p.replace(/

<\/p>|]+)><\/p>|/gi,' 

')}y();if(o.settings.fix_ie_paragraphs){s=v.getElementsByTagName("p");for(t=s.length-1,r=0;t>=0;t--){z=s[t];if(!z.hasChildNodes()){if(!z._mce_keep){r=1;break}z.removeAttribute("_mce_keep")}}}if(r){p=p.replace(/

]+)>|

/ig,'

');p=p.replace(/<\/p>/g,"
");y();if(o.settings.fix_ie_paragraphs){s=v.getElementsByTagName("DIV");for(t=s.length-1;t>=0;t--){z=s[t];if(z._mce_tmp){u=o.doc.createElement("p");z.cloneNode(false).outerHTML.replace(/([a-z0-9\-_]+)=/gi,function(A,x){var B;if(x!=="_mce_tmp"){B=z.getAttribute(x);if(!B&&x==="class"){B=z.className}u.setAttribute(x,B)}});for(r=0;r]+)\/>|/gi,"");if(q.keep_values){if(/)/g,"\n");t=t.replace(/^[\r\n]*|[\r\n]*$/g,"");t=t.replace(/^\s*(\/\/\s*|\]\]>|-->|\]\]-->)\s*$/g,"");return t}r=r.replace(/]+|)>([\s\S]*?)<\/script>/gi,function(s,x,t){if(!x){x=' type="text/javascript"'}x=x.replace(/src=\"([^\"]+)\"?/i,function(y,z){if(q.url_converter){z=p.encode(q.url_converter.call(q.url_converter_scope||p,p.decode(z),"src","script"))}return'_mce_src="'+z+'"'});if(m.trim(t)){v.push(o(t));t=""}return""+t+""});r=r.replace(/]+|)>([\s\S]*?)<\/style>/gi,function(s,x,t){if(t){v.push(o(t));t=""}return""+t+""});r=r.replace(/]+|)>([\s\S]*?)<\/noscript>/g,function(s,x,t){return""})}r=r.replace(//g,"");function u(s){return s.replace(h,function(y,z,x,t){return"<"+z+x.replace(l,function(B,A,E,D,C){var F;A=A.toLowerCase();E=E||D||C||"";if(e[A]){if(E==="false"||E==="0"){return}return A+'="'+A+'"'}if(f[A]&&x.indexOf("_mce_"+A)==-1){F=p.decode(E);if(q.url_converter&&(A=="src"||A=="href")){F=q.url_converter.call(q.url_converter_scope||p,F,A,z)}if(A=="style"){F=p.serializeStyle(p.parseStyle(F),A)}return A+'="'+E+'" _mce_'+A+'="'+p.encode(F)+'"'}return B})+t+">"})}r=u(r);r=r.replace(/MCE_SCRIPT:([0-9]+)/g,function(t,s){return v[s]})}return r},getOuterHTML:function(o){var p;o=this.get(o);if(!o){return null}if(o.outerHTML!==undefined){return o.outerHTML}p=(o.ownerDocument||this.doc).createElement("body");p.appendChild(o.cloneNode(true));return p.innerHTML},setOuterHTML:function(r,p,s){var o=this;function q(u,t,x){var y,v;v=x.createElement("body");v.innerHTML=t;y=v.lastChild;while(y){o.insertAfter(y.cloneNode(true),u);y=y.previousSibling}o.remove(u)}return this.run(r,function(u){u=o.get(u);if(u.nodeType==1){s=s||u.ownerDocument||o.doc;if(d){try{if(d&&u.nodeType==1){u.outerHTML=p}else{q(u,p,s)}}catch(t){q(u,p,s)}}else{q(u,p,s)}}})},decode:function(p){var q,r,o;if(/&[\w#]+;/.test(p)){q=this.doc.createElement("div");q.innerHTML=p;r=q.firstChild;o="";if(r){do{o+=r.nodeValue}while(r=r.nextSibling)}return o||p}return p},encode:function(o){return(""+o).replace(n,function(p){return c[p]})},insertAfter:function(o,p){p=this.get(p);return this.run(o,function(r){var q,s;q=p.parentNode;s=p.nextSibling;if(s){q.insertBefore(r,s)}else{q.appendChild(r)}return r})},isBlock:function(o){if(o.nodeType&&o.nodeType!==1){return false}o=o.nodeName||o;return a.test(o)},replace:function(s,r,p){var q=this;if(j(r,"array")){s=s.cloneNode(true)}return q.run(r,function(t){if(p){k(m.grep(t.childNodes),function(o){s.appendChild(o)})}return t.parentNode.replaceChild(s,t)})},rename:function(r,o){var q=this,p;if(r.nodeName!=o.toUpperCase()){p=q.create(o);k(q.getAttribs(r),function(s){q.setAttrib(p,s.nodeName,q.getAttrib(r,s.nodeName))});q.replace(p,r,1)}return p||r},findCommonAncestor:function(q,o){var r=q,p;while(r){p=o;while(p&&r!=p){p=p.parentNode}if(r==p){break}r=r.parentNode}if(!r&&q.ownerDocument){return q.ownerDocument.documentElement}return r},toHex:function(o){var q=/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(o);function p(r){r=parseInt(r).toString(16);return r.length>1?r:"0"+r}if(q){o="#"+p(q[1])+p(q[2])+p(q[3]);return o}return o},getClasses:function(){var s=this,o=[],r,u={},v=s.settings.class_filter,q;if(s.classes){return s.classes}function x(t){k(t.imports,function(y){x(y)});k(t.cssRules||t.rules,function(y){switch(y.type||1){case 1:if(y.selectorText){k(y.selectorText.split(","),function(z){z=z.replace(/^\s*|\s*$|^\s\./g,"");if(/\.mce/.test(z)||!/\.[\w\-]+$/.test(z)){return}q=z;z=z.replace(/.*\.([a-z0-9_\-]+).*/i,"$1");if(v&&!(z=v(z,q))){return}if(!u[z]){o.push({"class":z});u[z]=1}})}break;case 3:x(y.styleSheet);break}})}try{k(s.doc.styleSheets,x)}catch(p){}if(o.length>0){s.classes=o}return o},run:function(u,r,q){var p=this,v;if(p.doc&&typeof(u)==="string"){u=p.get(u)}if(!u){return false}q=q||this;if(!u.nodeType&&(u.length||u.length===0)){v=[];k(u,function(s,o){if(s){if(typeof(s)=="string"){s=p.doc.getElementById(s)}v.push(r.call(q,s,o))}});return v}return r.call(q,u)},getAttribs:function(q){var p;q=this.get(q);if(!q){return[]}if(d){p=[];if(q.nodeName=="OBJECT"){return q.attributes}if(q.nodeName==="OPTION"&&this.getAttrib(q,"selected")){p.push({specified:1,nodeName:"selected"})}q.cloneNode(false).outerHTML.replace(/<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi,"").replace(/[\w:\-]+/gi,function(o){p.push({specified:1,nodeName:o})});return p}return q.attributes},destroy:function(p){var o=this;if(o.events){o.events.destroy()}o.win=o.doc=o.root=o.events=null;if(!p){m.removeUnload(o.destroy)}},createRng:function(){var o=this.doc;return o.createRange?o.createRange():new m.dom.Range(this)},nodeIndex:function(r,s){var o=0,q,p;if(r){for(r=r.previousSibling,q=r;r;r=r.previousSibling){p=r.nodeType;if(s&&p==3){if(r.nodeValue.length>0&&(q.nodeType!=p||q.nodeValue.length===0)){o++}}else{o++}q=r}}return o},split:function(u,s,y){var z=this,o=z.createRng(),v,q,x;function p(A){var t,r=A.childNodes;if(A.nodeType==1&&A.getAttribute("_mce_type")=="bookmark"){return}for(t=r.length-1;t>=0;t--){p(r[t])}if(A.nodeType!=9){if(A.nodeType==3&&A.nodeValue.length>0){return}if(A.nodeType==1){r=A.childNodes;if(r.length==1&&r[0]&&r[0].nodeType==1&&r[0].getAttribute("_mce_type")=="bookmark"){A.parentNode.insertBefore(r[0],A)}if(r.length||/^(br|hr|input|img)$/i.test(A.nodeName)){return}}z.remove(A)}return A}if(u&&s){o.setStart(u.parentNode,z.nodeIndex(u));o.setEnd(s.parentNode,z.nodeIndex(s));v=o.extractContents();o=z.createRng();o.setStart(s.parentNode,z.nodeIndex(s)+1);o.setEnd(u.parentNode,z.nodeIndex(u)+1);q=o.extractContents();x=u.parentNode;x.insertBefore(p(v),u);if(y){x.replaceChild(y,s)}else{x.insertBefore(s,u)}x.insertBefore(p(q),u);z.remove(u);return y||s}},bind:function(s,o,r,q){var p=this;if(!p.events){p.events=new m.dom.EventUtils()}return p.events.add(s,o,r,q||this)},unbind:function(r,o,q){var p=this;if(!p.events){p.events=new m.dom.EventUtils()}return p.events.remove(r,o,q)},_findSib:function(r,o,p){var q=this,s=o;if(r){if(j(s,"string")){s=function(t){return q.is(t,o)}}for(r=r[p];r;r=r[p]){if(s(r)){return r}}}return null},_isRes:function(o){return/^(top|left|bottom|right|width|height)/i.test(o)||/;\s*(top|left|bottom|right|width|height)/i.test(o)}});m.DOM=new m.dom.DOMUtils(document,{process_html:0})})(tinymce);(function(a){function b(c){var N=this,e=c.doc,S=0,E=1,j=2,D=true,R=false,U="startOffset",h="startContainer",P="endContainer",z="endOffset",k=tinymce.extend,n=c.nodeIndex;k(N,{startContainer:e,startOffset:0,endContainer:e,endOffset:0,collapsed:D,commonAncestorContainer:e,START_TO_START:0,START_TO_END:1,END_TO_END:2,END_TO_START:3,setStart:q,setEnd:s,setStartBefore:g,setStartAfter:I,setEndBefore:J,setEndAfter:u,collapse:A,selectNode:x,selectNodeContents:F,compareBoundaryPoints:v,deleteContents:p,extractContents:H,cloneContents:d,insertNode:C,surroundContents:M,cloneRange:K});function q(V,t){B(D,V,t)}function s(V,t){B(R,V,t)}function g(t){q(t.parentNode,n(t))}function I(t){q(t.parentNode,n(t)+1)}function J(t){s(t.parentNode,n(t))}function u(t){s(t.parentNode,n(t)+1)}function A(t){if(t){N[P]=N[h];N[z]=N[U]}else{N[h]=N[P];N[U]=N[z]}N.collapsed=D}function x(t){g(t);u(t)}function F(t){q(t,0);s(t,t.nodeType===1?t.childNodes.length:t.nodeValue.length)}function v(W,X){var Z=N[h],Y=N[U],V=N[P],t=N[z];if(W===0){return G(Z,Y,Z,Y)}if(W===1){return G(Z,Y,V,t)}if(W===2){return G(V,t,V,t)}if(W===3){return G(V,t,Z,Y)}}function p(){m(j)}function H(){return m(S)}function d(){return m(E)}function C(Y){var V=this[h],t=this[U],X,W;if((V.nodeType===3||V.nodeType===4)&&V.nodeValue){if(!t){V.parentNode.insertBefore(Y,V)}else{if(t>=V.nodeValue.length){c.insertAfter(Y,V)}else{X=V.splitText(t);V.parentNode.insertBefore(Y,X)}}}else{if(V.childNodes.length>0){W=V.childNodes[t]}if(W){V.insertBefore(Y,W)}else{V.appendChild(Y)}}}function M(V){var t=N.extractContents();N.insertNode(V);V.appendChild(t);N.selectNode(V)}function K(){return k(new b(c),{startContainer:N[h],startOffset:N[U],endContainer:N[P],endOffset:N[z],collapsed:N.collapsed,commonAncestorContainer:N.commonAncestorContainer})}function O(t,V){var W;if(t.nodeType==3){return t}if(V<0){return t}W=t.firstChild;while(W&&V>0){--V;W=W.nextSibling}if(W){return W}return t}function l(){return(N[h]==N[P]&&N[U]==N[z])}function G(X,Z,V,Y){var aa,W,t,ab,ad,ac;if(X==V){if(Z==Y){return 0}if(Z0){N.collapse(V)}}else{N.collapse(V)}N.collapsed=l();N.commonAncestorContainer=c.findCommonAncestor(N[h],N[P])}function m(ab){var aa,X=0,ad=0,V,Z,W,Y,t,ac;if(N[h]==N[P]){return f(ab)}for(aa=N[P],V=aa.parentNode;V;aa=V,V=V.parentNode){if(V==N[h]){return r(aa,ab)}++X}for(aa=N[h],V=aa.parentNode;V;aa=V,V=V.parentNode){if(V==N[P]){return T(aa,ab)}++ad}Z=ad-X;W=N[h];while(Z>0){W=W.parentNode;Z--}Y=N[P];while(Z<0){Y=Y.parentNode;Z++}for(t=W.parentNode,ac=Y.parentNode;t!=ac;t=t.parentNode,ac=ac.parentNode){W=t;Y=ac}return o(W,Y,ab)}function f(Z){var ab,Y,X,aa,t,W,V;if(Z!=j){ab=e.createDocumentFragment()}if(N[U]==N[z]){return ab}if(N[h].nodeType==3){Y=N[h].nodeValue;X=Y.substring(N[U],N[z]);if(Z!=E){N[h].deleteData(N[U],N[z]-N[U]);N.collapse(D)}if(Z==j){return}ab.appendChild(e.createTextNode(X));return ab}aa=O(N[h],N[U]);t=N[z]-N[U];while(t>0){W=aa.nextSibling;V=y(aa,Z);if(ab){ab.appendChild(V)}--t;aa=W}if(Z!=E){N.collapse(D)}return ab}function r(ab,Y){var aa,Z,V,t,X,W;if(Y!=j){aa=e.createDocumentFragment()}Z=i(ab,Y);if(aa){aa.appendChild(Z)}V=n(ab);t=V-N[U];if(t<=0){if(Y!=E){N.setEndBefore(ab);N.collapse(R)}return aa}Z=ab.previousSibling;while(t>0){X=Z.previousSibling;W=y(Z,Y);if(aa){aa.insertBefore(W,aa.firstChild)}--t;Z=X}if(Y!=E){N.setEndBefore(ab);N.collapse(R)}return aa}function T(Z,Y){var ab,V,aa,t,X,W;if(Y!=j){ab=e.createDocumentFragment()}aa=Q(Z,Y);if(ab){ab.appendChild(aa)}V=n(Z);++V;t=N[z]-V;aa=Z.nextSibling;while(t>0){X=aa.nextSibling;W=y(aa,Y);if(ab){ab.appendChild(W)}--t;aa=X}if(Y!=E){N.setStartAfter(Z);N.collapse(D)}return ab}function o(Z,t,ac){var W,ae,Y,aa,ab,V,ad,X;if(ac!=j){ae=e.createDocumentFragment()}W=Q(Z,ac);if(ae){ae.appendChild(W)}Y=Z.parentNode;aa=n(Z);ab=n(t);++aa;V=ab-aa;ad=Z.nextSibling;while(V>0){X=ad.nextSibling;W=y(ad,ac);if(ae){ae.appendChild(W)}ad=X;--V}W=i(t,ac);if(ae){ae.appendChild(W)}if(ac!=E){N.setStartAfter(Z);N.collapse(D)}return ae}function i(aa,ab){var W=O(N[P],N[z]-1),ac,Z,Y,t,V,X=W!=N[P];if(W==aa){return L(W,X,R,ab)}ac=W.parentNode;Z=L(ac,R,R,ab);while(ac){while(W){Y=W.previousSibling;t=L(W,X,R,ab);if(ab!=j){Z.insertBefore(t,Z.firstChild)}X=D;W=Y}if(ac==aa){return Z}W=ac.previousSibling;ac=ac.parentNode;V=L(ac,R,R,ab);if(ab!=j){V.appendChild(Z)}Z=V}}function Q(aa,ab){var X=O(N[h],N[U]),Y=X!=N[h],ac,Z,W,t,V;if(X==aa){return L(X,Y,D,ab)}ac=X.parentNode;Z=L(ac,R,D,ab);while(ac){while(X){W=X.nextSibling;t=L(X,Y,D,ab);if(ab!=j){Z.appendChild(t)}Y=D;X=W}if(ac==aa){return Z}X=ac.nextSibling;ac=ac.parentNode;V=L(ac,R,D,ab);if(ab!=j){V.appendChild(Z)}Z=V}}function L(t,Y,ab,ac){var X,W,Z,V,aa;if(Y){return y(t,ac)}if(t.nodeType==3){X=t.nodeValue;if(ab){V=N[U];W=X.substring(V);Z=X.substring(0,V)}else{V=N[z];W=X.substring(0,V);Z=X.substring(V)}if(ac!=E){t.nodeValue=Z}if(ac==j){return}aa=t.cloneNode(R);aa.nodeValue=W;return aa}if(ac==j){return}return t.cloneNode(R)}function y(V,t){if(t!=j){return t==E?V.cloneNode(D):V}V.parentNode.removeChild(V)}}a.Range=b})(tinymce.dom);(function(){function a(h){var j=this,k="\uFEFF",f,i,e=h.dom,d=true,g=false;function c(m,l){if(m&&l){if(m.item&&l.item&&m.item(0)===l.item(0)){return d}if(m.isEqual&&l.isEqual&&l.isEqual(m)){try{f.startContainer.nextSibling;return d}catch(n){}}}return g}function b(){var p=h.getRng(),l=e.createRng(),m,n,r,q;n=p.item?p.item(0):p.parentElement();if(n.ownerDocument!=e.doc){return l}if(p.item||!n.hasChildNodes()){l.setStart(n.parentNode,e.nodeIndex(n));l.setEnd(l.startContainer,l.startOffset+1);return l}m=p.duplicate();r=h.isCollapsed();p.collapse();p.pasteHTML('");if(!r){m.collapse(g);m.pasteHTML('")}function o(x){var t,v,s,u;s=e.get("_mce_"+(x?"start":"end"));u=s.previousSibling;if(u&&u.nodeType==3){t=u;v=t.nodeValue.length;e.remove(s);u=t.nextSibling;if(u&&u.nodeType==3){q=d;t.appendData(u.nodeValue);e.remove(u)}}else{u=s.nextSibling;if(u&&u.nodeType==3){t=u;v=0}else{if(u){v=e.nodeIndex(u)-1}else{v=e.nodeIndex(s)}t=s.parentNode}e.remove(s)}if(x){l.setStart(t,v)}if(!x||r){l.setEnd(t,v)}}o(d);if(!r){o(g)}if(q){j.addRange(l)}return l}this.addRange=function(m){var u,A,z=h.dom.doc,s=z.body,v,o,y,p,t,l,q,r,x,n;this.destroy();y=m.startContainer;p=m.startOffset;t=m.endContainer;l=m.endOffset;u=s.createTextRange();if(y==z||t==z){u=s.createTextRange();u.collapse();u.select();return}if(y.nodeType==1&&y.hasChildNodes()){r=y.childNodes.length-1;if(p>r){x=1;y=y.childNodes[r]}else{y=y.childNodes[p]}if(y.nodeType==3){p=0}}if(t.nodeType==1&&t.hasChildNodes()){r=t.childNodes.length-1;if(l==0){n=1;t=t.childNodes[0]}else{t=t.childNodes[Math.min(r,l-1)];if(t.nodeType==3){l=t.nodeValue.length}}}if(y==t&&y.nodeType==1){if(/^(IMG|TABLE)$/.test(y.nodeName)&&p!=l){u=s.createControlRange();u.addElement(y)}else{u=s.createTextRange();if(!y.hasChildNodes()&&y.canHaveHTML){y.innerHTML=k}u.moveToElementText(y);if(y.innerHTML==k){u.collapse(d);y.removeChild(y.firstChild)}}if(p==l){u.collapse(l<=m.endContainer.childNodes.length-1)}u.select();u.scrollIntoView();return}u=s.createTextRange();q=z.createElement("span");q.innerHTML=" ";if(y.nodeType==3){if(x){e.insertAfter(q,y)}else{y.parentNode.insertBefore(q,y)}u.moveToElementText(q);q.parentNode.removeChild(q);u.move("character",p)}else{u.moveToElementText(y);if(x){u.collapse(g)}}if(y==t&&y.nodeType==3){u.moveEnd("character",l-p);u.select();u.scrollIntoView();return}A=s.createTextRange();if(t.nodeType==3){t.parentNode.insertBefore(q,t);A.moveToElementText(q);q.parentNode.removeChild(q);A.move("character",l);u.setEndPoint("EndToStart",A)}else{A.moveToElementText(t);A.collapse(!!n);u.setEndPoint("EndToEnd",A)}u.select();u.scrollIntoView()};this.getRangeAt=function(){if(!f||!c(i,h.getRng())){f=b();i=h.getRng()}return f};this.destroy=function(){i=f=null};if(h.dom.boxModel){(function(){var r=e.doc,m=r.body,o,p;r.documentElement.unselectable=d;function q(s,v){var t=m.createTextRange();try{t.moveToPoint(s,v)}catch(u){t=null}return t}function n(t){var s;if(t.button){s=q(t.x,t.y);if(s){if(s.compareEndPoints("StartToStart",p)>0){s.setEndPoint("StartToStart",p)}else{s.setEndPoint("EndToEnd",p)}s.select()}}else{l()}}function l(){e.unbind(r,"mouseup",l);e.unbind(r,"mousemove",n);o=0}e.bind(r,"mousedown",function(s){if(s.target.nodeName==="HTML"){if(o){l()}o=1;p=q(s.x,s.y);if(p){e.bind(r,"mouseup",l);e.bind(r,"mousemove",n);p.select()}}})})()}}tinymce.dom.TridentSelection=a})();(function(d){var f=d.each,c=d.DOM,b=d.isIE,e=d.isWebKit,a;d.create("tinymce.dom.EventUtils",{EventUtils:function(){this.inits=[];this.events=[]},add:function(m,p,l,j){var g,h=this,i=h.events,k;if(p instanceof Array){k=[];f(p,function(o){k.push(h.add(m,o,l,j))});return k}if(m&&m.hasOwnProperty&&m instanceof Array){k=[];f(m,function(n){n=c.get(n);k.push(h.add(n,p,l,j))});return k}m=c.get(m);if(!m){return}g=function(n){if(h.disabled){return}n=n||window.event;if(n&&b){if(!n.target){n.target=n.srcElement}d.extend(n,h._stoppers)}if(!j){return l(n)}return l.call(j,n)};if(p=="unload"){d.unloads.unshift({func:g});return g}if(p=="init"){if(h.domLoaded){g()}else{h.inits.push(g)}return g}i.push({obj:m,name:p,func:l,cfunc:g,scope:j});h._add(m,p,g);return l},remove:function(l,m,k){var h=this,g=h.events,i=false,j;if(l&&l.hasOwnProperty&&l instanceof Array){j=[];f(l,function(n){n=c.get(n);j.push(h.remove(n,m,k))});return j}l=c.get(l);f(g,function(o,n){if(o.obj==l&&o.name==m&&(!k||(o.func==k||o.cfunc==k))){g.splice(n,1);h._remove(l,m,o.cfunc);i=true;return false}});return i},clear:function(l){var j=this,g=j.events,h,k;if(l){l=c.get(l);for(h=g.length-1;h>=0;h--){k=g[h];if(k.obj===l){j._remove(k.obj,k.name,k.cfunc);k.obj=k.cfunc=null;g.splice(h,1)}}}},cancel:function(g){if(!g){return false}this.stop(g);return this.prevent(g)},stop:function(g){if(g.stopPropagation){g.stopPropagation()}else{g.cancelBubble=true}return false},prevent:function(g){if(g.preventDefault){g.preventDefault()}else{g.returnValue=false}return false},destroy:function(){var g=this;f(g.events,function(j,h){g._remove(j.obj,j.name,j.cfunc);j.obj=j.cfunc=null});g.events=[];g=null},_add:function(h,i,g){if(h.attachEvent){h.attachEvent("on"+i,g)}else{if(h.addEventListener){h.addEventListener(i,g,false)}else{h["on"+i]=g}}},_remove:function(i,j,h){if(i){try{if(i.detachEvent){i.detachEvent("on"+j,h)}else{if(i.removeEventListener){i.removeEventListener(j,h,false)}else{i["on"+j]=null}}}catch(g){}}},_pageInit:function(h){var g=this;if(g.domLoaded){return}g.domLoaded=true;f(g.inits,function(i){i()});g.inits=[]},_wait:function(i){var g=this,h=i.document;if(i.tinyMCE_GZ&&tinyMCE_GZ.loaded){g.domLoaded=1;return}if(h.attachEvent){h.attachEvent("onreadystatechange",function(){if(h.readyState==="complete"){h.detachEvent("onreadystatechange",arguments.callee);g._pageInit(i)}});if(h.documentElement.doScroll&&i==i.top){(function(){if(g.domLoaded){return}try{h.documentElement.doScroll("left")}catch(j){setTimeout(arguments.callee,0);return}g._pageInit(i)})()}}else{if(h.addEventListener){g._add(i,"DOMContentLoaded",function(){g._pageInit(i)})}}g._add(i,"load",function(){g._pageInit(i)})},_stoppers:{preventDefault:function(){this.returnValue=false},stopPropagation:function(){this.cancelBubble=true}}});a=d.dom.Event=new d.dom.EventUtils();a._wait(window);d.addUnload(function(){a.destroy()})})(tinymce);(function(a){a.dom.Element=function(f,d){var b=this,e,c;b.settings=d=d||{};b.id=f;b.dom=e=d.dom||a.DOM;if(!a.isIE){c=e.get(b.id)}a.each(("getPos,getRect,getParent,add,setStyle,getStyle,setStyles,setAttrib,setAttribs,getAttrib,addClass,removeClass,hasClass,getOuterHTML,setOuterHTML,remove,show,hide,isHidden,setHTML,get").split(/,/),function(g){b[g]=function(){var h=[f],j;for(j=0;j_';if(j.startContainer==k&&j.endContainer==k){k.body.innerHTML=i}else{j.deleteContents();j.insertNode(f.getRng().createContextualFragment(i))}l=f.dom.get("__caret");j=k.createRange();j.setStartBefore(l);j.setEndBefore(l);f.setRng(j);f.dom.remove("__caret")}else{if(j.item){k.execCommand("Delete",false,null);j=f.getRng()}j.pasteHTML(i)}f.onSetContent.dispatch(f,g)},getStart:function(){var f=this,g=f.getRng(),h;if(a){if(g.item){return g.item(0)}g=g.duplicate();g.collapse(1);h=g.parentElement();if(h&&h.nodeName=="BODY"){return h.firstChild||h}return h}else{h=g.startContainer;if(h.nodeType==1&&h.hasChildNodes()){h=h.childNodes[Math.min(h.childNodes.length-1,g.startOffset)]}if(h&&h.nodeType==3){return h.parentNode}return h}},getEnd:function(){var g=this,h=g.getRng(),i,f;if(a){if(h.item){return h.item(0)}h=h.duplicate();h.collapse(0);i=h.parentElement();if(i&&i.nodeName=="BODY"){return i.lastChild||i}return i}else{i=h.endContainer;f=h.endOffset;if(i.nodeType==1&&i.hasChildNodes()){i=i.childNodes[f>0?f-1:f]}if(i&&i.nodeType==3){return i.parentNode}return i}},getBookmark:function(q,r){var u=this,m=u.dom,g,j,i,n,h,o,p,l="\uFEFF",s;function f(v,x){var t=0;d(m.select(v),function(z,y){if(z==x){t=y}});return t}if(q==2){function k(){var v=u.getRng(true),t=m.getRoot(),x={};function y(z,B){var F=[],D,H,A=z[B?"startContainer":"endContainer"],E=z[B?"startOffset":"endOffset"],C,G={};if(A.nodeType==1&&A.hasChildNodes()){H=A.childNodes.length-1;G.exclude=(B&&E>H)||(!B&&E==0);if(!B&&E){E--}A=A.childNodes[E>H?H:E];if(A.nodeType==3){E=B?0:A.nodeValue.length}}if(A.nodeType==3){if(r){for(D=A.previousSibling;D&&D.nodeType==3;D=D.previousSibling){E+=D.nodeValue.length}}G.offset=E}for(;A&&A!=t;A=A.parentNode){F.push(u.dom.nodeIndex(A,r))}G.indexes=F;return G}x.start=y(v,true);if(!u.isCollapsed()){x.end=y(v)}return x}return k()}if(q){return{rng:u.getRng()}}g=u.getRng();i=m.uniqueId();n=tinyMCE.activeEditor.selection.isCollapsed();s="overflow:hidden;line-height:0px";if(g.duplicate||g.item){if(!g.item){j=g.duplicate();g.collapse();g.pasteHTML(''+l+"");if(!n){j.collapse(false);j.pasteHTML(''+l+"")}}else{o=g.item(0);h=o.nodeName;return{name:h,index:f(h,o)}}}else{o=u.getNode();h=o.nodeName;if(h=="IMG"){return{name:h,index:f(h,o)}}j=g.cloneRange();if(!n){j.collapse(false);j.insertNode(m.create("span",{_mce_type:"bookmark",id:i+"_end",style:s},l))}g.collapse(true);g.insertNode(m.create("span",{_mce_type:"bookmark",id:i+"_start",style:s},l))}u.moveToBookmark({id:i,keep:1});return{id:i}},moveToBookmark:function(l){var n=this,k=n.dom,i,h,f,m;if(n.tridentSel){n.tridentSel.destroy()}if(l){if(l.start){f=k.createRng();m=k.getRoot();function g(s){var o=l[s?"start":"end"],p,q,r;if(o){for(q=m,p=o.indexes.length-1;p>=0;p--){q=q.childNodes[o.indexes[p]]||q}if(s){if(q.nodeType==3&&o.offset){f.setStart(q,o.offset)}else{if(o.exclude){f.setStartAfter(q)}else{f.setStartBefore(q)}}}else{if(q.nodeType==3&&o.offset){f.setEnd(q,o.offset)}else{if(o.exclude){f.setEndBefore(q)}else{f.setEndAfter(q)}}}}}g(true);g();n.setRng(f)}else{if(l.id){f=k.createRng();function j(u){var p=k.get(l.id+"_"+u),t,o,r,s,q=l.keep;if(p){t=p.parentNode;if(u=="start"){if(!q){o=k.nodeIndex(p)}else{t=p;o=1}f.setStart(t,o);f.setEnd(t,o)}else{if(!q){o=k.nodeIndex(p)}else{t=p;o=1}f.setEnd(t,o)}if(!q){s=p.previousSibling;r=p.nextSibling;d(c.grep(p.childNodes),function(v){if(v.nodeType==3){v.nodeValue=v.nodeValue.replace(/\uFEFF/g,"")}});while(p=k.get(l.id+"_"+u)){k.remove(p,1)}if(s&&r&&s.nodeType==r.nodeType&&s.nodeType==3){o=s.nodeValue.length;s.appendData(r.nodeValue);k.remove(r);if(u=="start"){f.setStart(s,o);f.setEnd(s,o)}else{f.setEnd(s,o)}}}}}j("start");j("end");n.setRng(f)}else{if(l.name){n.select(k.select(l.name)[l.index])}else{if(l.rng){n.setRng(l.rng)}}}}}},select:function(k,j){var i=this,l=i.dom,g=l.createRng(),f;f=l.nodeIndex(k);g.setStart(k.parentNode,f);g.setEnd(k.parentNode,f+1);if(j){function h(m,o){var n=new c.dom.TreeWalker(m,m);do{if(m.nodeType==3&&c.trim(m.nodeValue).length!=0){if(o){g.setStart(m,0)}else{g.setEnd(m,m.nodeValue.length)}return}if(m.nodeName=="BR"){if(o){g.setStartBefore(m)}else{g.setEndBefore(m)}return}}while(m=(o?n.next():n.prev()))}h(k,1);h(k)}i.setRng(g);return k},isCollapsed:function(){var f=this,h=f.getRng(),g=f.getSel();if(!h||h.item){return false}if(h.compareEndPoints){return h.compareEndPoints("StartToEnd",h)===0}return !g||h.collapsed},collapse:function(f){var g=this,h=g.getRng(),i;if(h.item){i=h.item(0);h=this.win.document.body.createTextRange();h.moveToElementText(i)}h.collapse(!!f);g.setRng(h)},getSel:function(){var g=this,f=this.win;return f.getSelection?f.getSelection():f.document.selection},getRng:function(j){var g=this,h,i;if(j&&g.tridentSel){return g.tridentSel.getRangeAt(0)}try{if(h=g.getSel()){i=h.rangeCount>0?h.getRangeAt(0):(h.createRange?h.createRange():g.win.document.createRange())}}catch(f){}if(!i){i=a?g.win.document.body.createTextRange():g.win.document.createRange()}return i},setRng:function(i){var h,g=this;if(!g.tridentSel){h=g.getSel();if(h){h.removeAllRanges();h.addRange(i)}}else{if(i.cloneRange){g.tridentSel.addRange(i);return}try{i.select()}catch(f){}}},setNode:function(g){var f=this;f.setContent(f.dom.getOuterHTML(g));return g},getNode:function(){var g=this,f=g.getRng(),h=g.getSel(),i;if(!a){if(!f){return g.dom.getRoot()}i=f.commonAncestorContainer;if(!f.collapsed){if(f.startContainer==f.endContainer){if(f.startOffset-f.endOffset<2){if(f.startContainer.hasChildNodes()){i=f.startContainer.childNodes[f.startOffset]}}}if(c.isWebKit&&h.anchorNode&&h.anchorNode.nodeType==1){return h.anchorNode.childNodes[h.anchorOffset]}}if(i&&i.nodeType==3){return i.parentNode}return i}return f.item?f.item(0):f.parentElement()},getSelectedBlocks:function(g,f){var i=this,j=i.dom,m,h,l,k=[];m=j.getParent(g||i.getStart(),j.isBlock);h=j.getParent(f||i.getEnd(),j.isBlock);if(m){k.push(m)}if(m&&h&&m!=h){l=m;while((l=l.nextSibling)&&l!=h){if(j.isBlock(l)){k.push(l)}}}if(h&&m!=h){k.push(h)}return k},destroy:function(g){var f=this;f.win=null;if(f.tridentSel){f.tridentSel.destroy()}if(!g){c.removeUnload(f.destroy)}}})})(tinymce);(function(a){a.create("tinymce.dom.XMLWriter",{node:null,XMLWriter:function(c){function b(){var e=document.implementation;if(!e||!e.createDocument){try{return new ActiveXObject("MSXML2.DOMDocument")}catch(d){}try{return new ActiveXObject("Microsoft.XmlDom")}catch(d){}}else{return e.createDocument("","",null)}}this.doc=b();this.valid=a.isOpera||a.isWebKit;this.reset()},reset:function(){var b=this,c=b.doc;if(c.firstChild){c.removeChild(c.firstChild)}b.node=c.appendChild(c.createElement("html"))},writeStartElement:function(c){var b=this;b.node=b.node.appendChild(b.doc.createElement(c))},writeAttribute:function(c,b){if(this.valid){b=b.replace(/>/g,"%MCGT%")}this.node.setAttribute(c,b)},writeEndElement:function(){this.node=this.node.parentNode},writeFullEndElement:function(){var b=this,c=b.node;c.appendChild(b.doc.createTextNode(""));b.node=c.parentNode},writeText:function(b){if(this.valid){b=b.replace(/>/g,"%MCGT%")}this.node.appendChild(this.doc.createTextNode(b))},writeCDATA:function(b){this.node.appendChild(this.doc.createCDATASection(b))},writeComment:function(b){if(a.isIE){b=b.replace(/^\-|\-$/g," ")}this.node.appendChild(this.doc.createComment(b.replace(/\-\-/g," ")))},getContent:function(){var b;b=this.doc.xml||new XMLSerializer().serializeToString(this.doc);b=b.replace(/<\?[^?]+\?>||<\/html>||]+>/g,"");b=b.replace(/ ?\/>/g," />");if(this.valid){b=b.replace(/\%MCGT%/g,">")}return b}})})(tinymce);(function(a){a.create("tinymce.dom.StringWriter",{str:null,tags:null,count:0,settings:null,indent:null,StringWriter:function(b){this.settings=a.extend({indent_char:" ",indentation:0},b);this.reset()},reset:function(){this.indent="";this.str="";this.tags=[];this.count=0},writeStartElement:function(b){this._writeAttributesEnd();this.writeRaw("<"+b);this.tags.push(b);this.inAttr=true;this.count++;this.elementCount=this.count},writeAttribute:function(d,b){var c=this;c.writeRaw(" "+c.encode(d)+'="'+c.encode(b)+'"')},writeEndElement:function(){var b;if(this.tags.length>0){b=this.tags.pop();if(this._writeAttributesEnd(1)){this.writeRaw("")}if(this.settings.indentation>0){this.writeRaw("\n")}}},writeFullEndElement:function(){if(this.tags.length>0){this._writeAttributesEnd();this.writeRaw("");if(this.settings.indentation>0){this.writeRaw("\n")}}},writeText:function(b){this._writeAttributesEnd();this.writeRaw(this.encode(b));this.count++},writeCDATA:function(b){this._writeAttributesEnd();this.writeRaw("");this.count++},writeComment:function(b){this._writeAttributesEnd();this.writeRaw("");this.count++},writeRaw:function(b){this.str+=b},encode:function(b){return b.replace(/[<>&"]/g,function(c){switch(c){case"<":return"<";case">":return">";case"&":return"&";case'"':return"""}return c})},getContent:function(){return this.str},_writeAttributesEnd:function(b){if(!this.inAttr){return}this.inAttr=false;if(b&&this.elementCount==this.count){this.writeRaw(" />");return false}this.writeRaw(">");return true}})})(tinymce);(function(e){var g=e.extend,f=e.each,b=e.util.Dispatcher,d=e.isIE,a=e.isGecko;function c(h){return h.replace(/([?+*])/g,".$1")}e.create("tinymce.dom.Serializer",{Serializer:function(j){var i=this;i.key=0;i.onPreProcess=new b(i);i.onPostProcess=new b(i);try{i.writer=new e.dom.XMLWriter()}catch(h){i.writer=new e.dom.StringWriter()}i.settings=j=g({dom:e.DOM,valid_nodes:0,node_filter:0,attr_filter:0,invalid_attrs:/^(_mce_|_moz_|sizset|sizcache)/,closed:/^(br|hr|input|meta|img|link|param|area)$/,entity_encoding:"named",entities:"160,nbsp,161,iexcl,162,cent,163,pound,164,curren,165,yen,166,brvbar,167,sect,168,uml,169,copy,170,ordf,171,laquo,172,not,173,shy,174,reg,175,macr,176,deg,177,plusmn,178,sup2,179,sup3,180,acute,181,micro,182,para,183,middot,184,cedil,185,sup1,186,ordm,187,raquo,188,frac14,189,frac12,190,frac34,191,iquest,192,Agrave,193,Aacute,194,Acirc,195,Atilde,196,Auml,197,Aring,198,AElig,199,Ccedil,200,Egrave,201,Eacute,202,Ecirc,203,Euml,204,Igrave,205,Iacute,206,Icirc,207,Iuml,208,ETH,209,Ntilde,210,Ograve,211,Oacute,212,Ocirc,213,Otilde,214,Ouml,215,times,216,Oslash,217,Ugrave,218,Uacute,219,Ucirc,220,Uuml,221,Yacute,222,THORN,223,szlig,224,agrave,225,aacute,226,acirc,227,atilde,228,auml,229,aring,230,aelig,231,ccedil,232,egrave,233,eacute,234,ecirc,235,euml,236,igrave,237,iacute,238,icirc,239,iuml,240,eth,241,ntilde,242,ograve,243,oacute,244,ocirc,245,otilde,246,ouml,247,divide,248,oslash,249,ugrave,250,uacute,251,ucirc,252,uuml,253,yacute,254,thorn,255,yuml,402,fnof,913,Alpha,914,Beta,915,Gamma,916,Delta,917,Epsilon,918,Zeta,919,Eta,920,Theta,921,Iota,922,Kappa,923,Lambda,924,Mu,925,Nu,926,Xi,927,Omicron,928,Pi,929,Rho,931,Sigma,932,Tau,933,Upsilon,934,Phi,935,Chi,936,Psi,937,Omega,945,alpha,946,beta,947,gamma,948,delta,949,epsilon,950,zeta,951,eta,952,theta,953,iota,954,kappa,955,lambda,956,mu,957,nu,958,xi,959,omicron,960,pi,961,rho,962,sigmaf,963,sigma,964,tau,965,upsilon,966,phi,967,chi,968,psi,969,omega,977,thetasym,978,upsih,982,piv,8226,bull,8230,hellip,8242,prime,8243,Prime,8254,oline,8260,frasl,8472,weierp,8465,image,8476,real,8482,trade,8501,alefsym,8592,larr,8593,uarr,8594,rarr,8595,darr,8596,harr,8629,crarr,8656,lArr,8657,uArr,8658,rArr,8659,dArr,8660,hArr,8704,forall,8706,part,8707,exist,8709,empty,8711,nabla,8712,isin,8713,notin,8715,ni,8719,prod,8721,sum,8722,minus,8727,lowast,8730,radic,8733,prop,8734,infin,8736,ang,8743,and,8744,or,8745,cap,8746,cup,8747,int,8756,there4,8764,sim,8773,cong,8776,asymp,8800,ne,8801,equiv,8804,le,8805,ge,8834,sub,8835,sup,8836,nsub,8838,sube,8839,supe,8853,oplus,8855,otimes,8869,perp,8901,sdot,8968,lceil,8969,rceil,8970,lfloor,8971,rfloor,9001,lang,9002,rang,9674,loz,9824,spades,9827,clubs,9829,hearts,9830,diams,338,OElig,339,oelig,352,Scaron,353,scaron,376,Yuml,710,circ,732,tilde,8194,ensp,8195,emsp,8201,thinsp,8204,zwnj,8205,zwj,8206,lrm,8207,rlm,8211,ndash,8212,mdash,8216,lsquo,8217,rsquo,8218,sbquo,8220,ldquo,8221,rdquo,8222,bdquo,8224,dagger,8225,Dagger,8240,permil,8249,lsaquo,8250,rsaquo,8364,euro",valid_elements:"*[*]",extended_valid_elements:0,invalid_elements:0,fix_table_elements:1,fix_list_elements:true,fix_content_duplication:true,convert_fonts_to_spans:false,font_size_classes:0,apply_source_formatting:0,indent_mode:"simple",indent_char:"\t",indent_levels:1,remove_linebreaks:1,remove_redundant_brs:1,element_format:"xhtml"},j);i.dom=j.dom;i.schema=j.schema;if(j.entity_encoding=="named"&&!j.entities){j.entity_encoding="raw"}if(j.remove_redundant_brs){i.onPostProcess.add(function(k,l){l.content=l.content.replace(/(
\s*)+<\/(p|h[1-6]|div|li)>/gi,function(n,m,o){if(/^
\s*<\//.test(n)){return""}return n})})}if(j.element_format=="html"){i.onPostProcess.add(function(k,l){l.content=l.content.replace(/<([^>]+) \/>/g,"<$1>")})}if(j.fix_list_elements){i.onPreProcess.add(function(v,s){var l,z,y=["ol","ul"],u,t,q,k=/^(OL|UL)$/,A;function m(r,x){var o=x.split(","),p;while((r=r.previousSibling)!=null){for(p=0;p=1767){f(i.dom.select("p table",l.node).reverse(),function(p){var o=i.dom.getParent(p.parentNode,"table,p");if(o.nodeName!="TABLE"){try{i.dom.split(o,p)}catch(m){}}})}})}},setEntities:function(o){var n=this,j,m,h={},k;if(n.entityLookup){return}j=o.split(",");for(m=0;m1){f(q[1].split("|"),function(u){var p={},t;k=k||[];u=u.replace(/::/g,"~");u=/^([!\-])?([\w*.?~_\-]+|)([=:<])?(.+)?$/.exec(u);u[2]=u[2].replace(/~/g,":");if(u[1]=="!"){r=r||[];r.push(u[2])}if(u[1]=="-"){for(t=0;t=1767)){p=j.createHTMLDocument("");f(r.nodeName=="BODY"?r.childNodes:[r],function(h){p.body.appendChild(p.importNode(h,true))});if(r.nodeName!="BODY"){r=p.body.firstChild}else{r=p.body}i=k.dom.doc;k.dom.doc=p}k.key=""+(parseInt(k.key)+1);if(!q.no_events){q.node=r;k.onPreProcess.dispatch(k,q)}k.writer.reset();k._info=q;k._serializeNode(r,q.getInner);q.content=k.writer.getContent();if(i){k.dom.doc=i}if(!q.no_events){k.onPostProcess.dispatch(k,q)}k._postProcess(q);q.node=null;return e.trim(q.content)},_postProcess:function(n){var i=this,k=i.settings,j=n.content,m=[],l;if(n.format=="html"){l=i._protect({content:j,patterns:[{pattern:/(]*>)(.*?)(<\/script>)/g},{pattern:/(]*>)(.*?)(<\/noscript>)/g},{pattern:/(]*>)(.*?)(<\/style>)/g},{pattern:/(]*>)(.*?)(<\/pre>)/g,encode:1},{pattern:/()/g}]});j=l.content;if(k.entity_encoding!=="raw"){j=i._encode(j)}if(!n.set){j=j.replace(/

\s+<\/p>|]+)>\s+<\/p>/g,k.entity_encoding=="numeric"?" 

":" 

");if(k.remove_linebreaks){j=j.replace(/\r?\n|\r/g," ");j=j.replace(/(<[^>]+>)\s+/g,"$1 ");j=j.replace(/\s+(<\/[^>]+>)/g," $1");j=j.replace(/<(p|h[1-6]|blockquote|hr|div|table|tbody|tr|td|body|head|html|title|meta|style|pre|script|link|object) ([^>]+)>\s+/g,"<$1 $2>");j=j.replace(/<(p|h[1-6]|blockquote|hr|div|table|tbody|tr|td|body|head|html|title|meta|style|pre|script|link|object)>\s+/g,"<$1>");j=j.replace(/\s+<\/(p|h[1-6]|blockquote|hr|div|table|tbody|tr|td|body|head|html|title|meta|style|pre|script|link|object)>/g,"")}if(k.apply_source_formatting&&k.indent_mode=="simple"){j=j.replace(/<(\/?)(ul|hr|table|meta|link|tbody|tr|object|body|head|html|map)(|[^>]+)>\s*/g,"\n<$1$2$3>\n");j=j.replace(/\s*<(p|h[1-6]|blockquote|div|title|style|pre|script|td|li|area)(|[^>]+)>/g,"\n<$1$2>");j=j.replace(/<\/(p|h[1-6]|blockquote|div|title|style|pre|script|td|li)>\s*/g,"\n");j=j.replace(/\n\n/g,"\n")}}j=i._unprotect(j,l);j=j.replace(//g,"");if(k.entity_encoding=="raw"){j=j.replace(/

 <\/p>|]+)> <\/p>/g,"\u00a0

")}j=j.replace(/]+|)>([\s\S]*?)<\/noscript>/g,function(h,p,o){return""+i.dom.decode(o.replace(//g,""))+""})}n.content=j},_serializeNode:function(D,I){var z=this,A=z.settings,x=z.writer,q,j,u,F,E,H,B,h,y,k,r,C,p,m,G,o;if(!A.node_filter||A.node_filter(D)){switch(D.nodeType){case 1:if(D.hasAttribute?D.hasAttribute("_mce_bogus"):D.getAttribute("_mce_bogus")){return}p=G=false;q=D.hasChildNodes();k=D.getAttribute("_mce_name")||D.nodeName.toLowerCase();o=D.getAttribute("_mce_type");if(o){if(!z._info.cleanup){p=true;return}else{G=1}}if(d){if(D.scopeName!=="HTML"&&D.scopeName!=="html"){k=D.scopeName+":"+k}}if(k.indexOf("mce:")===0){k=k.substring(4)}if(!G){if(!z.validElementsRE||!z.validElementsRE.test(k)||(z.invalidElementsRE&&z.invalidElementsRE.test(k))||I){p=true;break}}if(d){if(A.fix_content_duplication){if(D._mce_serialized==z.key){return}D._mce_serialized=z.key}if(k.charAt(0)=="/"){k=k.substring(1)}}else{if(a){if(D.nodeName==="BR"&&D.getAttribute("type")=="_moz"){return}}}if(A.validate_children){if(z.elementName&&!z.schema.isValid(z.elementName,k)){p=true;break}z.elementName=k}r=z.findRule(k);k=r.name||k;m=A.closed.test(k);if((!q&&r.noEmpty)||(d&&!k)){p=true;break}if(r.requiredAttribs){H=r.requiredAttribs;for(F=H.length-1;F>=0;F--){if(this.dom.getAttrib(D,H[F])!==""){break}}if(F==-1){p=true;break}}x.writeStartElement(k);if(r.attribs){for(F=0,B=r.attribs,E=B.length;F-1;F--){h=B[F];if(h.specified){H=h.nodeName.toLowerCase();if(A.invalid_attrs.test(H)||!r.validAttribsRE.test(H)){continue}C=z.findAttribRule(r,H);y=z._getAttrib(D,C,H);if(y!==null){x.writeAttribute(H,y)}}}}if(o&&G){x.writeAttribute("_mce_type",o)}if(k==="script"&&e.trim(D.innerHTML)){x.writeText("// ");x.writeCDATA(D.innerHTML.replace(/|<\[CDATA\[|\]\]>/g,""));q=false;break}if(r.padd){if(q&&(u=D.firstChild)&&u.nodeType===1&&D.childNodes.length===1){if(u.hasAttribute?u.hasAttribute("_mce_bogus"):u.getAttribute("_mce_bogus")){x.writeText("\u00a0")}}else{if(!q){x.writeText("\u00a0")}}}break;case 3:if(A.validate_children&&z.elementName&&!z.schema.isValid(z.elementName,"#text")){return}return x.writeText(D.nodeValue);case 4:return x.writeCDATA(D.nodeValue);case 8:return x.writeComment(D.nodeValue)}}else{if(D.nodeType==1){q=D.hasChildNodes()}}if(q&&!m){u=D.firstChild;while(u){z._serializeNode(u);z.elementName=k;u=u.nextSibling}}if(!p){if(!m){x.writeFullEndElement()}else{x.writeEndElement()}}},_protect:function(j){var i=this;j.items=j.items||[];function h(l){return l.replace(/[\r\n\\]/g,function(m){if(m==="\n"){return"\\n"}else{if(m==="\\"){return"\\\\"}}return"\\r"})}function k(l){return l.replace(/\\[\\rn]/g,function(m){if(m==="\\n"){return"\n"}else{if(m==="\\\\"){return"\\"}}return"\r"})}f(j.patterns,function(l){j.content=k(h(j.content).replace(l.pattern,function(n,o,m,p){m=k(m);if(l.encode){m=i._encode(m)}j.items.push(m);return o+""+p}))});return j},_unprotect:function(i,j){i=i.replace(/\"))}if(a&&j.ListBox){if(a.Button||a.SplitButton){e+=b.createHTML("td",{"class":"mceToolbarEnd"},b.createHTML("span",null,""))}}if(b.stdMode){e+=''+j.renderHTML()+""}else{e+=""+j.renderHTML()+""}if(f&&j.ListBox){if(f.Button||f.SplitButton){e+=b.createHTML("td",{"class":"mceToolbarStart"},b.createHTML("span",null,""))}}}g="mceToolbarEnd";if(j.Button){g+=" mceToolbarEndButton"}else{if(j.SplitButton){g+=" mceToolbarEndSplitButton"}else{if(j.ListBox){g+=" mceToolbarEndListBox"}}}e+=b.createHTML("td",{"class":g},b.createHTML("span",null,""));return b.createHTML("table",{id:l.id,"class":"mceToolbar"+(m["class"]?" "+m["class"]:""),cellpadding:"0",cellspacing:"0",align:l.settings.align||""},""+e+"")}});(function(b){var a=b.util.Dispatcher,c=b.each;b.create("tinymce.AddOnManager",{items:[],urls:{},lookup:{},onAdd:new a(this),get:function(d){return this.lookup[d]},requireLangPack:function(e){var d=b.settings;if(d&&d.language){b.ScriptLoader.add(this.urls[e]+"/langs/"+d.language+".js")}},add:function(e,d){this.items.push(d);this.lookup[e]=d;this.onAdd.dispatch(this,e,d);return d},load:function(h,e,d,g){var f=this;if(f.urls[h]){return}if(e.indexOf("/")!=0&&e.indexOf("://")==-1){e=b.baseURL+"/"+e}f.urls[h]=e.substring(0,e.lastIndexOf("/"));b.ScriptLoader.add(e,d,g)}});b.PluginManager=new b.AddOnManager();b.ThemeManager=new b.AddOnManager()}(tinymce));(function(j){var g=j.each,d=j.extend,k=j.DOM,i=j.dom.Event,f=j.ThemeManager,b=j.PluginManager,e=j.explode,h=j.util.Dispatcher,a,c=0;j.documentBaseURL=window.location.href.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,"");if(!/[\/\\]$/.test(j.documentBaseURL)){j.documentBaseURL+="/"}j.baseURL=new j.util.URI(j.documentBaseURL).toAbsolute(j.baseURL);j.baseURI=new j.util.URI(j.baseURL);j.onBeforeUnload=new h(j);i.add(window,"beforeunload",function(l){j.onBeforeUnload.dispatch(j,l)});j.onAddEditor=new h(j);j.onRemoveEditor=new h(j);j.EditorManager=d(j,{editors:[],i18n:{},activeEditor:null,init:function(q){var n=this,p,l=j.ScriptLoader,u,o=[],m;function r(x,y,t){var v=x[y];if(!v){return}if(j.is(v,"string")){t=v.replace(/\.\w+$/,"");t=t?j.resolve(t):0;v=j.resolve(v)}return v.apply(t||this,Array.prototype.slice.call(arguments,2))}q=d({theme:"simple",language:"en"},q);n.settings=q;i.add(document,"init",function(){var s,v;r(q,"onpageload");switch(q.mode){case"exact":s=q.elements||"";if(s.length>0){g(e(s),function(x){if(k.get(x)){m=new j.Editor(x,q);o.push(m);m.render(1)}else{g(document.forms,function(y){g(y.elements,function(z){if(z.name===x){x="mce_editor_"+c++;k.setAttrib(z,"id",x);m=new j.Editor(x,q);o.push(m);m.render(1)}})})}})}break;case"textareas":case"specific_textareas":function t(y,x){return x.constructor===RegExp?x.test(y.className):k.hasClass(y,x)}g(k.select("textarea"),function(x){if(q.editor_deselector&&t(x,q.editor_deselector)){return}if(!q.editor_selector||t(x,q.editor_selector)){u=k.get(x.name);if(!x.id&&!u){x.id=x.name}if(!x.id||n.get(x.id)){x.id=k.uniqueId()}m=new j.Editor(x.id,q);o.push(m);m.render(1)}});break}if(q.oninit){s=v=0;g(o,function(x){v++;if(!x.initialized){x.onInit.add(function(){s++;if(s==v){r(q,"oninit")}})}else{s++}if(s==v){r(q,"oninit")}})}})},get:function(l){if(l===a){return this.editors}return this.editors[l]},getInstanceById:function(l){return this.get(l)},add:function(m){var l=this,n=l.editors;n[m.id]=m;n.push(m);l._setActive(m);l.onAddEditor.dispatch(l,m);if(j.adapter){j.adapter.patchEditor(m)}return m},remove:function(n){var m=this,l,o=m.editors;if(!o[n.id]){return null}delete o[n.id];for(l=0;l':"",visual_table_class:"mceItemTable",visual:1,font_size_style_values:"xx-small,x-small,small,medium,large,x-large,xx-large",apply_source_formatting:1,directionality:"ltr",forced_root_block:"p",valid_elements:"@[id|class|style|title|dir';if(F.document_base_url!=m.documentBaseURL){E.iframeHTML+=''}E.iframeHTML+='';if(m.relaxedDomain){E.iframeHTML+=''; + + bi = s.body_id || 'tinymce'; + if (bi.indexOf('=') != -1) { + bi = t.getParam('body_id', '', 'hash'); + bi = bi[t.id] || bi; + } + + bc = s.body_class || ''; + if (bc.indexOf('=') != -1) { + bc = t.getParam('body_class', '', 'hash'); + bc = bc[t.id] || ''; + } + + t.iframeHTML += ''; + + // Domain relaxing enabled, then set document domain + if (tinymce.relaxedDomain) { + // We need to write the contents here in IE since multiple writes messes up refresh button and back button + if (isIE || (tinymce.isOpera && parseFloat(opera.version()) >= 9.5)) + u = 'javascript:(function(){document.open();document.domain="' + document.domain + '";var ed = window.parent.tinyMCE.get("' + t.id + '");document.write(ed.iframeHTML);document.close();ed.setupIframe();})()'; + else if (tinymce.isOpera) + u = 'javascript:(function(){document.open();document.domain="' + document.domain + '";document.close();ed.setupIframe();})()'; + } + + // Create iframe + n = DOM.add(o.iframeContainer, 'iframe', { + id : t.id + "_ifr", + src : u || 'javascript:""', // Workaround for HTTPS warning in IE6/7 + frameBorder : '0', + style : { + width : '100%', + height : h + } + }); + + t.contentAreaContainer = o.iframeContainer; + DOM.get(o.editorContainer).style.display = t.orgDisplay; + DOM.get(t.id).style.display = 'none'; + + if (!isIE || !tinymce.relaxedDomain) + t.setupIframe(); + + e = n = o = null; // Cleanup + }, + + setupIframe : function() { + var t = this, s = t.settings, e = DOM.get(t.id), d = t.getDoc(), h, b; + + // Setup iframe body + if (!isIE || !tinymce.relaxedDomain) { + d.open(); + d.write(t.iframeHTML); + d.close(); + } + + // Design mode needs to be added here Ctrl+A will fail otherwise + if (!isIE) { + try { + if (!s.readonly) + d.designMode = 'On'; + } catch (ex) { + // Will fail on Gecko if the editor is placed in an hidden container element + // The design mode will be set ones the editor is focused + } + } + + // IE needs to use contentEditable or it will display non secure items for HTTPS + if (isIE) { + // It will not steal focus if we hide it while setting contentEditable + b = t.getBody(); + DOM.hide(b); + + if (!s.readonly) + b.contentEditable = true; + + DOM.show(b); + } + + t.dom = new tinymce.dom.DOMUtils(t.getDoc(), { + keep_values : true, + url_converter : t.convertURL, + url_converter_scope : t, + hex_colors : s.force_hex_style_colors, + class_filter : s.class_filter, + update_styles : 1, + fix_ie_paragraphs : 1, + valid_styles : s.valid_styles + }); + + t.schema = new tinymce.dom.Schema(); + + t.serializer = new tinymce.dom.Serializer(extend(s, { + valid_elements : s.verify_html === false ? '*[*]' : s.valid_elements, + dom : t.dom, + schema : t.schema + })); + + t.selection = new tinymce.dom.Selection(t.dom, t.getWin(), t.serializer); + + t.formatter = new tinymce.Formatter(this); + + // Register default formats + t.formatter.register({ + alignleft : [ + {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'left'}}, + {selector : 'img,table', styles : {'float' : 'left'}} + ], + + aligncenter : [ + {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'center'}}, + {selector : 'img', styles : {display : 'block', marginLeft : 'auto', marginRight : 'auto'}}, + {selector : 'table', styles : {marginLeft : 'auto', marginRight : 'auto'}} + ], + + alignright : [ + {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'right'}}, + {selector : 'img,table', styles : {'float' : 'right'}} + ], + + alignfull : [ + {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'justify'}} + ], + + bold : [ + {inline : 'strong'}, + {inline : 'span', styles : {fontWeight : 'bold'}}, + {inline : 'b'} + ], + + italic : [ + {inline : 'em'}, + {inline : 'span', styles : {fontStyle : 'italic'}}, + {inline : 'i'} + ], + + underline : [ + {inline : 'span', styles : {textDecoration : 'underline'}, exact : true}, + {inline : 'u'} + ], + + strikethrough : [ + {inline : 'span', styles : {textDecoration : 'line-through'}, exact : true}, + {inline : 'u'} + ], + + forecolor : {inline : 'span', styles : {color : '%value'}}, + hilitecolor : {inline : 'span', styles : {backgroundColor : '%value'}}, + fontname : {inline : 'span', styles : {fontFamily : '%value'}}, + fontsize : {inline : 'span', styles : {fontSize : '%value'}}, + blockquote : {block : 'blockquote', wrapper : 1}, + + removeformat : [ + {selector : 'b,strong,em,i,font,u,strike', remove : 'all', split : true, expand : false, block_expand : true, deep : true}, + {selector : 'span', attributes : ['style', 'class'], remove : 'empty', split : true, expand : false, deep : true}, + {selector : '*', attributes : ['style', 'class'], expand : false, deep : true} + ] + }); + + // Register default block formats + each('p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp'.split(/\s/), function(name) { + t.formatter.register(name, {block : name}); + }); + + // Register user defined formats + t.formatter.register(t.settings.formats); + + t.undoManager = new tinymce.UndoManager(t); + + // Pass through + t.undoManager.onAdd.add(function(um, l) { + if (!l.initial) + return t.onChange.dispatch(t, l, um); + }); + + t.undoManager.onUndo.add(function(um, l) { + return t.onUndo.dispatch(t, l, um); + }); + + t.undoManager.onRedo.add(function(um, l) { + return t.onRedo.dispatch(t, l, um); + }); + + t.forceBlocks = new tinymce.ForceBlocks(t, { + forced_root_block : s.forced_root_block + }); + + t.editorCommands = new tinymce.EditorCommands(t); + + // Pass through + t.serializer.onPreProcess.add(function(se, o) { + return t.onPreProcess.dispatch(t, o, se); + }); + + t.serializer.onPostProcess.add(function(se, o) { + return t.onPostProcess.dispatch(t, o, se); + }); + + t.onPreInit.dispatch(t); + + if (!s.gecko_spellcheck) + t.getBody().spellcheck = 0; + + if (!s.readonly) + t._addEvents(); + + t.controlManager.onPostRender.dispatch(t, t.controlManager); + t.onPostRender.dispatch(t); + + if (s.directionality) + t.getBody().dir = s.directionality; + + if (s.nowrap) + t.getBody().style.whiteSpace = "nowrap"; + + if (s.custom_elements) { + function handleCustom(ed, o) { + each(explode(s.custom_elements), function(v) { + var n; + + if (v.indexOf('~') === 0) { + v = v.substring(1); + n = 'span'; + } else + n = 'div'; + + o.content = o.content.replace(new RegExp('<(' + v + ')([^>]*)>', 'g'), '<' + n + ' _mce_name="$1"$2>'); + o.content = o.content.replace(new RegExp('', 'g'), ''); + }); + }; + + t.onBeforeSetContent.add(handleCustom); + t.onPostProcess.add(function(ed, o) { + if (o.set) + handleCustom(ed, o); + }); + } + + if (s.handle_node_change_callback) { + t.onNodeChange.add(function(ed, cm, n) { + t.execCallback('handle_node_change_callback', t.id, n, -1, -1, true, t.selection.isCollapsed()); + }); + } + + if (s.save_callback) { + t.onSaveContent.add(function(ed, o) { + var h = t.execCallback('save_callback', t.id, o.content, t.getBody()); + + if (h) + o.content = h; + }); + } + + if (s.onchange_callback) { + t.onChange.add(function(ed, l) { + t.execCallback('onchange_callback', t, l); + }); + } + + if (s.convert_newlines_to_brs) { + t.onBeforeSetContent.add(function(ed, o) { + if (o.initial) + o.content = o.content.replace(/\r?\n/g, '
'); + }); + } + + if (s.fix_nesting && isIE) { + t.onBeforeSetContent.add(function(ed, o) { + o.content = t._fixNesting(o.content); + }); + } + + if (s.preformatted) { + t.onPostProcess.add(function(ed, o) { + o.content = o.content.replace(/^\s*/, ''); + o.content = o.content.replace(/<\/pre>\s*$/, ''); + + if (o.set) + o.content = '
' + o.content + '
'; + }); + } + + if (s.verify_css_classes) { + t.serializer.attribValueFilter = function(n, v) { + var s, cl; + + if (n == 'class') { + // Build regexp for classes + if (!t.classesRE) { + cl = t.dom.getClasses(); + + if (cl.length > 0) { + s = ''; + + each (cl, function(o) { + s += (s ? '|' : '') + o['class']; + }); + + t.classesRE = new RegExp('(' + s + ')', 'gi'); + } + } + + return !t.classesRE || /(\bmceItem\w+\b|\bmceTemp\w+\b)/g.test(v) || t.classesRE.test(v) ? v : ''; + } + + return v; + }; + } + + if (s.cleanup_callback) { + t.onBeforeSetContent.add(function(ed, o) { + o.content = t.execCallback('cleanup_callback', 'insert_to_editor', o.content, o); + }); + + t.onPreProcess.add(function(ed, o) { + if (o.set) + t.execCallback('cleanup_callback', 'insert_to_editor_dom', o.node, o); + + if (o.get) + t.execCallback('cleanup_callback', 'get_from_editor_dom', o.node, o); + }); + + t.onPostProcess.add(function(ed, o) { + if (o.set) + o.content = t.execCallback('cleanup_callback', 'insert_to_editor', o.content, o); + + if (o.get) + o.content = t.execCallback('cleanup_callback', 'get_from_editor', o.content, o); + }); + } + + if (s.save_callback) { + t.onGetContent.add(function(ed, o) { + if (o.save) + o.content = t.execCallback('save_callback', t.id, o.content, t.getBody()); + }); + } + + if (s.handle_event_callback) { + t.onEvent.add(function(ed, e, o) { + if (t.execCallback('handle_event_callback', e, ed, o) === false) + Event.cancel(e); + }); + } + + // Add visual aids when new contents is added + t.onSetContent.add(function() { + t.addVisual(t.getBody()); + }); + + // Remove empty contents + if (s.padd_empty_editor) { + t.onPostProcess.add(function(ed, o) { + o.content = o.content.replace(/^(]*>( | |\s|\u00a0|)<\/p>[\r\n]*|
[\r\n]*)$/, ''); + }); + } + + if (isGecko) { + // Fix gecko link bug, when a link is placed at the end of block elements there is + // no way to move the caret behind the link. This fix adds a bogus br element after the link + function fixLinks(ed, o) { + each(ed.dom.select('a'), function(n) { + var pn = n.parentNode; + + if (ed.dom.isBlock(pn) && pn.lastChild === n) + ed.dom.add(pn, 'br', {'_mce_bogus' : 1}); + }); + }; + + t.onExecCommand.add(function(ed, cmd) { + if (cmd === 'CreateLink') + fixLinks(ed); + }); + + t.onSetContent.add(t.selection.onSetContent.add(fixLinks)); + + if (!s.readonly) { + try { + // Design mode must be set here once again to fix a bug where + // Ctrl+A/Delete/Backspace didn't work if the editor was added using mceAddControl then removed then added again + d.designMode = 'Off'; + d.designMode = 'On'; + } catch (ex) { + // Will fail on Gecko if the editor is placed in an hidden container element + // The design mode will be set ones the editor is focused + } + } + } + + // A small timeout was needed since firefox will remove. Bug: #1838304 + setTimeout(function () { + if (t.removed) + return; + + t.load({initial : true, format : (s.cleanup_on_startup ? 'html' : 'raw')}); + t.startContent = t.getContent({format : 'raw'}); + t.initialized = true; + + t.onInit.dispatch(t); + t.execCallback('setupcontent_callback', t.id, t.getBody(), t.getDoc()); + t.execCallback('init_instance_callback', t); + t.focus(true); + t.nodeChanged({initial : 1}); + + // Load specified content CSS last + if (s.content_css) { + tinymce.each(explode(s.content_css), function(u) { + t.dom.loadCSS(t.documentBaseURI.toAbsolute(u)); + }); + } + + // Handle auto focus + if (s.auto_focus) { + setTimeout(function () { + var ed = tinymce.get(s.auto_focus); + + ed.selection.select(ed.getBody(), 1); + ed.selection.collapse(1); + ed.getWin().focus(); + }, 100); + } + }, 1); + + e = null; + }, + + + focus : function(sf) { + var oed, t = this, ce = t.settings.content_editable; + + if (!sf) { + // Is not content editable or the selection is outside the area in IE + // the IE statement is needed to avoid bluring if element selections inside layers since + // the layer is like it's own document in IE + if (!ce && (!isIE || t.selection.getNode().ownerDocument != t.getDoc())) + t.getWin().focus(); + + } + + if (tinymce.activeEditor != t) { + if ((oed = tinymce.activeEditor) != null) + oed.onDeactivate.dispatch(oed, t); + + t.onActivate.dispatch(t, oed); + } + + tinymce._setActive(t); + }, + + execCallback : function(n) { + var t = this, f = t.settings[n], s; + + if (!f) + return; + + // Look through lookup + if (t.callbackLookup && (s = t.callbackLookup[n])) { + f = s.func; + s = s.scope; + } + + if (is(f, 'string')) { + s = f.replace(/\.\w+$/, ''); + s = s ? tinymce.resolve(s) : 0; + f = tinymce.resolve(f); + t.callbackLookup = t.callbackLookup || {}; + t.callbackLookup[n] = {func : f, scope : s}; + } + + return f.apply(s || t, Array.prototype.slice.call(arguments, 1)); + }, + + translate : function(s) { + var c = this.settings.language || 'en', i18n = tinymce.i18n; + + if (!s) + return ''; + + return i18n[c + '.' + s] || s.replace(/{\#([^}]+)\}/g, function(a, b) { + return i18n[c + '.' + b] || '{#' + b + '}'; + }); + }, + + getLang : function(n, dv) { + return tinymce.i18n[(this.settings.language || 'en') + '.' + n] || (is(dv) ? dv : '{#' + n + '}'); + }, + + getParam : function(n, dv, ty) { + var tr = tinymce.trim, v = is(this.settings[n]) ? this.settings[n] : dv, o; + + if (ty === 'hash') { + o = {}; + + if (is(v, 'string')) { + each(v.indexOf('=') > 0 ? v.split(/[;,](?![^=;,]*(?:[;,]|$))/) : v.split(','), function(v) { + v = v.split('='); + + if (v.length > 1) + o[tr(v[0])] = tr(v[1]); + else + o[tr(v[0])] = tr(v); + }); + } else + o = v; + + return o; + } + + return v; + }, + + nodeChanged : function(o) { + var t = this, s = t.selection, n = s.getNode() || t.getBody(); + + // Fix for bug #1896577 it seems that this can not be fired while the editor is loading + if (t.initialized) { + o = o || {}; + n = isIE && n.ownerDocument != t.getDoc() ? t.getBody() : n; // Fix for IE initial state + + // Get parents and add them to object + o.parents = []; + t.dom.getParent(n, function(node) { + if (node.nodeName == 'BODY') + return true; + + o.parents.push(node); + }); + + t.onNodeChange.dispatch( + t, + o ? o.controlManager || t.controlManager : t.controlManager, + n, + s.isCollapsed(), + o + ); + } + }, + + addButton : function(n, s) { + var t = this; + + t.buttons = t.buttons || {}; + t.buttons[n] = s; + }, + + addCommand : function(n, f, s) { + this.execCommands[n] = {func : f, scope : s || this}; + }, + + addQueryStateHandler : function(n, f, s) { + this.queryStateCommands[n] = {func : f, scope : s || this}; + }, + + addQueryValueHandler : function(n, f, s) { + this.queryValueCommands[n] = {func : f, scope : s || this}; + }, + + addShortcut : function(pa, desc, cmd_func, sc) { + var t = this, c; + + if (!t.settings.custom_shortcuts) + return false; + + t.shortcuts = t.shortcuts || {}; + + if (is(cmd_func, 'string')) { + c = cmd_func; + + cmd_func = function() { + t.execCommand(c, false, null); + }; + } + + if (is(cmd_func, 'object')) { + c = cmd_func; + + cmd_func = function() { + t.execCommand(c[0], c[1], c[2]); + }; + } + + each(explode(pa), function(pa) { + var o = { + func : cmd_func, + scope : sc || this, + desc : desc, + alt : false, + ctrl : false, + shift : false + }; + + each(explode(pa, '+'), function(v) { + switch (v) { + case 'alt': + case 'ctrl': + case 'shift': + o[v] = true; + break; + + default: + o.charCode = v.charCodeAt(0); + o.keyCode = v.toUpperCase().charCodeAt(0); + } + }); + + t.shortcuts[(o.ctrl ? 'ctrl' : '') + ',' + (o.alt ? 'alt' : '') + ',' + (o.shift ? 'shift' : '') + ',' + o.keyCode] = o; + }); + + return true; + }, + + execCommand : function(cmd, ui, val, a) { + var t = this, s = 0, o, st; + + if (!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(cmd) && (!a || !a.skip_focus)) + t.focus(); + + o = {}; + t.onBeforeExecCommand.dispatch(t, cmd, ui, val, o); + if (o.terminate) + return false; + + // Command callback + if (t.execCallback('execcommand_callback', t.id, t.selection.getNode(), cmd, ui, val)) { + t.onExecCommand.dispatch(t, cmd, ui, val, a); + return true; + } + + // Registred commands + if (o = t.execCommands[cmd]) { + st = o.func.call(o.scope, ui, val); + + // Fall through on true + if (st !== true) { + t.onExecCommand.dispatch(t, cmd, ui, val, a); + return st; + } + } + + // Plugin commands + each(t.plugins, function(p) { + if (p.execCommand && p.execCommand(cmd, ui, val)) { + t.onExecCommand.dispatch(t, cmd, ui, val, a); + s = 1; + return false; + } + }); + + if (s) + return true; + + // Theme commands + if (t.theme && t.theme.execCommand && t.theme.execCommand(cmd, ui, val)) { + t.onExecCommand.dispatch(t, cmd, ui, val, a); + return true; + } + + // Execute global commands + if (tinymce.GlobalCommands.execCommand(t, cmd, ui, val)) { + t.onExecCommand.dispatch(t, cmd, ui, val, a); + return true; + } + + // Editor commands + if (t.editorCommands.execCommand(cmd, ui, val)) { + t.onExecCommand.dispatch(t, cmd, ui, val, a); + return true; + } + + // Browser commands + t.getDoc().execCommand(cmd, ui, val); + t.onExecCommand.dispatch(t, cmd, ui, val, a); + }, + + queryCommandState : function(cmd) { + var t = this, o, s; + + // Is hidden then return undefined + if (t._isHidden()) + return; + + // Registred commands + if (o = t.queryStateCommands[cmd]) { + s = o.func.call(o.scope); + + // Fall though on true + if (s !== true) + return s; + } + + // Registred commands + o = t.editorCommands.queryCommandState(cmd); + if (o !== -1) + return o; + + // Browser commands + try { + return this.getDoc().queryCommandState(cmd); + } catch (ex) { + // Fails sometimes see bug: 1896577 + } + }, + + queryCommandValue : function(c) { + var t = this, o, s; + + // Is hidden then return undefined + if (t._isHidden()) + return; + + // Registred commands + if (o = t.queryValueCommands[c]) { + s = o.func.call(o.scope); + + // Fall though on true + if (s !== true) + return s; + } + + // Registred commands + o = t.editorCommands.queryCommandValue(c); + if (is(o)) + return o; + + // Browser commands + try { + return this.getDoc().queryCommandValue(c); + } catch (ex) { + // Fails sometimes see bug: 1896577 + } + }, + + show : function() { + var t = this; + + DOM.show(t.getContainer()); + DOM.hide(t.id); + t.load(); + }, + + hide : function() { + var t = this, d = t.getDoc(); + + // Fixed bug where IE has a blinking cursor left from the editor + if (isIE && d) + d.execCommand('SelectAll'); + + // We must save before we hide so Safari doesn't crash + t.save(); + DOM.hide(t.getContainer()); + DOM.setStyle(t.id, 'display', t.orgDisplay); + }, + + isHidden : function() { + return !DOM.isHidden(this.id); + }, + + setProgressState : function(b, ti, o) { + this.onSetProgressState.dispatch(this, b, ti, o); + + return b; + }, + + load : function(o) { + var t = this, e = t.getElement(), h; + + if (e) { + o = o || {}; + o.load = true; + + // Double encode existing entities in the value + h = t.setContent(is(e.value) ? e.value : e.innerHTML, o); + o.element = e; + + if (!o.no_events) + t.onLoadContent.dispatch(t, o); + + o.element = e = null; + + return h; + } + }, + + save : function(o) { + var t = this, e = t.getElement(), h, f; + + if (!e || !t.initialized) + return; + + o = o || {}; + o.save = true; + + // Add undo level will trigger onchange event + if (!o.no_events) { + t.undoManager.typing = 0; + t.undoManager.add(); + } + + o.element = e; + h = o.content = t.getContent(o); + + if (!o.no_events) + t.onSaveContent.dispatch(t, o); + + h = o.content; + + if (!/TEXTAREA|INPUT/i.test(e.nodeName)) { + e.innerHTML = h; + + // Update hidden form element + if (f = DOM.getParent(t.id, 'form')) { + each(f.elements, function(e) { + if (e.name == t.id) { + e.value = h; + return false; + } + }); + } + } else + e.value = h; + + o.element = e = null; + + return h; + }, + + setContent : function(h, o) { + var t = this; + + o = o || {}; + o.format = o.format || 'html'; + o.set = true; + o.content = h; + + if (!o.no_events) + t.onBeforeSetContent.dispatch(t, o); + + // Padd empty content in Gecko and Safari. Commands will otherwise fail on the content + // It will also be impossible to place the caret in the editor unless there is a BR element present + if (!tinymce.isIE && (h.length === 0 || /^\s+$/.test(h))) { + o.content = t.dom.setHTML(t.getBody(), '
'); + o.format = 'raw'; + } + + o.content = t.dom.setHTML(t.getBody(), tinymce.trim(o.content)); + + if (o.format != 'raw' && t.settings.cleanup) { + o.getInner = true; + o.content = t.dom.setHTML(t.getBody(), t.serializer.serialize(t.getBody(), o)); + } + + if (!o.no_events) + t.onSetContent.dispatch(t, o); + + return o.content; + }, + + getContent : function(o) { + var t = this, h; + + o = o || {}; + o.format = o.format || 'html'; + o.get = true; + + if (!o.no_events) + t.onBeforeGetContent.dispatch(t, o); + + if (o.format != 'raw' && t.settings.cleanup) { + o.getInner = true; + h = t.serializer.serialize(t.getBody(), o); + } else + h = t.getBody().innerHTML; + + h = h.replace(/^\s*|\s*$/g, ''); + o.content = h; + + if (!o.no_events) + t.onGetContent.dispatch(t, o); + + return o.content; + }, + + isDirty : function() { + var t = this; + + return tinymce.trim(t.startContent) != tinymce.trim(t.getContent({format : 'raw', no_events : 1})) && !t.isNotDirty; + }, + + getContainer : function() { + var t = this; + + if (!t.container) + t.container = DOM.get(t.editorContainer || t.id + '_parent'); + + return t.container; + }, + + getContentAreaContainer : function() { + return this.contentAreaContainer; + }, + + getElement : function() { + return DOM.get(this.settings.content_element || this.id); + }, + + getWin : function() { + var t = this, e; + + if (!t.contentWindow) { + e = DOM.get(t.id + "_ifr"); + + if (e) + t.contentWindow = e.contentWindow; + } + + return t.contentWindow; + }, + + getDoc : function() { + var t = this, w; + + if (!t.contentDocument) { + w = t.getWin(); + + if (w) + t.contentDocument = w.document; + } + + return t.contentDocument; + }, + + getBody : function() { + return this.bodyElement || this.getDoc().body; + }, + + convertURL : function(u, n, e) { + var t = this, s = t.settings; + + // Use callback instead + if (s.urlconverter_callback) + return t.execCallback('urlconverter_callback', u, e, true, n); + + // Don't convert link href since thats the CSS files that gets loaded into the editor also skip local file URLs + if (!s.convert_urls || (e && e.nodeName == 'LINK') || u.indexOf('file:') === 0) + return u; + + // Convert to relative + if (s.relative_urls) + return t.documentBaseURI.toRelative(u); + + // Convert to absolute + u = t.documentBaseURI.toAbsolute(u, s.remove_script_host); + + return u; + }, + + addVisual : function(e) { + var t = this, s = t.settings; + + e = e || t.getBody(); + + if (!is(t.hasVisual)) + t.hasVisual = s.visual; + + each(t.dom.select('table,a', e), function(e) { + var v; + + switch (e.nodeName) { + case 'TABLE': + v = t.dom.getAttrib(e, 'border'); + + if (!v || v == '0') { + if (t.hasVisual) + t.dom.addClass(e, s.visual_table_class); + else + t.dom.removeClass(e, s.visual_table_class); + } + + return; + + case 'A': + v = t.dom.getAttrib(e, 'name'); + + if (v) { + if (t.hasVisual) + t.dom.addClass(e, 'mceItemAnchor'); + else + t.dom.removeClass(e, 'mceItemAnchor'); + } + + return; + } + }); + + t.onVisualAid.dispatch(t, e, t.hasVisual); + }, + + remove : function() { + var t = this, e = t.getContainer(); + + t.removed = 1; // Cancels post remove event execution + t.hide(); + + t.execCallback('remove_instance_callback', t); + t.onRemove.dispatch(t); + + // Clear all execCommand listeners this is required to avoid errors if the editor was removed inside another command + t.onExecCommand.listeners = []; + + tinymce.remove(t); + DOM.remove(e); + }, + + destroy : function(s) { + var t = this; + + // One time is enough + if (t.destroyed) + return; + + if (!s) { + tinymce.removeUnload(t.destroy); + tinyMCE.onBeforeUnload.remove(t._beforeUnload); + + // Manual destroy + if (t.theme && t.theme.destroy) + t.theme.destroy(); + + // Destroy controls, selection and dom + t.controlManager.destroy(); + t.selection.destroy(); + t.dom.destroy(); + + // Remove all events + + // Don't clear the window or document if content editable + // is enabled since other instances might still be present + if (!t.settings.content_editable) { + Event.clear(t.getWin()); + Event.clear(t.getDoc()); + } + + Event.clear(t.getBody()); + Event.clear(t.formElement); + } + + if (t.formElement) { + t.formElement.submit = t.formElement._mceOldSubmit; + t.formElement._mceOldSubmit = null; + } + + t.contentAreaContainer = t.formElement = t.container = t.settings.content_element = t.bodyElement = t.contentDocument = t.contentWindow = null; + + if (t.selection) + t.selection = t.selection.win = t.selection.dom = t.selection.dom.doc = null; + + t.destroyed = 1; + }, + + // Internal functions + + _addEvents : function() { + // 'focus', 'blur', 'dblclick', 'beforedeactivate', submit, reset + var t = this, i, s = t.settings, lo = { + mouseup : 'onMouseUp', + mousedown : 'onMouseDown', + click : 'onClick', + keyup : 'onKeyUp', + keydown : 'onKeyDown', + keypress : 'onKeyPress', + submit : 'onSubmit', + reset : 'onReset', + contextmenu : 'onContextMenu', + dblclick : 'onDblClick', + paste : 'onPaste' // Doesn't work in all browsers yet + }; + + function eventHandler(e, o) { + var ty = e.type; + + // Don't fire events when it's removed + if (t.removed) + return; + + // Generic event handler + if (t.onEvent.dispatch(t, e, o) !== false) { + // Specific event handler + t[lo[e.fakeType || e.type]].dispatch(t, e, o); + } + }; + + // Add DOM events + each(lo, function(v, k) { + switch (k) { + case 'contextmenu': + if (tinymce.isOpera) { + // Fake contextmenu on Opera + t.dom.bind(t.getBody(), 'mousedown', function(e) { + if (e.ctrlKey) { + e.fakeType = 'contextmenu'; + eventHandler(e); + } + }); + } else + t.dom.bind(t.getBody(), k, eventHandler); + break; + + case 'paste': + t.dom.bind(t.getBody(), k, function(e) { + eventHandler(e); + }); + break; + + case 'submit': + case 'reset': + t.dom.bind(t.getElement().form || DOM.getParent(t.id, 'form'), k, eventHandler); + break; + + default: + t.dom.bind(s.content_editable ? t.getBody() : t.getDoc(), k, eventHandler); + } + }); + + t.dom.bind(s.content_editable ? t.getBody() : (isGecko ? t.getDoc() : t.getWin()), 'focus', function(e) { + t.focus(true); + }); + + + // Fixes bug where a specified document_base_uri could result in broken images + // This will also fix drag drop of images in Gecko + if (tinymce.isGecko) { + // Convert all images to absolute URLs +/* t.onSetContent.add(function(ed, o) { + each(ed.dom.select('img'), function(e) { + var v; + + if (v = e.getAttribute('_mce_src')) + e.src = t.documentBaseURI.toAbsolute(v); + }) + });*/ + + t.dom.bind(t.getDoc(), 'DOMNodeInserted', function(e) { + var v; + + e = e.target; + + if (e.nodeType === 1 && e.nodeName === 'IMG' && (v = e.getAttribute('_mce_src'))) + e.src = t.documentBaseURI.toAbsolute(v); + }); + } + + // Set various midas options in Gecko + if (isGecko) { + function setOpts() { + var t = this, d = t.getDoc(), s = t.settings; + + if (isGecko && !s.readonly) { + if (t._isHidden()) { + try { + if (!s.content_editable) + d.designMode = 'On'; + } catch (ex) { + // Fails if it's hidden + } + } + + try { + // Try new Gecko method + d.execCommand("styleWithCSS", 0, false); + } catch (ex) { + // Use old method + if (!t._isHidden()) + try {d.execCommand("useCSS", 0, true);} catch (ex) {} + } + + if (!s.table_inline_editing) + try {d.execCommand('enableInlineTableEditing', false, false);} catch (ex) {} + + if (!s.object_resizing) + try {d.execCommand('enableObjectResizing', false, false);} catch (ex) {} + } + }; + + t.onBeforeExecCommand.add(setOpts); + t.onMouseDown.add(setOpts); + } + + // Workaround for bug, http://bugs.webkit.org/show_bug.cgi?id=12250 + // WebKit can't even do simple things like selecting an image + // This also fixes so it's possible to select mceItemAnchors + if (tinymce.isWebKit) { + t.onClick.add(function(ed, e) { + e = e.target; + + // Needs tobe the setBaseAndExtend or it will fail to select floated images + if (e.nodeName == 'IMG' || (e.nodeName == 'A' && t.dom.hasClass(e, 'mceItemAnchor'))) + t.selection.getSel().setBaseAndExtent(e, 0, e, 1); + }); + } + + // Add node change handlers + t.onMouseUp.add(t.nodeChanged); + t.onClick.add(t.nodeChanged); + t.onKeyUp.add(function(ed, e) { + var c = e.keyCode; + + if ((c >= 33 && c <= 36) || (c >= 37 && c <= 40) || c == 13 || c == 45 || c == 46 || c == 8 || (tinymce.isMac && (c == 91 || c == 93)) || e.ctrlKey) + t.nodeChanged(); + }); + + // Add reset handler + t.onReset.add(function() { + t.setContent(t.startContent, {format : 'raw'}); + }); + + // Add shortcuts + if (s.custom_shortcuts) { + if (s.custom_undo_redo_keyboard_shortcuts) { + t.addShortcut('ctrl+z', t.getLang('undo_desc'), 'Undo'); + t.addShortcut('ctrl+y', t.getLang('redo_desc'), 'Redo'); + } + + // Add default shortcuts for gecko + if (isGecko) { + t.addShortcut('ctrl+b', t.getLang('bold_desc'), 'Bold'); + t.addShortcut('ctrl+i', t.getLang('italic_desc'), 'Italic'); + t.addShortcut('ctrl+u', t.getLang('underline_desc'), 'Underline'); + } + + // BlockFormat shortcuts keys + for (i=1; i<=6; i++) + t.addShortcut('ctrl+' + i, '', ['FormatBlock', false, 'h' + i]); + + t.addShortcut('ctrl+7', '', ['FormatBlock', false, '

']); + t.addShortcut('ctrl+8', '', ['FormatBlock', false, '

']); + t.addShortcut('ctrl+9', '', ['FormatBlock', false, '
']); + + function find(e) { + var v = null; + + if (!e.altKey && !e.ctrlKey && !e.metaKey) + return v; + + each(t.shortcuts, function(o) { + if (tinymce.isMac && o.ctrl != e.metaKey) + return; + else if (!tinymce.isMac && o.ctrl != e.ctrlKey) + return; + + if (o.alt != e.altKey) + return; + + if (o.shift != e.shiftKey) + return; + + if (e.keyCode == o.keyCode || (e.charCode && e.charCode == o.charCode)) { + v = o; + return false; + } + }); + + return v; + }; + + t.onKeyUp.add(function(ed, e) { + var o = find(e); + + if (o) + return Event.cancel(e); + }); + + t.onKeyPress.add(function(ed, e) { + var o = find(e); + + if (o) + return Event.cancel(e); + }); + + t.onKeyDown.add(function(ed, e) { + var o = find(e); + + if (o) { + o.func.call(o.scope); + return Event.cancel(e); + } + }); + } + + if (tinymce.isIE) { + // Fix so resize will only update the width and height attributes not the styles of an image + // It will also block mceItemNoResize items + t.dom.bind(t.getDoc(), 'controlselect', function(e) { + var re = t.resizeInfo, cb; + + e = e.target; + + // Don't do this action for non image elements + if (e.nodeName !== 'IMG') + return; + + if (re) + t.dom.unbind(re.node, re.ev, re.cb); + + if (!t.dom.hasClass(e, 'mceItemNoResize')) { + ev = 'resizeend'; + cb = t.dom.bind(e, ev, function(e) { + var v; + + e = e.target; + + if (v = t.dom.getStyle(e, 'width')) { + t.dom.setAttrib(e, 'width', v.replace(/[^0-9%]+/g, '')); + t.dom.setStyle(e, 'width', ''); + } + + if (v = t.dom.getStyle(e, 'height')) { + t.dom.setAttrib(e, 'height', v.replace(/[^0-9%]+/g, '')); + t.dom.setStyle(e, 'height', ''); + } + }); + } else { + ev = 'resizestart'; + cb = t.dom.bind(e, 'resizestart', Event.cancel, Event); + } + + re = t.resizeInfo = { + node : e, + ev : ev, + cb : cb + }; + }); + + t.onKeyDown.add(function(ed, e) { + switch (e.keyCode) { + case 8: + // Fix IE control + backspace browser bug + if (t.selection.getRng().item) { + ed.dom.remove(t.selection.getRng().item(0)); + return Event.cancel(e); + } + } + }); + + /*if (t.dom.boxModel) { + t.getBody().style.height = '100%'; + + Event.add(t.getWin(), 'resize', function(e) { + var docElm = t.getDoc().documentElement; + + docElm.style.height = (docElm.offsetHeight - 10) + 'px'; + }); + }*/ + } + + if (tinymce.isOpera) { + t.onClick.add(function(ed, e) { + Event.prevent(e); + }); + } + + // Add custom undo/redo handlers + if (s.custom_undo_redo) { + function addUndo() { + t.undoManager.typing = 0; + t.undoManager.add(); + }; + + t.dom.bind(t.getDoc(), 'focusout', function(e) { + if (!t.removed && t.undoManager.typing) + addUndo(); + }); + + t.onKeyUp.add(function(ed, e) { + if ((e.keyCode >= 33 && e.keyCode <= 36) || (e.keyCode >= 37 && e.keyCode <= 40) || e.keyCode == 13 || e.keyCode == 45 || e.ctrlKey) + addUndo(); + }); + + t.onKeyDown.add(function(ed, e) { + // Is caracter positon keys + if ((e.keyCode >= 33 && e.keyCode <= 36) || (e.keyCode >= 37 && e.keyCode <= 40) || e.keyCode == 13 || e.keyCode == 45) { + if (t.undoManager.typing) + addUndo(); + + return; + } + + if (!t.undoManager.typing) { + t.undoManager.add(); + t.undoManager.typing = 1; + } + }); + + t.onMouseDown.add(function() { + if (t.undoManager.typing) + addUndo(); + }); + } + }, + + _isHidden : function() { + var s; + + if (!isGecko) + return 0; + + // Weird, wheres that cursor selection? + s = this.selection.getSel(); + return (!s || !s.rangeCount || s.rangeCount == 0); + }, + + // Fix for bug #1867292 + _fixNesting : function(s) { + var d = [], i; + + s = s.replace(/<(\/)?([^\s>]+)[^>]*?>/g, function(a, b, c) { + var e; + + // Handle end element + if (b === '/') { + if (!d.length) + return ''; + + if (c !== d[d.length - 1].tag) { + for (i=d.length - 1; i>=0; i--) { + if (d[i].tag === c) { + d[i].close = 1; + break; + } + } + + return ''; + } else { + d.pop(); + + if (d.length && d[d.length - 1].close) { + a = a + ''; + d.pop(); + } + } + } else { + // Ignore these + if (/^(br|hr|input|meta|img|link|param)$/i.test(c)) + return a; + + // Ignore closed ones + if (/\/>$/.test(a)) + return a; + + d.push({tag : c}); // Push start element + } + + return a; + }); + + // End all open tags + for (i=d.length - 1; i>=0; i--) + s += ''; + + return s; + } + }); +})(tinymce); + +(function(tinymce) { + // Added for compression purposes + var each = tinymce.each, undefined, TRUE = true, FALSE = false; + + tinymce.EditorCommands = function(editor) { + var dom = editor.dom, + selection = editor.selection, + commands = {state: {}, exec : {}, value : {}}, + settings = editor.settings, + bookmark; + + function execCommand(command, ui, value) { + var func; + + command = command.toLowerCase(); + if (func = commands.exec[command]) { + func(command, ui, value); + return TRUE; + } + + return FALSE; + }; + + function queryCommandState(command) { + var func; + + command = command.toLowerCase(); + if (func = commands.state[command]) + return func(command); + + return -1; + }; + + function queryCommandValue(command) { + var func; + + command = command.toLowerCase(); + if (func = commands.value[command]) + return func(command); + + return FALSE; + }; + + function addCommands(command_list, type) { + type = type || 'exec'; + + each(command_list, function(callback, command) { + each(command.toLowerCase().split(','), function(command) { + commands[type][command] = callback; + }); + }); + }; + + // Expose public methods + tinymce.extend(this, { + execCommand : execCommand, + queryCommandState : queryCommandState, + queryCommandValue : queryCommandValue, + addCommands : addCommands + }); + + // Private methods + + function execNativeCommand(command, ui, value) { + if (ui === undefined) + ui = FALSE; + + if (value === undefined) + value = null; + + return editor.getDoc().execCommand(command, ui, value); + }; + + function isFormatMatch(name) { + return editor.formatter.match(name); + }; + + function toggleFormat(name, value) { + editor.formatter.toggle(name, value ? {value : value} : undefined); + }; + + function storeSelection(type) { + bookmark = selection.getBookmark(type); + }; + + function restoreSelection() { + selection.moveToBookmark(bookmark); + }; + + // Add execCommand overrides + addCommands({ + // Ignore these, added for compatibility + 'mceResetDesignMode,mceBeginUndoLevel' : function() {}, + + // Add undo manager logic + 'mceEndUndoLevel,mceAddUndoLevel' : function() { + editor.undoManager.add(); + }, + + 'Cut,Copy,Paste' : function(command) { + var doc = editor.getDoc(), failed; + + // Try executing the native command + try { + execNativeCommand(command); + } catch (ex) { + // Command failed + failed = TRUE; + } + + // Present alert message about clipboard access not being available + if (failed || !doc.queryCommandEnabled(command)) { + if (tinymce.isGecko) { + editor.windowManager.confirm(editor.getLang('clipboard_msg'), function(state) { + if (state) + open('http://www.mozilla.org/editor/midasdemo/securityprefs.html', '_blank'); + }); + } else + editor.windowManager.alert(editor.getLang('clipboard_no_support')); + } + }, + + // Override unlink command + unlink : function(command) { + if (selection.isCollapsed()) + selection.select(selection.getNode()); + + execNativeCommand(command); + selection.collapse(FALSE); + }, + + // Override justify commands to use the text formatter engine + 'JustifyLeft,JustifyCenter,JustifyRight,JustifyFull' : function(command) { + var align = command.substring(7); + + // Remove all other alignments first + each('left,center,right,full'.split(','), function(name) { + if (align != name) + editor.formatter.remove('align' + name); + }); + + toggleFormat('align' + align); + }, + + // Override list commands to fix WebKit bug + 'InsertUnorderedList,InsertOrderedList' : function(command) { + var listElm, listParent; + + execNativeCommand(command); + + // WebKit produces lists within block elements so we need to split them + // we will replace the native list creation logic to custom logic later on + // TODO: Remove this when the list creation logic is removed + listElm = dom.getParent(selection.getNode(), 'ol,ul'); + if (listElm) { + listParent = listElm.parentNode; + + // If list is within a text block then split that block + if (/^(H[1-6]|P|ADDRESS|PRE)$/.test(listParent.nodeName)) { + storeSelection(); + dom.split(listParent, listElm); + restoreSelection(); + } + } + }, + + // Override commands to use the text formatter engine + 'Bold,Italic,Underline,Strikethrough' : function(command) { + toggleFormat(command); + }, + + // Override commands to use the text formatter engine + 'ForeColor,HiliteColor,FontName' : function(command, ui, value) { + toggleFormat(command, value); + }, + + FontSize : function(command, ui, value) { + var fontClasses, fontSizes; + + // Convert font size 1-7 to styles + if (value >= 1 && value <= 7) { + fontSizes = tinymce.explode(settings.font_size_style_values); + fontClasses = tinymce.explode(settings.font_size_classes); + + if (fontClasses) + value = fontClasses[value - 1] || value; + else + value = fontSizes[value - 1] || value; + } + + toggleFormat(command, value); + }, + + RemoveFormat : function(command) { + editor.formatter.remove(command); + }, + + mceBlockQuote : function(command) { + toggleFormat('blockquote'); + }, + + FormatBlock : function(command, ui, value) { + return toggleFormat(value); + }, + + mceCleanup : function() { + storeSelection(); + editor.setContent(editor.getContent({cleanup : TRUE}), {cleanup : TRUE}); + restoreSelection(); + }, + + mceRemoveNode : function(command, ui, value) { + var node = value || selection.getNode(); + + // Make sure that the body node isn't removed + if (node != ed.getBody()) { + storeSelection(); + editor.dom.remove(node, TRUE); + restoreSelection(); + } + }, + + mceSelectNodeDepth : function(command, ui, value) { + var counter = 0; + + dom.getParent(selection.getNode(), function(node) { + if (node.nodeType == 1 && counter++ == value) { + selection.select(node); + return FALSE; + } + }, editor.getBody()); + }, + + mceSelectNode : function(command, ui, value) { + selection.select(value); + }, + + mceInsertContent : function(command, ui, value) { + selection.setContent(value); + }, + + mceInsertRawHTML : function(command, ui, value) { + selection.setContent('tiny_mce_marker'); + editor.setContent(editor.getContent().replace(/tiny_mce_marker/g, value)); + }, + + mceSetContent : function(command, ui, value) { + editor.setContent(value); + }, + + 'Indent,Outdent' : function(command) { + var intentValue, indentUnit, value; + + // Setup indent level + intentValue = settings.indentation; + indentUnit = /[a-z%]+$/i.exec(intentValue); + intentValue = parseInt(intentValue); + + if (!queryCommandState('InsertUnorderedList') && !queryCommandState('InsertOrderedList')) { + each(selection.getSelectedBlocks(), function(element) { + if (command == 'outdent') { + value = Math.max(0, parseInt(element.style.paddingLeft || 0) - intentValue); + dom.setStyle(element, 'paddingLeft', value ? value + indentUnit : ''); + } else + dom.setStyle(element, 'paddingLeft', (parseInt(element.style.paddingLeft || 0) + intentValue) + indentUnit); + }); + } else + execNativeCommand(command); + }, + + mceRepaint : function() { + var bookmark; + + if (tinymce.isGecko) { + try { + storeSelection(TRUE); + + if (selection.getSel()) + selection.getSel().selectAllChildren(editor.getBody()); + + selection.collapse(TRUE); + restoreSelection(); + } catch (ex) { + // Ignore + } + } + }, + + InsertHorizontalRule : function() { + selection.setContent('
'); + }, + + mceToggleVisualAid : function() { + editor.hasVisual = !editor.hasVisual; + editor.addVisual(); + }, + + mceReplaceContent : function(command, ui, value) { + selection.setContent(value.replace(/\{\$selection\}/g, selection.getContent({format : 'text'}))); + }, + + mceInsertLink : function(command, ui, value) { + var link = dom.getParent(selection.getNode(), 'a'); + + if (tinymce.is(value, 'string')) + value = {href : value}; + + if (!link) { + execNativeCommand('CreateLink', FALSE, 'javascript:mctmp(0);'); + each(dom.select('a[href=javascript:mctmp(0);]'), function(link) { + dom.setAttribs(link, value); + }); + } else { + if (value.href) + dom.setAttribs(link, value); + else + ed.dom.remove(link, TRUE); + } + } + }); + + // Add queryCommandState overrides + addCommands({ + // Override justify commands + 'JustifyLeft,JustifyCenter,JustifyRight,JustifyFull' : function(command) { + return isFormatMatch('align' + command.substring(7)); + }, + + 'Bold,Italic,Underline,Strikethrough' : function(command) { + return isFormatMatch(command); + }, + + mceBlockQuote : function() { + return isFormatMatch('blockquote'); + }, + + Outdent : function() { + var node; + + if (settings.inline_styles) { + if ((node = dom.getParent(selection.getStart(), dom.isBlock)) && parseInt(node.style.paddingLeft) > 0) + return TRUE; + + if ((node = dom.getParent(selection.getEnd(), dom.isBlock)) && parseInt(node.style.paddingLeft) > 0) + return TRUE; + } + + return queryCommandState('InsertUnorderedList') || queryCommandState('InsertOrderedList') || (!settings.inline_styles && !!dom.getParent(selection.getNode(), 'BLOCKQUOTE')); + }, + + 'InsertUnorderedList,InsertOrderedList' : function(command) { + return dom.getParent(selection.getNode(), command == 'insertunorderedlist' ? 'UL' : 'OL'); + } + }, 'state'); + + // Add queryCommandValue overrides + addCommands({ + 'FontSize,FontName' : function(command) { + var value = 0, parent; + + if (parent = dom.getParent(selection.getNode(), 'span')) { + if (command == 'fontsize') + value = parent.style.fontSize; + else + value = parent.style.fontFamily.replace(/, /g, ',').replace(/[\'\"]/g, '').toLowerCase(); + } + + return value; + } + }, 'value'); + + // Add undo manager logic + if (settings.custom_undo_redo) { + addCommands({ + Undo : function() { + editor.undoManager.undo(); + }, + + Redo : function() { + editor.undoManager.redo(); + } + }); + } + }; +})(tinymce); +(function(tinymce) { + tinymce.create('tinymce.UndoManager', { + index : 0, + data : null, + typing : 0, + + UndoManager : function(ed) { + var t = this, Dispatcher = tinymce.util.Dispatcher; + + t.editor = ed; + t.data = []; + t.onAdd = new Dispatcher(this); + t.onUndo = new Dispatcher(this); + t.onRedo = new Dispatcher(this); + }, + + add : function(l) { + var t = this, i, ed = t.editor, b, s = ed.settings, la; + + l = l || {}; + l.content = l.content || ed.getContent({format : 'raw', no_events : 1}); + l.content = l.content.replace(/^\s*|\s*$/g, ''); + + // Add undo level if needed + la = t.data[t.index]; + if (la && la.content == l.content) { + if (t.index > 0 || t.data.length == 1) + return null; + } + + // Time to compress + if (s.custom_undo_redo_levels) { + if (t.data.length > s.custom_undo_redo_levels) { + for (i = 0; i < t.data.length - 1; i++) + t.data[i] = t.data[i + 1]; + + t.data.length--; + t.index = t.data.length; + } + } + + if (s.custom_undo_redo_restore_selection) + l.bookmark = b = l.bookmark || ed.selection.getBookmark(2, true); + + // Crop array if needed + if (t.index < t.data.length - 1) { + // Treat first level as initial + if (t.index == 0) + t.data = []; + else + t.data.length = t.index + 1; + } + + t.data.push(l); + t.index = t.data.length - 1; + + t.onAdd.dispatch(t, l); + ed.isNotDirty = 0; + + //console.log(t.index); + //console.dir(t.data); + + return l; + }, + + undo : function() { + var t = this, ed = t.editor, l = l, i; + + if (t.typing) { + t.add(); + t.typing = 0; + } + + if (t.index > 0) { + l = t.data[--t.index]; + + ed.setContent(l.content, {format : 'raw'}); + ed.selection.moveToBookmark(l.bookmark); + + t.onUndo.dispatch(t, l); + } + + return l; + }, + + redo : function() { + var t = this, ed = t.editor, l = null; + + if (t.index < t.data.length - 1) { + l = t.data[++t.index]; + ed.setContent(l.content, {format : 'raw'}); + ed.selection.moveToBookmark(l.bookmark); + + t.onRedo.dispatch(t, l); + } + + return l; + }, + + clear : function() { + var t = this; + + t.data = []; + t.index = 0; + t.typing = 0; + }, + + hasUndo : function() { + return this.index > 0 || this.typing; + }, + + hasRedo : function() { + return this.index < this.data.length - 1; + } + }); +})(tinymce); + +(function(tinymce) { + // Shorten names + var Event = tinymce.dom.Event, + isIE = tinymce.isIE, + isGecko = tinymce.isGecko, + isOpera = tinymce.isOpera, + each = tinymce.each, + extend = tinymce.extend, + TRUE = true, + FALSE = false; + + // Checks if the selection/caret is at the end of the specified block element + function isAtEnd(rng, par) { + var rng2 = par.ownerDocument.createRange(); + + rng2.setStart(rng.endContainer, rng.endOffset); + rng2.setEndAfter(par); + + // Get number of characters to the right of the cursor if it's zero then we are at the end and need to merge the next block element + return rng2.cloneContents().textContent.length == 0; + }; + + function isEmpty(n) { + n = n.innerHTML; + + n = n.replace(/<(img|hr|table|input|select|textarea)[ \>]/gi, '-'); // Keep these convert them to - chars + n = n.replace(/<[^>]+>/g, ''); // Remove all tags + + return n.replace(/[ \u00a0\t\r\n]+/g, '') == ''; + }; + + function splitList(selection, dom, li) { + var listBlock, block; + + if (isEmpty(li)) { + listBlock = dom.getParent(li, 'ul,ol'); + + if (!dom.getParent(listBlock.parentNode, 'ul,ol')) { + dom.split(listBlock, li); + block = dom.create('p', 0, '
'); + dom.replace(block, li); + selection.select(block, 1); + } + + return FALSE; + } + + return TRUE; + }; + + tinymce.create('tinymce.ForceBlocks', { + ForceBlocks : function(ed) { + var t = this, s = ed.settings, elm; + + t.editor = ed; + t.dom = ed.dom; + elm = (s.forced_root_block || 'p').toLowerCase(); + s.element = elm.toUpperCase(); + + ed.onPreInit.add(t.setup, t); + + t.reOpera = new RegExp('(\\u00a0| | )<\/' + elm + '>', 'gi'); + t.rePadd = new RegExp(']+)><\\\/p>|]+)\\\/>|]+)>\\s+<\\\/p>|

<\\\/p>||

\\s+<\\\/p>'.replace(/p/g, elm), 'gi'); + t.reNbsp2BR1 = new RegExp(']+)>[\\s\\u00a0]+<\\\/p>|

[\\s\\u00a0]+<\\\/p>'.replace(/p/g, elm), 'gi'); + t.reNbsp2BR2 = new RegExp('<%p()([^>]+)>( | )<\\\/%p>|<%p>( | )<\\\/%p>'.replace(/%p/g, elm), 'gi'); + t.reBR2Nbsp = new RegExp(']+)>\\s*
\\s*<\\\/p>|

\\s*
\\s*<\\\/p>'.replace(/p/g, elm), 'gi'); + + function padd(ed, o) { + if (isOpera) + o.content = o.content.replace(t.reOpera, ''); + + o.content = o.content.replace(t.rePadd, '<' + elm + '$1$2$3$4$5$6>\u00a0'); + + if (!isIE && !isOpera && o.set) { + // Use   instead of BR in padded paragraphs + o.content = o.content.replace(t.reNbsp2BR1, '<' + elm + '$1$2>
'); + o.content = o.content.replace(t.reNbsp2BR2, '<' + elm + '$1$2>
'); + } else + o.content = o.content.replace(t.reBR2Nbsp, '<' + elm + '$1$2>\u00a0'); + }; + + ed.onBeforeSetContent.add(padd); + ed.onPostProcess.add(padd); + + if (s.forced_root_block) { + ed.onInit.add(t.forceRoots, t); + ed.onSetContent.add(t.forceRoots, t); + ed.onBeforeGetContent.add(t.forceRoots, t); + } + }, + + setup : function() { + var t = this, ed = t.editor, s = ed.settings, dom = ed.dom, selection = ed.selection; + + // Force root blocks when typing and when getting output + if (s.forced_root_block) { + ed.onBeforeExecCommand.add(t.forceRoots, t); + ed.onKeyUp.add(t.forceRoots, t); + ed.onPreProcess.add(t.forceRoots, t); + } + + if (s.force_br_newlines) { + // Force IE to produce BRs on enter + if (isIE) { + ed.onKeyPress.add(function(ed, e) { + var n; + + if (e.keyCode == 13 && selection.getNode().nodeName != 'LI') { + selection.setContent('
', {format : 'raw'}); + n = dom.get('__'); + n.removeAttribute('id'); + selection.select(n); + selection.collapse(); + return Event.cancel(e); + } + }); + } + } + + if (!isIE && s.force_p_newlines) { + ed.onKeyPress.add(function(ed, e) { + if (e.keyCode == 13 && !e.shiftKey && !t.insertPara(e)) + Event.cancel(e); + }); + + if (isGecko) { + ed.onKeyDown.add(function(ed, e) { + if ((e.keyCode == 8 || e.keyCode == 46) && !e.shiftKey) + t.backspaceDelete(e, e.keyCode == 8); + }); + } + } + + // Workaround for missing shift+enter support, http://bugs.webkit.org/show_bug.cgi?id=16973 + if (tinymce.isWebKit) { + function insertBr(ed) { + var rng = selection.getRng(), br, div = dom.create('div', null, ' '), divYPos, vpHeight = dom.getViewPort(ed.getWin()).h; + + // Insert BR element + rng.insertNode(br = dom.create('br')); + + // Place caret after BR + rng.setStartAfter(br); + rng.setEndAfter(br); + selection.setRng(rng); + + // Could not place caret after BR then insert an nbsp entity and move the caret + if (selection.getSel().focusNode == br.previousSibling) { + selection.select(dom.insertAfter(dom.doc.createTextNode('\u00a0'), br)); + selection.collapse(TRUE); + } + + // Create a temporary DIV after the BR and get the position as it + // seems like getPos() returns 0 for text nodes and BR elements. + dom.insertAfter(div, br); + divYPos = dom.getPos(div).y; + dom.remove(div); + + // Scroll to new position, scrollIntoView can't be used due to bug: http://bugs.webkit.org/show_bug.cgi?id=16117 + if (divYPos > vpHeight) // It is not necessary to scroll if the DIV is inside the view port. + ed.getWin().scrollTo(0, divYPos); + }; + + ed.onKeyPress.add(function(ed, e) { + if (e.keyCode == 13 && (e.shiftKey || s.force_br_newlines)) { + insertBr(ed); + Event.cancel(e); + } + }); + } + + // Padd empty inline elements within block elements + // For example:

becomes

 

+ ed.onPreProcess.add(function(ed, o) { + each(dom.select('p,h1,h2,h3,h4,h5,h6,div', o.node), function(p) { + if (isEmpty(p)) { + each(dom.select('span,em,strong,b,i', o.node), function(n) { + if (!n.hasChildNodes()) { + n.appendChild(ed.getDoc().createTextNode('\u00a0')); + return FALSE; // Break the loop one padding is enough + } + }); + } + }); + }); + + // IE specific fixes + if (isIE) { + // Replaces IE:s auto generated paragraphs with the specified element name + if (s.element != 'P') { + ed.onKeyPress.add(function(ed, e) { + t.lastElm = selection.getNode().nodeName; + }); + + ed.onKeyUp.add(function(ed, e) { + var bl, n = selection.getNode(), b = ed.getBody(); + + if (b.childNodes.length === 1 && n.nodeName == 'P') { + n = dom.rename(n, s.element); + selection.select(n); + selection.collapse(); + ed.nodeChanged(); + } else if (e.keyCode == 13 && !e.shiftKey && t.lastElm != 'P') { + bl = dom.getParent(n, 'p'); + + if (bl) { + dom.rename(bl, s.element); + ed.nodeChanged(); + } + } + }); + } + } + }, + + find : function(n, t, s) { + var ed = this.editor, w = ed.getDoc().createTreeWalker(n, 4, null, FALSE), c = -1; + + while (n = w.nextNode()) { + c++; + + // Index by node + if (t == 0 && n == s) + return c; + + // Node by index + if (t == 1 && c == s) + return n; + } + + return -1; + }, + + forceRoots : function(ed, e) { + var t = this, ed = t.editor, b = ed.getBody(), d = ed.getDoc(), se = ed.selection, s = se.getSel(), r = se.getRng(), si = -2, ei, so, eo, tr, c = -0xFFFFFF; + var nx, bl, bp, sp, le, nl = b.childNodes, i, n, eid; + + // Fix for bug #1863847 + //if (e && e.keyCode == 13) + // return TRUE; + + // Wrap non blocks into blocks + for (i = nl.length - 1; i >= 0; i--) { + nx = nl[i]; + + // Ignore internal elements + if (nx.nodeType === 1 && nx.getAttribute('_mce_type')) { + bl = null; + continue; + } + + // Is text or non block element + if (nx.nodeType === 3 || (!t.dom.isBlock(nx) && nx.nodeType !== 8 && !/^(script|mce:script|style|mce:style)$/i.test(nx.nodeName))) { + if (!bl) { + // Create new block but ignore whitespace + if (nx.nodeType != 3 || /[^\s]/g.test(nx.nodeValue)) { + // Store selection + if (si == -2 && r) { + if (!isIE) { + // If selection is element then mark it + if (r.startContainer.nodeType == 1 && (n = r.startContainer.childNodes[r.startOffset]) && n.nodeType == 1) { + // Save the id of the selected element + eid = n.getAttribute("id"); + n.setAttribute("id", "__mce"); + } else { + // If element is inside body, might not be the case in contentEdiable mode + if (ed.dom.getParent(r.startContainer, function(e) {return e === b;})) { + so = r.startOffset; + eo = r.endOffset; + si = t.find(b, 0, r.startContainer); + ei = t.find(b, 0, r.endContainer); + } + } + } else { + tr = d.body.createTextRange(); + tr.moveToElementText(b); + tr.collapse(1); + bp = tr.move('character', c) * -1; + + tr = r.duplicate(); + tr.collapse(1); + sp = tr.move('character', c) * -1; + + tr = r.duplicate(); + tr.collapse(0); + le = (tr.move('character', c) * -1) - sp; + + si = sp - bp; + ei = le; + } + } + + // Uses replaceChild instead of cloneNode since it removes selected attribute from option elements on IE + // See: http://support.microsoft.com/kb/829907 + bl = ed.dom.create(ed.settings.forced_root_block); + nx.parentNode.replaceChild(bl, nx); + bl.appendChild(nx); + } + } else { + if (bl.hasChildNodes()) + bl.insertBefore(nx, bl.firstChild); + else + bl.appendChild(nx); + } + } else + bl = null; // Time to create new block + } + + // Restore selection + if (si != -2) { + if (!isIE) { + bl = b.getElementsByTagName(ed.settings.element)[0]; + r = d.createRange(); + + // Select last location or generated block + if (si != -1) + r.setStart(t.find(b, 1, si), so); + else + r.setStart(bl, 0); + + // Select last location or generated block + if (ei != -1) + r.setEnd(t.find(b, 1, ei), eo); + else + r.setEnd(bl, 0); + + if (s) { + s.removeAllRanges(); + s.addRange(r); + } + } else { + try { + r = s.createRange(); + r.moveToElementText(b); + r.collapse(1); + r.moveStart('character', si); + r.moveEnd('character', ei); + r.select(); + } catch (ex) { + // Ignore + } + } + } else if (!isIE && (n = ed.dom.get('__mce'))) { + // Restore the id of the selected element + if (eid) + n.setAttribute('id', eid); + else + n.removeAttribute('id'); + + // Move caret before selected element + r = d.createRange(); + r.setStartBefore(n); + r.setEndBefore(n); + se.setRng(r); + } + }, + + getParentBlock : function(n) { + var d = this.dom; + + return d.getParent(n, d.isBlock); + }, + + insertPara : function(e) { + var t = this, ed = t.editor, dom = ed.dom, d = ed.getDoc(), se = ed.settings, s = ed.selection.getSel(), r = s.getRangeAt(0), b = d.body; + var rb, ra, dir, sn, so, en, eo, sb, eb, bn, bef, aft, sc, ec, n, vp = dom.getViewPort(ed.getWin()), y, ch, car; + + // If root blocks are forced then use Operas default behavior since it's really good +// Removed due to bug: #1853816 +// if (se.forced_root_block && isOpera) +// return TRUE; + + // Setup before range + rb = d.createRange(); + + // If is before the first block element and in body, then move it into first block element + rb.setStart(s.anchorNode, s.anchorOffset); + rb.collapse(TRUE); + + // Setup after range + ra = d.createRange(); + + // If is before the first block element and in body, then move it into first block element + ra.setStart(s.focusNode, s.focusOffset); + ra.collapse(TRUE); + + // Setup start/end points + dir = rb.compareBoundaryPoints(rb.START_TO_END, ra) < 0; + sn = dir ? s.anchorNode : s.focusNode; + so = dir ? s.anchorOffset : s.focusOffset; + en = dir ? s.focusNode : s.anchorNode; + eo = dir ? s.focusOffset : s.anchorOffset; + + // If selection is in empty table cell + if (sn === en && /^(TD|TH)$/.test(sn.nodeName)) { + if (sn.firstChild.nodeName == 'BR') + dom.remove(sn.firstChild); // Remove BR + + // Create two new block elements + if (sn.childNodes.length == 0) { + ed.dom.add(sn, se.element, null, '
'); + aft = ed.dom.add(sn, se.element, null, '
'); + } else { + n = sn.innerHTML; + sn.innerHTML = ''; + ed.dom.add(sn, se.element, null, n); + aft = ed.dom.add(sn, se.element, null, '
'); + } + + // Move caret into the last one + r = d.createRange(); + r.selectNodeContents(aft); + r.collapse(1); + ed.selection.setRng(r); + + return FALSE; + } + + // If the caret is in an invalid location in FF we need to move it into the first block + if (sn == b && en == b && b.firstChild && ed.dom.isBlock(b.firstChild)) { + sn = en = sn.firstChild; + so = eo = 0; + rb = d.createRange(); + rb.setStart(sn, 0); + ra = d.createRange(); + ra.setStart(en, 0); + } + + // Never use body as start or end node + sn = sn.nodeName == "HTML" ? d.body : sn; // Fix for Opera bug: https://bugs.opera.com/show_bug.cgi?id=273224&comments=yes + sn = sn.nodeName == "BODY" ? sn.firstChild : sn; + en = en.nodeName == "HTML" ? d.body : en; // Fix for Opera bug: https://bugs.opera.com/show_bug.cgi?id=273224&comments=yes + en = en.nodeName == "BODY" ? en.firstChild : en; + + // Get start and end blocks + sb = t.getParentBlock(sn); + eb = t.getParentBlock(en); + bn = sb ? sb.nodeName : se.element; // Get block name to create + + // Return inside list use default browser behavior + if (n = t.dom.getParent(sb, 'li,pre')) { + if (n.nodeName == 'LI') + return splitList(ed.selection, t.dom, n); + + return TRUE; + } + + // If caption or absolute layers then always generate new blocks within + if (sb && (sb.nodeName == 'CAPTION' || /absolute|relative|fixed/gi.test(dom.getStyle(sb, 'position', 1)))) { + bn = se.element; + sb = null; + } + + // If caption or absolute layers then always generate new blocks within + if (eb && (eb.nodeName == 'CAPTION' || /absolute|relative|fixed/gi.test(dom.getStyle(sb, 'position', 1)))) { + bn = se.element; + eb = null; + } + + // Use P instead + if (/(TD|TABLE|TH|CAPTION)/.test(bn) || (sb && bn == "DIV" && /left|right/gi.test(dom.getStyle(sb, 'float', 1)))) { + bn = se.element; + sb = eb = null; + } + + // Setup new before and after blocks + bef = (sb && sb.nodeName == bn) ? sb.cloneNode(0) : ed.dom.create(bn); + aft = (eb && eb.nodeName == bn) ? eb.cloneNode(0) : ed.dom.create(bn); + + // Remove id from after clone + aft.removeAttribute('id'); + + // Is header and cursor is at the end, then force paragraph under + if (/^(H[1-6])$/.test(bn) && isAtEnd(r, sb)) + aft = ed.dom.create(se.element); + + // Find start chop node + n = sc = sn; + do { + if (n == b || n.nodeType == 9 || t.dom.isBlock(n) || /(TD|TABLE|TH|CAPTION)/.test(n.nodeName)) + break; + + sc = n; + } while ((n = n.previousSibling ? n.previousSibling : n.parentNode)); + + // Find end chop node + n = ec = en; + do { + if (n == b || n.nodeType == 9 || t.dom.isBlock(n) || /(TD|TABLE|TH|CAPTION)/.test(n.nodeName)) + break; + + ec = n; + } while ((n = n.nextSibling ? n.nextSibling : n.parentNode)); + + // Place first chop part into before block element + if (sc.nodeName == bn) + rb.setStart(sc, 0); + else + rb.setStartBefore(sc); + + rb.setEnd(sn, so); + bef.appendChild(rb.cloneContents() || d.createTextNode('')); // Empty text node needed for Safari + + // Place secnd chop part within new block element + try { + ra.setEndAfter(ec); + } catch(ex) { + //console.debug(s.focusNode, s.focusOffset); + } + + ra.setStart(en, eo); + aft.appendChild(ra.cloneContents() || d.createTextNode('')); // Empty text node needed for Safari + + // Create range around everything + r = d.createRange(); + if (!sc.previousSibling && sc.parentNode.nodeName == bn) { + r.setStartBefore(sc.parentNode); + } else { + if (rb.startContainer.nodeName == bn && rb.startOffset == 0) + r.setStartBefore(rb.startContainer); + else + r.setStart(rb.startContainer, rb.startOffset); + } + + if (!ec.nextSibling && ec.parentNode.nodeName == bn) + r.setEndAfter(ec.parentNode); + else + r.setEnd(ra.endContainer, ra.endOffset); + + // Delete and replace it with new block elements + r.deleteContents(); + + if (isOpera) + ed.getWin().scrollTo(0, vp.y); + + // Never wrap blocks in blocks + if (bef.firstChild && bef.firstChild.nodeName == bn) + bef.innerHTML = bef.firstChild.innerHTML; + + if (aft.firstChild && aft.firstChild.nodeName == bn) + aft.innerHTML = aft.firstChild.innerHTML; + + // Padd empty blocks + if (isEmpty(bef)) + bef.innerHTML = '
'; + + function appendStyles(e, en) { + var nl = [], nn, n, i; + + e.innerHTML = ''; + + // Make clones of style elements + if (se.keep_styles) { + n = en; + do { + // We only want style specific elements + if (/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(n.nodeName)) { + nn = n.cloneNode(FALSE); + dom.setAttrib(nn, 'id', ''); // Remove ID since it needs to be unique + nl.push(nn); + } + } while (n = n.parentNode); + } + + // Append style elements to aft + if (nl.length > 0) { + for (i = nl.length - 1, nn = e; i >= 0; i--) + nn = nn.appendChild(nl[i]); + + // Padd most inner style element + nl[0].innerHTML = isOpera ? ' ' : '
'; // Extra space for Opera so that the caret can move there + return nl[0]; // Move caret to most inner element + } else + e.innerHTML = isOpera ? ' ' : '
'; // Extra space for Opera so that the caret can move there + }; + + // Fill empty afterblook with current style + if (isEmpty(aft)) + car = appendStyles(aft, en); + + // Opera needs this one backwards for older versions + if (isOpera && parseFloat(opera.version()) < 9.5) { + r.insertNode(bef); + r.insertNode(aft); + } else { + r.insertNode(aft); + r.insertNode(bef); + } + + // Normalize + aft.normalize(); + bef.normalize(); + + function first(n) { + return d.createTreeWalker(n, NodeFilter.SHOW_TEXT, null, FALSE).nextNode() || n; + }; + + // Move cursor and scroll into view + r = d.createRange(); + r.selectNodeContents(isGecko ? first(car || aft) : car || aft); + r.collapse(1); + s.removeAllRanges(); + s.addRange(r); + + // scrollIntoView seems to scroll the parent window in most browsers now including FF 3.0b4 so it's time to stop using it and do it our selfs + y = ed.dom.getPos(aft).y; + ch = aft.clientHeight; + + // Is element within viewport + if (y < vp.y || y + ch > vp.y + vp.h) { + ed.getWin().scrollTo(0, y < vp.y ? y : y - vp.h + 25); // Needs to be hardcoded to roughly one line of text if a huge text block is broken into two blocks + //console.debug('SCROLL!', 'vp.y: ' + vp.y, 'y' + y, 'vp.h' + vp.h, 'clientHeight' + aft.clientHeight, 'yyy: ' + (y < vp.y ? y : y - vp.h + aft.clientHeight)); + } + + return FALSE; + }, + + backspaceDelete : function(e, bs) { + var t = this, ed = t.editor, b = ed.getBody(), dom = ed.dom, n, se = ed.selection, r = se.getRng(), sc = r.startContainer, n, w, tn; + + // The caret sometimes gets stuck in Gecko if you delete empty paragraphs + // This workaround removes the element by hand and moves the caret to the previous element + if (sc && ed.dom.isBlock(sc) && !/^(TD|TH)$/.test(sc.nodeName) && bs) { + if (sc.childNodes.length == 0 || (sc.childNodes.length == 1 && sc.firstChild.nodeName == 'BR')) { + // Find previous block element + n = sc; + while ((n = n.previousSibling) && !ed.dom.isBlock(n)) ; + + if (n) { + if (sc != b.firstChild) { + // Find last text node + w = ed.dom.doc.createTreeWalker(n, NodeFilter.SHOW_TEXT, null, FALSE); + while (tn = w.nextNode()) + n = tn; + + // Place caret at the end of last text node + r = ed.getDoc().createRange(); + r.setStart(n, n.nodeValue ? n.nodeValue.length : 0); + r.setEnd(n, n.nodeValue ? n.nodeValue.length : 0); + se.setRng(r); + + // Remove the target container + ed.dom.remove(sc); + } + + return Event.cancel(e); + } + } + } + + // Gecko generates BR elements here and there, we don't like those so lets remove them + function handler(e) { + var pr; + + e = e.target; + + // A new BR was created in a block element, remove it + if (e && e.parentNode && e.nodeName == 'BR' && (n = t.getParentBlock(e))) { + pr = e.previousSibling; + + Event.remove(b, 'DOMNodeInserted', handler); + + // Is there whitespace at the end of the node before then we might need the pesky BR + // to place the caret at a correct location see bug: #2013943 + if (pr && pr.nodeType == 3 && /\s+$/.test(pr.nodeValue)) + return; + + // Only remove BR elements that got inserted in the middle of the text + if (e.previousSibling || e.nextSibling) + ed.dom.remove(e); + } + }; + + // Listen for new nodes + Event._add(b, 'DOMNodeInserted', handler); + + // Remove listener + window.setTimeout(function() { + Event._remove(b, 'DOMNodeInserted', handler); + }, 1); + } + }); +})(tinymce); + +(function(tinymce) { + // Shorten names + var DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, extend = tinymce.extend; + + tinymce.create('tinymce.ControlManager', { + ControlManager : function(ed, s) { + var t = this, i; + + s = s || {}; + t.editor = ed; + t.controls = {}; + t.onAdd = new tinymce.util.Dispatcher(t); + t.onPostRender = new tinymce.util.Dispatcher(t); + t.prefix = s.prefix || ed.id + '_'; + t._cls = {}; + + t.onPostRender.add(function() { + each(t.controls, function(c) { + c.postRender(); + }); + }); + }, + + get : function(id) { + return this.controls[this.prefix + id] || this.controls[id]; + }, + + setActive : function(id, s) { + var c = null; + + if (c = this.get(id)) + c.setActive(s); + + return c; + }, + + setDisabled : function(id, s) { + var c = null; + + if (c = this.get(id)) + c.setDisabled(s); + + return c; + }, + + add : function(c) { + var t = this; + + if (c) { + t.controls[c.id] = c; + t.onAdd.dispatch(c, t); + } + + return c; + }, + + createControl : function(n) { + var c, t = this, ed = t.editor; + + each(ed.plugins, function(p) { + if (p.createControl) { + c = p.createControl(n, t); + + if (c) + return false; + } + }); + + switch (n) { + case "|": + case "separator": + return t.createSeparator(); + } + + if (!c && ed.buttons && (c = ed.buttons[n])) + return t.createButton(n, c); + + return t.add(c); + }, + + createDropMenu : function(id, s, cc) { + var t = this, ed = t.editor, c, bm, v, cls; + + s = extend({ + 'class' : 'mceDropDown', + constrain : ed.settings.constrain_menus + }, s); + + s['class'] = s['class'] + ' ' + ed.getParam('skin') + 'Skin'; + if (v = ed.getParam('skin_variant')) + s['class'] += ' ' + ed.getParam('skin') + 'Skin' + v.substring(0, 1).toUpperCase() + v.substring(1); + + id = t.prefix + id; + cls = cc || t._cls.dropmenu || tinymce.ui.DropMenu; + c = t.controls[id] = new cls(id, s); + c.onAddItem.add(function(c, o) { + var s = o.settings; + + s.title = ed.getLang(s.title, s.title); + + if (!s.onclick) { + s.onclick = function(v) { + if (s.cmd) + ed.execCommand(s.cmd, s.ui || false, s.value); + }; + } + }); + + ed.onRemove.add(function() { + c.destroy(); + }); + + // Fix for bug #1897785, #1898007 + if (tinymce.isIE) { + c.onShowMenu.add(function() { + // IE 8 needs focus in order to store away a range with the current collapsed caret location + ed.focus(); + + bm = ed.selection.getBookmark(1); + }); + + c.onHideMenu.add(function() { + if (bm) { + ed.selection.moveToBookmark(bm); + bm = 0; + } + }); + } + + return t.add(c); + }, + + createListBox : function(id, s, cc) { + var t = this, ed = t.editor, cmd, c, cls; + + if (t.get(id)) + return null; + + s.title = ed.translate(s.title); + s.scope = s.scope || ed; + + if (!s.onselect) { + s.onselect = function(v) { + ed.execCommand(s.cmd, s.ui || false, v || s.value); + }; + } + + s = extend({ + title : s.title, + 'class' : 'mce_' + id, + scope : s.scope, + control_manager : t + }, s); + + id = t.prefix + id; + + if (ed.settings.use_native_selects) + c = new tinymce.ui.NativeListBox(id, s); + else { + cls = cc || t._cls.listbox || tinymce.ui.ListBox; + c = new cls(id, s); + } + + t.controls[id] = c; + + // Fix focus problem in Safari + if (tinymce.isWebKit) { + c.onPostRender.add(function(c, n) { + // Store bookmark on mousedown + Event.add(n, 'mousedown', function() { + ed.bookmark = ed.selection.getBookmark(1); + }); + + // Restore on focus, since it might be lost + Event.add(n, 'focus', function() { + ed.selection.moveToBookmark(ed.bookmark); + ed.bookmark = null; + }); + }); + } + + if (c.hideMenu) + ed.onMouseDown.add(c.hideMenu, c); + + return t.add(c); + }, + + createButton : function(id, s, cc) { + var t = this, ed = t.editor, o, c, cls; + + if (t.get(id)) + return null; + + s.title = ed.translate(s.title); + s.label = ed.translate(s.label); + s.scope = s.scope || ed; + + if (!s.onclick && !s.menu_button) { + s.onclick = function() { + ed.execCommand(s.cmd, s.ui || false, s.value); + }; + } + + s = extend({ + title : s.title, + 'class' : 'mce_' + id, + unavailable_prefix : ed.getLang('unavailable', ''), + scope : s.scope, + control_manager : t + }, s); + + id = t.prefix + id; + + if (s.menu_button) { + cls = cc || t._cls.menubutton || tinymce.ui.MenuButton; + c = new cls(id, s); + ed.onMouseDown.add(c.hideMenu, c); + } else { + cls = t._cls.button || tinymce.ui.Button; + c = new cls(id, s); + } + + return t.add(c); + }, + + createMenuButton : function(id, s, cc) { + s = s || {}; + s.menu_button = 1; + + return this.createButton(id, s, cc); + }, + + createSplitButton : function(id, s, cc) { + var t = this, ed = t.editor, cmd, c, cls; + + if (t.get(id)) + return null; + + s.title = ed.translate(s.title); + s.scope = s.scope || ed; + + if (!s.onclick) { + s.onclick = function(v) { + ed.execCommand(s.cmd, s.ui || false, v || s.value); + }; + } + + if (!s.onselect) { + s.onselect = function(v) { + ed.execCommand(s.cmd, s.ui || false, v || s.value); + }; + } + + s = extend({ + title : s.title, + 'class' : 'mce_' + id, + scope : s.scope, + control_manager : t + }, s); + + id = t.prefix + id; + cls = cc || t._cls.splitbutton || tinymce.ui.SplitButton; + c = t.add(new cls(id, s)); + ed.onMouseDown.add(c.hideMenu, c); + + return c; + }, + + createColorSplitButton : function(id, s, cc) { + var t = this, ed = t.editor, cmd, c, cls, bm; + + if (t.get(id)) + return null; + + s.title = ed.translate(s.title); + s.scope = s.scope || ed; + + if (!s.onclick) { + s.onclick = function(v) { + if (tinymce.isIE) + bm = ed.selection.getBookmark(1); + + ed.execCommand(s.cmd, s.ui || false, v || s.value); + }; + } + + if (!s.onselect) { + s.onselect = function(v) { + ed.execCommand(s.cmd, s.ui || false, v || s.value); + }; + } + + s = extend({ + title : s.title, + 'class' : 'mce_' + id, + 'menu_class' : ed.getParam('skin') + 'Skin', + scope : s.scope, + more_colors_title : ed.getLang('more_colors') + }, s); + + id = t.prefix + id; + cls = cc || t._cls.colorsplitbutton || tinymce.ui.ColorSplitButton; + c = new cls(id, s); + ed.onMouseDown.add(c.hideMenu, c); + + // Remove the menu element when the editor is removed + ed.onRemove.add(function() { + c.destroy(); + }); + + // Fix for bug #1897785, #1898007 + if (tinymce.isIE) { + c.onShowMenu.add(function() { + // IE 8 needs focus in order to store away a range with the current collapsed caret location + ed.focus(); + bm = ed.selection.getBookmark(1); + }); + + c.onHideMenu.add(function() { + if (bm) { + ed.selection.moveToBookmark(bm); + bm = 0; + } + }); + } + + return t.add(c); + }, + + createToolbar : function(id, s, cc) { + var c, t = this, cls; + + id = t.prefix + id; + cls = cc || t._cls.toolbar || tinymce.ui.Toolbar; + c = new cls(id, s); + + if (t.get(id)) + return null; + + return t.add(c); + }, + + createSeparator : function(cc) { + var cls = cc || this._cls.separator || tinymce.ui.Separator; + + return new cls(); + }, + + setControlType : function(n, c) { + return this._cls[n.toLowerCase()] = c; + }, + + destroy : function() { + each(this.controls, function(c) { + c.destroy(); + }); + + this.controls = null; + } + }); +})(tinymce); + +(function(tinymce) { + var Dispatcher = tinymce.util.Dispatcher, each = tinymce.each, isIE = tinymce.isIE, isOpera = tinymce.isOpera; + + tinymce.create('tinymce.WindowManager', { + WindowManager : function(ed) { + var t = this; + + t.editor = ed; + t.onOpen = new Dispatcher(t); + t.onClose = new Dispatcher(t); + t.params = {}; + t.features = {}; + }, + + open : function(s, p) { + var t = this, f = '', x, y, mo = t.editor.settings.dialog_type == 'modal', w, sw, sh, vp = tinymce.DOM.getViewPort(), u; + + // Default some options + s = s || {}; + p = p || {}; + sw = isOpera ? vp.w : screen.width; // Opera uses windows inside the Opera window + sh = isOpera ? vp.h : screen.height; + s.name = s.name || 'mc_' + new Date().getTime(); + s.width = parseInt(s.width || 320); + s.height = parseInt(s.height || 240); + s.resizable = true; + s.left = s.left || parseInt(sw / 2.0) - (s.width / 2.0); + s.top = s.top || parseInt(sh / 2.0) - (s.height / 2.0); + p.inline = false; + p.mce_width = s.width; + p.mce_height = s.height; + p.mce_auto_focus = s.auto_focus; + + if (mo) { + if (isIE) { + s.center = true; + s.help = false; + s.dialogWidth = s.width + 'px'; + s.dialogHeight = s.height + 'px'; + s.scroll = s.scrollbars || false; + } + } + + // Build features string + each(s, function(v, k) { + if (tinymce.is(v, 'boolean')) + v = v ? 'yes' : 'no'; + + if (!/^(name|url)$/.test(k)) { + if (isIE && mo) + f += (f ? ';' : '') + k + ':' + v; + else + f += (f ? ',' : '') + k + '=' + v; + } + }); + + t.features = s; + t.params = p; + t.onOpen.dispatch(t, s, p); + + u = s.url || s.file; + u = tinymce._addVer(u); + + try { + if (isIE && mo) { + w = 1; + window.showModalDialog(u, window, f); + } else + w = window.open(u, s.name, f); + } catch (ex) { + // Ignore + } + + if (!w) + alert(t.editor.getLang('popup_blocked')); + }, + + close : function(w) { + w.close(); + this.onClose.dispatch(this); + }, + + createInstance : function(cl, a, b, c, d, e) { + var f = tinymce.resolve(cl); + + return new f(a, b, c, d, e); + }, + + confirm : function(t, cb, s, w) { + w = w || window; + + cb.call(s || this, w.confirm(this._decode(this.editor.getLang(t, t)))); + }, + + alert : function(tx, cb, s, w) { + var t = this; + + w = w || window; + w.alert(t._decode(t.editor.getLang(tx, tx))); + + if (cb) + cb.call(s || t); + }, + + resizeBy : function(dw, dh, win) { + win.resizeBy(dw, dh); + }, + + // Internal functions + + _decode : function(s) { + return tinymce.DOM.decode(s).replace(/\\n/g, '\n'); + } + }); +}(tinymce)); +(function(tinymce) { + function CommandManager() { + var execCommands = {}, queryStateCommands = {}, queryValueCommands = {}; + + function add(collection, cmd, func, scope) { + if (typeof(cmd) == 'string') + cmd = [cmd]; + + tinymce.each(cmd, function(cmd) { + collection[cmd.toLowerCase()] = {func : func, scope : scope}; + }); + }; + + tinymce.extend(this, { + add : function(cmd, func, scope) { + add(execCommands, cmd, func, scope); + }, + + addQueryStateHandler : function(cmd, func, scope) { + add(queryStateCommands, cmd, func, scope); + }, + + addQueryValueHandler : function(cmd, func, scope) { + add(queryValueCommands, cmd, func, scope); + }, + + execCommand : function(scope, cmd, ui, value, args) { + if (cmd = execCommands[cmd.toLowerCase()]) { + if (cmd.func.call(scope || cmd.scope, ui, value, args) !== false) + return true; + } + }, + + queryCommandValue : function() { + if (cmd = queryValueCommands[cmd.toLowerCase()]) + return cmd.func.call(scope || cmd.scope, ui, value, args); + }, + + queryCommandState : function() { + if (cmd = queryStateCommands[cmd.toLowerCase()]) + return cmd.func.call(scope || cmd.scope, ui, value, args); + } + }); + }; + + tinymce.GlobalCommands = new CommandManager(); +})(tinymce); +(function(tinymce) { + tinymce.Formatter = function(ed) { + var formats = {}, + each = tinymce.each, + dom = ed.dom, + selection = ed.selection, + TreeWalker = tinymce.dom.TreeWalker, + rangeUtils = new tinymce.dom.RangeUtils(dom), + isValid = ed.schema.isValid, + isBlock = dom.isBlock, + forcedRootBlock = ed.settings.forced_root_block, + nodeIndex = dom.nodeIndex, + INVISIBLE_CHAR = '\uFEFF', + MCE_ATTR_RE = /^(src|href|style)$/, + FALSE = false, + TRUE = true, + undefined, + caretHandler, + pendingFormats; + + function getParents(node, selector) { + return dom.getParents(node, selector, dom.getRoot()); + }; + + function resetPending() { + // Needs reset + if (!pendingFormats || pendingFormats.apply.length || pendingFormats.remove.length) + pendingFormats = {apply : [], remove : []}; + }; + + ed.onMouseUp.add(resetPending); + resetPending(); + + // Public functions + + function get(name) { + return name ? formats[name] : formats; + }; + + function register(name, format) { + if (name) { + if (typeof(name) !== 'string') { + each(name, function(format, name) { + register(name, format); + }); + } else { + // Force format into array and add it to internal collection + format = format.length ? format : [format]; + + each(format, function(format) { + // Set deep to false by default on selector formats this to avoid removing + // alignment on images inside paragraphs when alignment is changed on paragraphs + if (format.deep === undefined) + format.deep = !format.selector; + + // Default to true + if (format.split === undefined) + format.split = !format.selector; + + // Default to true + if (format.remove === undefined && format.selector) + format.remove = 'none'; + + // Split classes if needed + if (typeof(format.classes) === 'string') + format.classes = format.classes.split(/\s+/); + }); + + formats[name] = format; + } + } + }; + + function apply(name, vars, node) { + var formatList = get(name), format = formatList[0], bookmark, rng, i; + + function moveStart(rng) { + var container = rng.startContainer, + offset = rng.startOffset, + walker, node; + + // Move startContainer/startOffset in to a suitable node + if (container.nodeType == 1 || container.nodeValue === "") { + walker = new TreeWalker(container.childNodes[offset]); + for (node = walker.current(); node; node = walker.next()) { + if (node.nodeType == 3 && !isBlock(node.parentNode) && !isWhiteSpaceNode(node)) { + rng.setStart(node, 0); + break; + } + } + } + + return rng; + }; + + function setElementFormat(elm, fmt) { + fmt = fmt || format; + + if (elm) { + each(fmt.styles, function(value, name) { + dom.setStyle(elm, name, replaceVars(value, vars)); + }); + + each(fmt.attributes, function(value, name) { + dom.setAttrib(elm, name, replaceVars(value, vars)); + }); + + each(fmt.classes, function(value) { + value = replaceVars(value, vars); + + if (!dom.hasClass(elm, value)) + dom.addClass(elm, value); + }); + } + }; + + function applyRngStyle(rng) { + var newWrappers = [], wrapName, wrapElm; + + // Setup wrapper element + wrapName = format.inline || format.block; + wrapElm = dom.create(wrapName); + setElementFormat(wrapElm); + + rangeUtils.walk(rng, function(nodes) { + var currentWrapElm; + + function process(node) { + var nodeName = node.nodeName.toLowerCase(), parentName = node.parentNode.nodeName.toLowerCase(); + + // Stop wrapping on br elements + if (isEq(nodeName, 'br')) { + currentWrapElm = 0; + + // Remove any br elements when we wrap things + if (format.block) + dom.remove(node); + + return; + } + + // If node is wrapper type + if (format.wrapper && matchNode(node, name, vars)) { + currentWrapElm = 0; + return; + } + + // Can we rename the block + if (format.block && !format.wrapper && isTextBlock(nodeName)) { + node = dom.rename(node, wrapName); + setElementFormat(node); + newWrappers.push(node); + currentWrapElm = 0; + return; + } + + // Handle selector patterns + if (format.selector) { + // Look for matching formats + each(formatList, function(format) { + if (dom.is(node, format.selector)) + setElementFormat(node, format); + }); + + return; + } + + // Is it valid to wrap this item + if (isValid(wrapName, nodeName) && isValid(parentName, wrapName)) { + // Start wrapping + if (!currentWrapElm) { + // Wrap the node + currentWrapElm = wrapElm.cloneNode(FALSE); + node.parentNode.insertBefore(currentWrapElm, node); + newWrappers.push(currentWrapElm); + } + + currentWrapElm.appendChild(node); + } else { + // Start a new wrapper for possible children + currentWrapElm = 0; + + each(tinymce.grep(node.childNodes), process); + + // End the last wrapper + currentWrapElm = 0; + } + }; + + // Process siblings from range + each(nodes, process); + }); + + // Cleanup + each(newWrappers, function(node) { + var childCount; + + function getChildCount(node) { + var count = 0; + + each(node.childNodes, function(node) { + if (!isWhiteSpaceNode(node) && !isBookmarkNode(node)) + count++; + }); + + return count; + }; + + function mergeStyles(node) { + var child, clone; + + each(node.childNodes, function(node) { + if (node.nodeType == 1 && !isBookmarkNode(node)) { + child = node; + return FALSE; // break loop + } + }); + + // If child was found and of the same type as the current node + if (child && matchName(child, format)) { + clone = child.cloneNode(FALSE); + setElementFormat(clone); + + dom.replace(clone, node, TRUE); + dom.remove(child, 1); + } + + return clone || node; + }; + + childCount = getChildCount(node); + + // Remove empty nodes + if (childCount === 0) { + dom.remove(node, 1); + return; + } + + if (format.inline || format.wrapper) { + // Merges the current node with it's children of similar type to reduce the number of elements + if (!format.exact && childCount === 1) + node = mergeStyles(node); + + // Remove/merge children + each(formatList, function(format) { + // Merge all children of similar type will move styles from child to parent + // this: text + // will become: text + each(dom.select(format.inline, node), function(child) { + removeFormat(format, vars, child, format.exact ? child : null); + }); + }); + + // Look for parent with similar style format + dom.getParent(node.parentNode, function(parent) { + if (matchNode(parent, name, vars)) { + dom.remove(node, 1); + node = 0; + return TRUE; + } + }); + + // Merge next and previous siblings if they are similar texttext becomes texttext + if (node) { + node = mergeSiblings(getNonWhiteSpaceSibling(node), node); + node = mergeSiblings(node, getNonWhiteSpaceSibling(node, TRUE)); + } + } + }); + }; + + if (format) { + if (node) { + rng = dom.createRng(); + + rng.setStartBefore(node); + rng.setEndAfter(node); + + applyRngStyle(rng); + } else { + if (!selection.isCollapsed() || !format.inline) { + // Apply formatting to selection + bookmark = selection.getBookmark(); + applyRngStyle(expandRng(selection.getRng(TRUE), formatList)); + + selection.moveToBookmark(bookmark); + selection.setRng(moveStart(selection.getRng(TRUE))); + ed.nodeChanged(); + } else + performCaretAction('apply', name, vars); + } + } + }; + + function remove(name, vars, node) { + var formatList = get(name), format = formatList[0], bookmark, i, rng; + + // Merges the styles for each node + function process(node) { + var children, i, l; + + // Grab the children first since the nodelist might be changed + children = tinymce.grep(node.childNodes); + + // Process current node + for (i = 0, l = formatList.length; i < l; i++) { + if (removeFormat(formatList[i], vars, node, node)) + break; + } + + // Process the children + if (format.deep) { + for (i = 0, l = children.length; i < l; i++) + process(children[i]); + } + }; + + function findFormatRoot(container) { + var formatRoot; + + // Find format root + each(getParents(container.parentNode).reverse(), function(parent) { + // Find format root element + if (!formatRoot && parent.id != '_start' && parent.id != '_end') { + // If the matched format has a remove none flag we shouldn't split it + if (!isBlock(parent) && matchNode(parent, name, vars)) + formatRoot = parent; + } + }); + + return formatRoot; + }; + + function wrapAndSplit(format_root, container, target, split) { + var parent, clone, lastClone, firstClone, i, formatRootParent; + + // Format root found then clone formats and split it + if (format_root) { + formatRootParent = format_root.parentNode; + + for (parent = container.parentNode; parent && parent != formatRootParent; parent = parent.parentNode) { + clone = parent.cloneNode(FALSE); + + for (i = 0; i < formatList.length; i++) { + if (removeFormat(formatList[i], vars, clone, clone)) { + clone = 0; + break; + } + } + + // Build wrapper node + if (clone) { + if (lastClone) + clone.appendChild(lastClone); + + if (!firstClone) + firstClone = clone; + + lastClone = clone; + } + } + + if (split) + container = dom.split(format_root, container); + + // Wrap container in cloned formats + if (lastClone) { + target.parentNode.insertBefore(lastClone, target); + firstClone.appendChild(target); + } + } + + return container; + }; + + function splitToFormatRoot(container) { + return wrapAndSplit(findFormatRoot(container), container, container, true); + }; + + function unwrap(start) { + var node = dom.get(start ? '_start' : '_end'), + out = node[start ? 'firstChild' : 'lastChild']; + + dom.remove(node, 1); + + return out; + }; + + function removeRngStyle(rng) { + var startContainer, endContainer; + + rng = expandRng(rng, formatList, TRUE); + + if (format.split) { + startContainer = getContainer(rng, TRUE); + endContainer = getContainer(rng); + + if (startContainer != endContainer) { + // Wrap start/end nodes in span element since these might be cloned/moved + startContainer = wrap(startContainer, 'span', {id : '_start', _mce_type : 'bookmark'}); + endContainer = wrap(endContainer, 'span', {id : '_end', _mce_type : 'bookmark'}); + + // Split start/end + splitToFormatRoot(startContainer); + splitToFormatRoot(endContainer); + + // Unwrap start/end to get real elements again + startContainer = unwrap(TRUE); + endContainer = unwrap(); + } else + startContainer = endContainer = splitToFormatRoot(startContainer); + + // Update range positions since they might have changed after the split operations + rng.startContainer = startContainer.parentNode; + rng.startOffset = nodeIndex(startContainer); + rng.endContainer = endContainer.parentNode; + rng.endOffset = nodeIndex(endContainer) + 1; + } + + // Remove items between start/end + rangeUtils.walk(rng, function(nodes) { + each(nodes, function(node) { + process(node); + }); + }); + }; + + // Handle node + if (node) { + rng = dom.createRng(); + rng.setStartBefore(node); + rng.setEndAfter(node); + removeRngStyle(rng); + return; + } + + if (!selection.isCollapsed() || !format.inline) { + bookmark = selection.getBookmark(); + removeRngStyle(selection.getRng(TRUE)); + selection.moveToBookmark(bookmark); + ed.nodeChanged(); + } else + performCaretAction('remove', name, vars); + }; + + function toggle(name, vars, node) { + if (match(name, vars, node)) + remove(name, vars, node); + else + apply(name, vars, node); + }; + + function matchNode(node, name, vars) { + var formatList = get(name), format, i, classes; + + function matchItems(node, format, item_name) { + var key, value, items = format[item_name], i; + + // Check all items + if (items) { + // Non indexed object + if (items.length === undefined) { + for (key in items) { + if (items.hasOwnProperty(key)) { + if (item_name === 'attributes') + value = dom.getAttrib(node, key); + else + value = getStyle(node, key); + + if (!isEq(value, replaceVars(items[key], vars))) + return; + } + } + } else { + // Only one match needed for indexed arrays + for (i = 0; i < items.length; i++) { + if (item_name === 'attributes' ? dom.getAttrib(node, items[i]) : getStyle(node, items[i])) + return TRUE; + } + } + } + + return TRUE; + }; + + if (formatList && node) { + // Check each format in list + for (i = 0; i < formatList.length; i++) { + format = formatList[i]; + + // Name name, attributes, styles and classes + if (matchName(node, format) && matchItems(node, format, 'attributes') && matchItems(node, format, 'styles')) { + // Match classes + if (classes = format.classes) { + for (i = 0; i < classes.length; i++) { + if (!dom.hasClass(node, classes[i])) + return; + } + } + + return TRUE; + } + } + } + }; + + function match(name, vars, node) { + var startNode, i; + + function matchParents(node) { + // Find first node with similar format settings + node = dom.getParent(node, function(node) { + return !!matchNode(node, name, vars); + }); + + // Do an exact check on the similar format element + return matchNode(node, name, vars); + }; + + // Check specified node + if (node) + return matchParents(node); + + // Check pending formats + if (selection.isCollapsed()) { + for (i = pendingFormats.apply.length - 1; i >= 0; i--) { + if (pendingFormats.apply[i].name == name) + return true; + } + + for (i = pendingFormats.remove.length - 1; i >= 0; i--) { + if (pendingFormats.remove[i].name == name) + return false; + } + + return matchParents(selection.getNode()); + } + + // Check selected node + node = selection.getNode(); + if (matchParents(node)) + return TRUE; + + // Check start node if it's different + startNode = selection.getStart(); + if (startNode != node) { + if (matchParents(startNode)) + return TRUE; + } + + return FALSE; + }; + + function canApply(name) { + var formatList = get(name), startNode, parents, i, x, selector; + + if (formatList) { + startNode = selection.getStart(); + parents = getParents(startNode); + + for (x = formatList.length - 1; x >= 0; x--) { + selector = formatList[x].selector; + + // Format is not selector based, then always return TRUE + if (!selector) + return TRUE; + + for (i = parents.length - 1; i >= 0; i--) { + if (dom.is(parents[i], selector)) + return TRUE; + } + } + } + + return FALSE; + }; + + // Expose to public + tinymce.extend(this, { + get : get, + register : register, + apply : apply, + remove : remove, + toggle : toggle, + match : match, + matchNode : matchNode, + canApply : canApply + }); + + // Private functions + + function matchName(node, format) { + // Check for inline match + if (isEq(node, format.inline)) + return TRUE; + + // Check for block match + if (isEq(node, format.block)) + return TRUE; + + // Check for selector match + if (format.selector) + return dom.is(node, format.selector); + }; + + function isEq(str1, str2) { + str1 = str1 || ''; + str2 = str2 || ''; + + str1 = str1.nodeName || str1; + str2 = str2.nodeName || str2; + + return str1.toLowerCase() == str2.toLowerCase(); + }; + + function getStyle(node, name) { + var styleVal = dom.getStyle(node, name); + + // Force the format to hex + if (name == 'color' || name == 'backgroundColor') + styleVal = dom.toHex(styleVal); + + // Opera will return bold as 700 + if (name == 'fontWeight' && styleVal == 700) + styleVal = 'bold'; + + return '' + styleVal; + }; + + function replaceVars(value, vars) { + if (typeof(value) != "string") + value = value(vars); + else if (vars) { + value = value.replace(/%(\w+)/g, function(str, name) { + return vars[name] || str; + }); + } + + return value; + }; + + function isWhiteSpaceNode(node) { + return node && node.nodeType === 3 && /^\s*$/.test(node.nodeValue); + }; + + function wrap(node, name, attrs) { + var wrapper = dom.create(name, attrs); + + node.parentNode.insertBefore(wrapper, node); + wrapper.appendChild(node); + + return wrapper; + }; + + function expandRng(rng, format, remove) { + var startContainer = rng.startContainer, + startOffset = rng.startOffset, + endContainer = rng.endContainer, + endOffset = rng.endOffset, sibling, lastIdx; + + // This function walks up the tree if there is no siblings before/after the node + function findParentContainer(container, child_name, sibling_name, root) { + var parent, child; + + root = root || dom.getRoot(); + + for (;;) { + // Check if we can move up are we at root level or body level + parent = container.parentNode; + + // Stop expanding on block elements or root depending on format + if (parent == root || (!format[0].block_expand && isBlock(parent))) + return container; + + for (sibling = parent[child_name]; sibling && sibling != container; sibling = sibling[sibling_name]) { + if (sibling.nodeType == 1 && !isBookmarkNode(sibling)) + return container; + + if (sibling.nodeType == 3 && !isWhiteSpaceNode(sibling)) + return container; + } + + container = container.parentNode; + } + + return container; + }; + + // If index based start position then resolve it + if (startContainer.nodeType == 1 && startContainer.hasChildNodes()) { + lastIdx = startContainer.childNodes.length - 1; + startContainer = startContainer.childNodes[startOffset > lastIdx ? lastIdx : startOffset]; + + if (startContainer.nodeType == 3) + startOffset = 0; + } + + // If index based end position then resolve it + if (endContainer.nodeType == 1 && endContainer.hasChildNodes()) { + lastIdx = endContainer.childNodes.length - 1; + endContainer = endContainer.childNodes[endOffset > lastIdx ? lastIdx : endOffset - 1]; + + if (endContainer.nodeType == 3) + endOffset = endContainer.nodeValue.length; + } + + // Exclude bookmark nodes if possible + if (isBookmarkNode(startContainer.parentNode)) + startContainer = startContainer.parentNode; + + if (isBookmarkNode(startContainer)) + startContainer = startContainer.nextSibling || startContainer; + + if (isBookmarkNode(endContainer.parentNode)) + endContainer = endContainer.parentNode; + + if (isBookmarkNode(endContainer)) + endContainer = endContainer.previousSibling || endContainer; + + // Move start/end point up the tree if the leaves are sharp and if we are in different containers + // Example * becomes !: !

*texttext*

! + // This will reduce the number of wrapper elements that needs to be created + // Move start point up the tree + if (format[0].inline || format[0].block_expand) { + startContainer = findParentContainer(startContainer, 'firstChild', 'nextSibling'); + endContainer = findParentContainer(endContainer, 'lastChild', 'previousSibling'); + } + + // Expand start/end container to matching selector + if (format[0].selector && format[0].expand !== FALSE) { + function findSelectorEndPoint(container, sibling_name) { + var parents, i, y; + + if (container.nodeType == 3 && container.nodeValue.length == 0 && container[sibling_name]) + container = container[sibling_name]; + + parents = getParents(container); + for (i = 0; i < parents.length; i++) { + for (y = 0; y < format.length; y++) { + if (dom.is(parents[i], format[y].selector)) + return parents[i]; + } + } + + return container; + }; + + // Find new startContainer/endContainer if there is better one + startContainer = findSelectorEndPoint(startContainer, 'previousSibling'); + endContainer = findSelectorEndPoint(endContainer, 'nextSibling'); + } + + // Expand start/end container to matching block element or text node + if (format[0].block || format[0].selector) { + function findBlockEndPoint(container, sibling_name, sibling_name2) { + var node; + + // Expand to block of similar type + if (!format[0].wrapper) + node = dom.getParent(container, format[0].block); + + // Expand to first wrappable block element or any block element + if (!node) + node = dom.getParent(container.nodeType == 3 ? container.parentNode : container, isBlock); + + // Exclude inner lists from wrapping + if (node && format[0].wrapper) + node = getParents(node, 'ul,ol').reverse()[0] || node; + + // Didn't find a block element look for first/last wrappable element + if (!node) { + node = container; + + while (node[sibling_name] && !isBlock(node[sibling_name])) { + node = node[sibling_name]; + + // Break on BR but include it will be removed later on + // we can't remove it now since we need to check if it can be wrapped + if (isEq(node, 'br')) + break; + } + } + + return node || container; + }; + + // Find new startContainer/endContainer if there is better one + startContainer = findBlockEndPoint(startContainer, 'previousSibling'); + endContainer = findBlockEndPoint(endContainer, 'nextSibling'); + + // Non block element then try to expand up the leaf + if (format[0].block) { + if (!isBlock(startContainer)) + startContainer = findParentContainer(startContainer, 'firstChild', 'nextSibling'); + + if (!isBlock(endContainer)) + endContainer = findParentContainer(endContainer, 'lastChild', 'previousSibling'); + } + } + + // Setup index for startContainer + if (startContainer.nodeType == 1) { + startOffset = nodeIndex(startContainer); + startContainer = startContainer.parentNode; + } + + // Setup index for endContainer + if (endContainer.nodeType == 1) { + endOffset = nodeIndex(endContainer) + 1; + endContainer = endContainer.parentNode; + } + + // Return new range like object + return { + startContainer : startContainer, + startOffset : startOffset, + endContainer : endContainer, + endOffset : endOffset + }; + } + + function removeFormat(format, vars, node, compare_node) { + var i, attrs, stylesModified; + + // Check if node matches format + if (!matchName(node, format)) + return FALSE; + + // Should we compare with format attribs and styles + if (format.remove != 'all') { + // Remove styles + each(format.styles, function(value, name) { + value = replaceVars(value, vars); + + // Indexed array + if (typeof(name) === 'number') { + name = value; + compare_node = 0; + } + + if (!compare_node || isEq(getStyle(compare_node, name), value)) + dom.setStyle(node, name, ''); + + stylesModified = 1; + }); + + // Remove style attribute if it's empty + if (stylesModified && dom.getAttrib(node, 'style') == '') { + node.removeAttribute('style'); + node.removeAttribute('_mce_style'); + } + + // Remove attributes + each(format.attributes, function(value, name) { + var valueOut; + + value = replaceVars(value, vars); + + // Indexed array + if (typeof(name) === 'number') { + name = value; + compare_node = 0; + } + + if (!compare_node || isEq(dom.getAttrib(compare_node, name), value)) { + // Keep internal classes + if (name == 'class') { + value = dom.getAttrib(node, name); + if (value) { + // Build new class value where everything is removed except the internal prefixed classes + valueOut = ''; + each(value.split(/\s+/), function(cls) { + if (/mce\w+/.test(cls)) + valueOut += (valueOut ? ' ' : '') + cls; + }); + + // We got some internal classes left + if (valueOut) { + dom.setAttrib(node, name, valueOut); + return; + } + } + } + + // IE6 has a bug where the attribute doesn't get removed correctly + if (name == "class") + node.removeAttribute('className'); + + // Remove mce prefixed attributes + if (MCE_ATTR_RE.test(name)) + node.removeAttribute('_mce_' + name); + + node.removeAttribute(name); + } + }); + + // Remove classes + each(format.classes, function(value) { + value = replaceVars(value, vars); + + if (!compare_node || dom.hasClass(compare_node, value)) + dom.removeClass(node, value); + }); + + // Check for non internal attributes + attrs = dom.getAttribs(node); + for (i = 0; i < attrs.length; i++) { + if (attrs[i].nodeName.indexOf('_') !== 0) + return FALSE; + } + } + + // Remove the inline child if it's empty for example or + if (format.remove != 'none') { + removeNode(node, format); + return TRUE; + } + }; + + function removeNode(node, format) { + var parentNode = node.parentNode, rootBlockElm; + + if (format.block) { + if (!forcedRootBlock) { + function find(node, next, inc) { + node = getNonWhiteSpaceSibling(node, next, inc); + + return !node || (node.nodeName == 'BR' || isBlock(node)); + }; + + // Append BR elements if needed before we remove the block + if (isBlock(node) && !isBlock(parentNode)) { + if (!find(node, FALSE) && !find(node.firstChild, TRUE, 1)) + node.insertBefore(dom.create('br'), node.firstChild); + + if (!find(node, TRUE) && !find(node.lastChild, FALSE, 1)) + node.appendChild(dom.create('br')); + } + } else { + // Wrap the block in a forcedRootBlock if we are at the root of document + if (parentNode == dom.getRoot()) { + if (!format.list_block || !isEq(node, format.list_block)) { + each(tinymce.grep(node.childNodes), function(node) { + if (isValid(forcedRootBlock, node.nodeName.toLowerCase())) { + if (!rootBlockElm) + rootBlockElm = wrap(node, forcedRootBlock); + else + rootBlockElm.appendChild(node); + } else + rootBlockElm = 0; + }); + } + } + } + } + + dom.remove(node, 1); + }; + + function getNonWhiteSpaceSibling(node, next, inc) { + if (node) { + next = next ? 'nextSibling' : 'previousSibling'; + + for (node = inc ? node : node[next]; node; node = node[next]) { + if (node.nodeType == 1 || !isWhiteSpaceNode(node)) + return node; + } + } + }; + + function isBookmarkNode(node) { + return node && node.nodeType == 1 && node.getAttribute('_mce_type') == 'bookmark'; + }; + + function mergeSiblings(prev, next) { + var marker, sibling, tmpSibling; + + function compareElements(node1, node2) { + // Not the same name + if (node1.nodeName != node2.nodeName) + return FALSE; + + function getAttribs(node) { + var attribs = {}; + + each(dom.getAttribs(node), function(attr) { + var name = attr.nodeName.toLowerCase(); + + // Don't compare internal attributes or style + if (name.indexOf('_') !== 0 && name !== 'style') + attribs[name] = dom.getAttrib(node, name); + }); + + return attribs; + }; + + function compareObjects(obj1, obj2) { + var value, name; + + for (name in obj1) { + // Obj1 has item obj2 doesn't have + if (obj1.hasOwnProperty(name)) { + value = obj2[name]; + + // Obj2 doesn't have obj1 item + if (value === undefined) + return FALSE; + + // Obj2 item has a different value + if (obj1[name] != value) + return FALSE; + + // Delete similar value + delete obj2[name]; + } + } + + // Check if obj 2 has something obj 1 doesn't have + for (name in obj2) { + // Obj2 has item obj1 doesn't have + if (obj2.hasOwnProperty(name)) + return FALSE; + } + + return TRUE; + }; + + // Attribs are not the same + if (!compareObjects(getAttribs(node1), getAttribs(node2))) + return FALSE; + + // Styles are not the same + if (!compareObjects(dom.parseStyle(dom.getAttrib(node1, 'style')), dom.parseStyle(dom.getAttrib(node2, 'style')))) + return FALSE; + + return TRUE; + }; + + // Check if next/prev exists and that they are elements + if (prev && next) { + function findElementSibling(node, sibling_name) { + for (sibling = node; sibling; sibling = sibling[sibling_name]) { + if (sibling.nodeType == 3 && !isWhiteSpaceNode(sibling)) + return node; + + if (sibling.nodeType == 1 && !isBookmarkNode(sibling)) + return sibling; + } + + return node; + }; + + // If previous sibling is empty then jump over it + prev = findElementSibling(prev, 'previousSibling'); + next = findElementSibling(next, 'nextSibling'); + + // Compare next and previous nodes + if (compareElements(prev, next)) { + // Append nodes between + for (sibling = prev.nextSibling; sibling && sibling != next;) { + tmpSibling = sibling; + sibling = sibling.nextSibling; + prev.appendChild(tmpSibling); + } + + // Remove next node + dom.remove(next); + + // Move children into prev node + each(tinymce.grep(next.childNodes), function(node) { + prev.appendChild(node); + }); + + return prev; + } + } + + return next; + }; + + function isTextBlock(name) { + return /^(h[1-6]|p|div|pre|address)$/.test(name); + }; + + function getContainer(rng, start) { + var container, offset, lastIdx; + + container = rng[start ? 'startContainer' : 'endContainer']; + offset = rng[start ? 'startOffset' : 'endOffset']; + + if (container.nodeType == 1) { + lastIdx = container.childNodes.length - 1; + + if (!start && offset) + offset--; + + container = container.childNodes[offset > lastIdx ? lastIdx : offset]; + } + + return container; + }; + + function performCaretAction(type, name, vars) { + var i, rng, selectedNode = selection.getNode().parentNode, + doc = ed.getDoc(), marker = 'mceinline', + events = ['onKeyDown', 'onKeyUp', 'onKeyPress'], + currentPendingFormats = pendingFormats[type], + otherPendingFormats = pendingFormats[type == 'apply' ? 'remove' : 'apply']; + + // Check if it already exists + for (i = currentPendingFormats.length - 1; i >= 0; i--) { + if (currentPendingFormats[i].name == name) + return; + } + + currentPendingFormats.push({name : name, vars : vars}); + + // Check if it's in the oter type + for (i = otherPendingFormats.length - 1; i >= 0; i--) { + if (otherPendingFormats[i].name == name) + otherPendingFormats.splice(i, 1); + } + + function unbind() { + if (caretHandler) { + each(events, function(event) { + ed[event].remove(caretHandler); + }); + + caretHandler = 0; + } + }; + + function perform(caret_node) { + // Apply pending formats + each(pendingFormats.apply.reverse(), function(item) { + apply(item.name, item.vars, caret_node); + }); + + // Remove pending formats + each(pendingFormats.remove.reverse(), function(item) { + remove(item.name, item.vars, caret_node); + }); + + dom.remove(caret_node, 1); + resetPending(); + }; + + function isMarker(node) { + return node.face == marker || node.style.fontFamily == marker; + }; + + unbind(); + + doc.execCommand('FontName', false, marker); + + // IE will convert the current word + each(dom.select('font,span', selectedNode), function(node) { + var bookmark; + + if (isMarker(node)) { + bookmark = selection.getBookmark(); + perform(node); + selection.moveToBookmark(bookmark); + ed.nodeChanged(); + selectedNode = 0; + } + }); + + if (selectedNode) { + caretHandler = function(ed, e) { + each(dom.select('font,span', selectedNode), function(node) { + var bookmark, textNode; + + // Look for marker + if (node.face == marker || node.style.fontFamily == marker) { + textNode = node.firstChild; + + perform(node); + + rng = dom.createRng(); + rng.setStart(textNode, textNode.nodeValue.length); + rng.setEnd(textNode, textNode.nodeValue.length); + selection.setRng(rng); + ed.nodeChanged(); + + unbind(); + } + }); + + // Always unbind and clear pending styles on keyup + if (e.type == 'keyup') { + unbind(); + resetPending(); + } + }; + + each(events, function(event) { + ed[event].addToTop(caretHandler); + }); + } + } + }; +})(tinymce); + +tinymce.onAddEditor.add(function(tinymce, ed) { + var filters, fontSizes, dom, settings = ed.settings; + + if (settings.inline_styles) { + fontSizes = tinymce.explode(settings.font_size_style_values); + + function replaceWithSpan(node, styles) { + dom.replace(dom.create('span', { + style : styles + }), node, 1); + }; + + filters = { + font : function(dom, node) { + replaceWithSpan(node, { + backgroundColor : node.style.backgroundColor, + color : node.color, + fontFamily : node.face, + fontSize : fontSizes[parseInt(node.size) - 1] + }); + }, + + u : function(dom, node) { + replaceWithSpan(node, { + textDecoration : 'underline' + }); + }, + + strike : function(dom, node) { + replaceWithSpan(node, { + textDecoration : 'line-through' + }); + } + }; + + function convert(editor, params) { + dom = editor.dom; + + if (settings.convert_fonts_to_spans) { + tinymce.each(dom.select('font,u,strike', params.node), function(node) { + filters[node.nodeName.toLowerCase()](ed.dom, node); + }); + } + }; + + ed.onPreProcess.add(convert); + + ed.onInit.add(function() { + ed.selection.onSetContent.add(convert); + }); + } +}); + diff --git a/assets/tinymce/jscripts/tiny_mce/jquery.tinymce.js b/assets/tinymce/jscripts/tiny_mce/jquery.tinymce.js new file mode 100644 index 0000000..6fc34f0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/jquery.tinymce.js @@ -0,0 +1 @@ +(function(b){var e,d,a=[],c=window;b.fn.tinymce=function(j){var p=this,g,k,h,m,i,l="",n="";if(!p.length){return}if(!j){return tinyMCE.get(p[0].id)}function o(){var r=[],q=0;if(f){f();f=null}p.each(function(t,u){var s,w=u.id,v=j.oninit;if(!w){u.id=w=tinymce.DOM.uniqueId()}s=new tinymce.Editor(w,j);r.push(s);if(v){s.onInit.add(function(){var x,y=v;if(++q==r.length){if(tinymce.is(y,"string")){x=(y.indexOf(".")===-1)?null:tinymce.resolve(y.replace(/\.\w+$/,""));y=tinymce.resolve(y)}y.apply(x||tinymce,r)}})}});b.each(r,function(t,s){s.render()})}if(!c.tinymce&&!d&&(g=j.script_url)){d=1;h=g.substring(0,g.lastIndexOf("/"));if(/_(src|dev)\.js/g.test(g)){n="_src"}m=g.lastIndexOf("?");if(m!=-1){l=g.substring(m+1)}c.tinyMCEPreInit={base:h,suffix:n,query:l};if(g.indexOf("gzip")!=-1){i=j.language||"en";g=g+(/\?/.test(g)?"&":"?")+"js=true&core=true&suffix="+escape(n)+"&themes="+escape(j.theme)+"&plugins="+escape(j.plugins)+"&languages="+i;if(!c.tinyMCE_GZ){tinyMCE_GZ={start:function(){tinymce.suffix=n;function q(r){tinymce.ScriptLoader.markDone(tinyMCE.baseURI.toAbsolute(r))}q("langs/"+i+".js");q("themes/"+j.theme+"/editor_template"+n+".js");q("themes/"+j.theme+"/langs/"+i+".js");b.each(j.plugins.split(","),function(s,r){if(r){q("plugins/"+r+"/editor_plugin"+n+".js");q("plugins/"+r+"/langs/"+i+".js")}})},end:function(){}}}}b.ajax({type:"GET",url:g,dataType:"script",cache:true,success:function(){tinymce.dom.Event.domLoaded=1;d=2;o();b.each(a,function(q,r){r()})}})}else{if(d===1){a.push(o)}else{o()}}};b.extend(b.expr[":"],{tinymce:function(g){return g.id&&!!tinyMCE.get(g.id)}});function f(){function i(l){if(l==="remove"){this.each(function(n,o){var m=h(o);if(m){m.remove()}})}this.find("span.mceEditor,div.mceEditor").each(function(n,o){var m=tinyMCE.get(o.id.replace(/_parent$/,""));if(m){m.remove()}})}function k(n){var m=this,l;if(n!==e){i.call(m);m.each(function(p,q){var o;if(o=tinyMCE.get(q.id)){o.setContent(n)}})}else{if(m.length>0){if(l=tinyMCE.get(m[0].id)){return l.getContent()}}}}function h(m){var l=null;(m)&&(m.id)&&(c.tinymce)&&(l=tinyMCE.get(m.id));return l}function g(l){return !!((l)&&(l.length)&&(c.tinymce)&&(l.is(":tinymce")))}var j={};b.each(["text","html","val"],function(n,l){var o=j[l]=b.fn[l],m=(l==="text");b.fn[l]=function(r){var p=this;if(!g(p)){return o.call(p,r)}if(r!==e){k.call(p.filter(":tinymce"),r);o.call(p.not(":tinymce"),r);return p}else{var q="";(m?p:p.eq(0)).each(function(t,u){var s=h(u);q+=s?(m?s.getContent().replace(/<(?:"[^"]*"|'[^']*'|[^'">])*>/g,""):s.getContent()):o.call(b(u),r)});return q}}});b.each(["append","prepend"],function(n,m){var o=j[m]=b.fn[m],l=(m==="prepend");b.fn[m]=function(q){var p=this;if(!g(p)){return o.call(p,q)}if(q!==e){p.filter(":tinymce").each(function(s,t){var r=h(t);r&&r.setContent(l?q+r.getContent():r.getContent()+q)});o.call(p.not(":tinymce"),q);return p}}});b.each(["remove","replaceWith","replaceAll","empty"],function(m,l){var n=j[l]=b.fn[l];b.fn[l]=function(){i.call(this,l);return n.apply(this,arguments)}});j.attr=b.fn.attr;b.fn.attr=function(n,q,o){var m=this;if((!n)||(n!=="value")||(!g(m))){return j.attr.call(m,n,q,o)}if(q!==e){k.call(m.filter(":tinymce"),q);j.attr.call(m.not(":tinymce"),n,q,o);return m}else{var p=m[0],l=h(p);return l?l.getContent():j.attr.call(b(p),n,q,o)}}}})(jQuery); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/langs/.svn/all-wcprops new file mode 100644 index 0000000..e8b7990 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 72 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/langs +END +fr.js +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/langs/fr.js +END +de.js +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/langs/de.js +END +en.js +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/langs/en.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/langs/.svn/entries new file mode 100644 index 0000000..64284f4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +fr.js +file + + + + +2010-06-04T12:51:46.955634Z +9796ed869ef7aab9e5afca0df66e092b +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +5052 + +de.js +file + + + + +2010-06-04T12:51:46.958968Z +641ab3f00bfc92d85ca9029adecd4bad +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4753 + +en.js +file + + + + +2010-06-04T12:51:46.958968Z +25c19feb8817c00e16f391900ce35741 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4083 + diff --git a/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/de.js.svn-base b/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/de.js.svn-base new file mode 100644 index 0000000..76faca9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/de.js.svn-base @@ -0,0 +1,155 @@ +tinyMCE.addI18n({de:{ +common:{ +edit_confirm:"Wollen Sie diesen Textbereich mit WYSIWYG bearbeiten?", +apply:"\u00DCbernehmen", +insert:"Einf\u00FCgen", +update:"Aktualisieren", +cancel:"Abbrechen", +close:"Schlie\u00DFen", +browse:"Durchsuchen", +class_name:"CSS-Klasse", +not_set:"- unbestimmt -", +clipboard_msg:"Kopieren, Ausschneiden und Einf\u00FCgen sind im Mozilla Firefox nicht m\u00F6glich.\nM\u00F6chten Sie mehr \u00FCber dieses Problem erfahren?", +clipboard_no_support:"Wird derzeit in Ihrem Browser nicht unterst\u00FCtzt. Bitte benutzen Sie stattdessen die Tastenk\u00FCrzel.", +popup_blocked:"Leider hat Ihr Popup-Blocker ein Fenster unterbunden, das f\u00FCr den Betrieb dieses Programms n\u00F6tig ist. Bitte deaktivieren Sie den Popup-Blocker f\u00FCr diese Seite.", +invalid_data:"Fehler: Sie haben ung\u00FCltige Werte eingegeben (rot markiert).", +more_colors:"Weitere Farben" +}, +contextmenu:{ +align:"Ausrichtung", +left:"Linksb\u00FCndig", +center:"Zentriert", +right:"Rechtsb\u00FCndig", +full:"Blocksatz" +}, +insertdatetime:{ +date_fmt:"%d.%m.%Y", +time_fmt:"%H:%M:%S", +insertdate_desc:"Datum einf\u00FCgen", +inserttime_desc:"Zeit einf\u00FCgen", +months_long:"Januar,Februar,M\u00E4rz,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember", +months_short:"Jan,Feb,M\u00E4rz,Apr,Mai,Juni,Juli,Aug,Sept,Okt,Nov,Dez", +day_long:"Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag", +day_short:"So,Mo,Di,Mi,Do,Fr,Sa,So" +}, +print:{ +print_desc:"Drucken" +}, +preview:{ +preview_desc:"Vorschau" +}, +directionality:{ +ltr_desc:"Schrift von links nach rechts", +rtl_desc:"Schrift von rechts nach links" +}, +layer:{ +insertlayer_desc:"Neue Ebene einf\u00FCgen", +forward_desc:"Vor verschieben", +backward_desc:"Zur\u00FCck verschieben", +absolute_desc:"Absolute Positionierung", +content:"Neue Ebene..." +}, +save:{ +save_desc:"Speichern", +cancel_desc:"Alle \u00C4nderungen verwerfen" +}, +nonbreaking:{ +nonbreaking_desc:"Gesch\u00FCtztes Leerzeichen einf\u00FCgen" +}, +iespell:{ +iespell_desc:"Rechtschreibpr\u00FCfung", +download:"ieSpell konnte nicht gefunden werden. Wollen Sie es installieren?" +}, +advhr:{ +advhr_desc:"Trennlinie" +}, +emotions:{ +emotions_desc:"Smilies" +}, +searchreplace:{ +search_desc:"Suchen", +replace_desc:"Suchen/Ersetzen" +}, +advimage:{ +image_desc:"Bild einf\u00FCgen/ersetzen" +}, +advlink:{ +link_desc:"Link einf\u00FCgen/bearbeiten" +}, +xhtmlxtras:{ +cite_desc:"Quellenangabe", +abbr_desc:"Abk\u00FCrzung", +acronym_desc:"Akronym", +del_desc:"Entfernter Text", +ins_desc:"Eingef\u00FCgter Text", +attribs_desc:"Attribute einf\u00FCgen/bearbeiten" +}, +style:{ +desc:"CSS-Styles bearbeiten" +}, +paste:{ +paste_text_desc:"Als normalen Text einf\u00FCgen", +paste_word_desc:"Mit Formatierungen (aus Word) einf\u00FCgen", +selectall_desc:"Alles ausw\u00E4hlen" +}, +paste_dlg:{ +text_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen.", +text_linebreaks:"Zeilenumbr\u00FCche beibehalten", +word_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen." +}, +table:{ +desc:"Tabelle erstellen/bearbeiten", +row_before_desc:"Zeile oberhalb einf\u00FCgen", +row_after_desc:"Zeile unterhalb einf\u00FCgen", +delete_row_desc:"Zeile l\u00F6schen", +col_before_desc:"Spalte links einf\u00FCgen", +col_after_desc:"Spalte rechts einf\u00FCgen", +delete_col_desc:"Spalte l\u00F6schen", +split_cells_desc:"Verbundene Zellen trennen", +merge_cells_desc:"Zellen verbinden", +row_desc:"Eigenschaften der Zeile", +cell_desc:"Eigenschaften der Zelle", +props_desc:"Eigenschaften der Tabelle", +paste_row_before_desc:"Zeile oberhalb aus der Zwischenablage einf\u00FCgen", +paste_row_after_desc:"Zeile unterhalb aus der Zwischenablage einf\u00FCgen", +cut_row_desc:"Zeile ausschneiden", +copy_row_desc:"Zeile kopieren", +del:"Tabelle l\u00F6schen", +row:"Zeile", +col:"Spalte", +cell:"Zelle", +cellprops_delta_width:"150" +}, +autosave:{ +unload_msg:"Ihre \u00C4nderungen werden verloren gehen, wenn Sie die Seite verlassen." +}, +fullscreen:{ +desc:"Vollbildschirm" +}, +media:{ +desc:"Multimedia einbetten/bearbeiten", +edit:"Multimediaeinbettung bearbeiten" +}, +fullpage:{ +desc:"Dokument-Eigenschaften" +}, +template:{ +desc:"Vorgefertigter Vorlageninhalt einf\u00FCgen" +}, +visualchars:{ +desc:"Sichtbarkeit der Steuerzeichen an/aus" +}, +spellchecker:{ +desc:"Rechtschreibpr\u00FCfung an/aus", +menu:"Einstellungen der Rechtschreibpr\u00FCfung", +ignore_word:"Wort ignorieren", +ignore_words:"Alle ignorieren", +langs:"Sprachen", +wait:"Bitte warten...", +sug:"Vorschl\u00E4ge", +no_sug:"Keine Vorschl\u00E4ge", +no_mpell:"Keine Rechtschreibfehler gefunden." +}, +pagebreak:{ +desc:"Seitenumbruch einf\u00FCgen" +}}}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/en.js.svn-base b/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/en.js.svn-base new file mode 100644 index 0000000..8519b4d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/en.js.svn-base @@ -0,0 +1,154 @@ +tinyMCE.addI18n({en:{ +common:{ +edit_confirm:"Do you want to use the WYSIWYG mode for this textarea?", +apply:"Apply", +insert:"Insert", +update:"Update", +cancel:"Cancel", +close:"Close", +browse:"Browse", +class_name:"Class", +not_set:"-- Not set --", +clipboard_msg:"Copy/Cut/Paste is not available in Mozilla and Firefox.\nDo you want more information about this issue?", +clipboard_no_support:"Currently not supported by your browser, use keyboard shortcuts instead.", +popup_blocked:"Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool.", +invalid_data:"Error: Invalid values entered, these are marked in red.", +more_colors:"More colors" +}, +contextmenu:{ +align:"Alignment", +left:"Left", +center:"Center", +right:"Right", +full:"Full" +}, +insertdatetime:{ +date_fmt:"%Y-%m-%d", +time_fmt:"%H:%M:%S", +insertdate_desc:"Insert date", +inserttime_desc:"Insert time", +months_long:"January,February,March,April,May,June,July,August,September,October,November,December", +months_short:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec", +day_long:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday", +day_short:"Sun,Mon,Tue,Wed,Thu,Fri,Sat,Sun" +}, +print:{ +print_desc:"Print" +}, +preview:{ +preview_desc:"Preview" +}, +directionality:{ +ltr_desc:"Direction left to right", +rtl_desc:"Direction right to left" +}, +layer:{ +insertlayer_desc:"Insert new layer", +forward_desc:"Move forward", +backward_desc:"Move backward", +absolute_desc:"Toggle absolute positioning", +content:"New layer..." +}, +save:{ +save_desc:"Save", +cancel_desc:"Cancel all changes" +}, +nonbreaking:{ +nonbreaking_desc:"Insert non-breaking space character" +}, +iespell:{ +iespell_desc:"Run spell checking", +download:"ieSpell not detected. Do you want to install it now?" +}, +advhr:{ +advhr_desc:"Horizontal rule" +}, +emotions:{ +emotions_desc:"Emotions" +}, +searchreplace:{ +search_desc:"Find", +replace_desc:"Find/Replace" +}, +advimage:{ +image_desc:"Insert/edit image" +}, +advlink:{ +link_desc:"Insert/edit link" +}, +xhtmlxtras:{ +cite_desc:"Citation", +abbr_desc:"Abbreviation", +acronym_desc:"Acronym", +del_desc:"Deletion", +ins_desc:"Insertion", +attribs_desc:"Insert/Edit Attributes" +}, +style:{ +desc:"Edit CSS Style" +}, +paste:{ +paste_text_desc:"Paste as Plain Text", +paste_word_desc:"Paste from Word", +selectall_desc:"Select All" +}, +paste_dlg:{ +text_title:"Use CTRL+V on your keyboard to paste the text into the window.", +text_linebreaks:"Keep linebreaks", +word_title:"Use CTRL+V on your keyboard to paste the text into the window." +}, +table:{ +desc:"Inserts a new table", +row_before_desc:"Insert row before", +row_after_desc:"Insert row after", +delete_row_desc:"Delete row", +col_before_desc:"Insert column before", +col_after_desc:"Insert column after", +delete_col_desc:"Remove column", +split_cells_desc:"Split merged table cells", +merge_cells_desc:"Merge table cells", +row_desc:"Table row properties", +cell_desc:"Table cell properties", +props_desc:"Table properties", +paste_row_before_desc:"Paste table row before", +paste_row_after_desc:"Paste table row after", +cut_row_desc:"Cut table row", +copy_row_desc:"Copy table row", +del:"Delete table", +row:"Row", +col:"Column", +cell:"Cell" +}, +autosave:{ +unload_msg:"The changes you made will be lost if you navigate away from this page." +}, +fullscreen:{ +desc:"Toggle fullscreen mode" +}, +media:{ +desc:"Insert / edit embedded media", +edit:"Edit embedded media" +}, +fullpage:{ +desc:"Document properties" +}, +template:{ +desc:"Insert predefined template content" +}, +visualchars:{ +desc:"Visual control characters on/off." +}, +spellchecker:{ +desc:"Toggle spellchecker", +menu:"Spellchecker settings", +ignore_word:"Ignore word", +ignore_words:"Ignore all", +langs:"Languages", +wait:"Please wait...", +sug:"Suggestions", +no_sug:"No suggestions", +no_mpell:"No misspellings found." +}, +pagebreak:{ +desc:"Insert page break." +}}}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/fr.js.svn-base b/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/fr.js.svn-base new file mode 100644 index 0000000..b26fa0b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/.svn/text-base/fr.js.svn-base @@ -0,0 +1,154 @@ +tinyMCE.addI18n({fr:{ +common:{ +edit_confirm:"souhaitez-vous utiliser le mode WYSIWYG pour cette zone de texte ?", +apply:"Appliquer", +insert:"Ins\u00E9rer", +update:"Mettre \u00E0 jour", +cancel:"Annuler", +close:"Fermer", +browse:"parcourir", +class_name:"Class", +not_set:"-- non d\u00E9fini --", +clipboard_msg:"Les fonctions Copier/Couper/Coller ne sont pas valables sur Mozilla et Firefox.\nSouhaitez-vous avoir plus d'informations sur ce sujet ?", +clipboard_no_support:"Actuellement pas pris en charge par votre navigateur. Veuillez tiliser les raccourcis clavier \u00E0 la place.", +popup_blocked:"D\u00E9sol\u00E9, nous avons d\u00E9tect\u00E9 que votre bloqueur de popup a bloqu\u00E9 une fen\u00EAtre dont l'application a besoin. Vous devez d\u00E9sactiver votre bloqueur de popup pour pouvoir utiliser cet outil.", +invalid_data:"Erreur : saisie de valeurs incorrectes. Elles sont mises en \u00E9vidence en rouge.", +more_colors:"Plus de couleurs" +}, +contextmenu:{ +align:"Alignement", +left:"Gauche", +center:"Centr\u00E9", +right:"Droite", +full:"Justifi\u00E9" +}, +insertdatetime:{ +date_fmt:"%d-%m-%Y", +time_fmt:"%H:%M:%S", +insertdate_desc:"Ins\u00E9rer la date", +inserttime_desc:"Ins\u00E9rer l'heure", +months_long:"Janvier,F\u00E9vrier,Mars,Avril,Mai,Juin,Juillet,Ao\u00FBt,Septembre,Octobre,Novembre,D\u00E9cembre", +months_short:"Jan,F\u00E9v,Mar,Avr,Mai,Juin,Juil,Ao\u00FBt,Sep,Oct,Nov,D\u00E9c", +day_long:"Dimanche,Lundi,Mardi,Mercredi,Jeudi,Vendredi,Samedi,Dimanche", +day_short:"Dim,Lun,Mar,Mer,Jeu,Ven,Sam,Dim" +}, +print:{ +print_desc:"Imprimer" +}, +preview:{ +preview_desc:"Pr\u00E9visualiser" +}, +directionality:{ +ltr_desc:"\u00C9criture de gauche \u00E0 droite", +rtl_desc:"\u00C9criture de droite \u00E0 gauche" +}, +layer:{ +insertlayer_desc:"Ins\u00E9rer une nouvelle couche", +forward_desc:"D\u00E9placer vers l'avant", +backward_desc:"D\u00E9placer vers l'arri\u00E8re", +absolute_desc:"Activer le positionnement absolu", +content:"Nouvelle couche\u2026" +}, +save:{ +save_desc:"Enregistrer", +cancel_desc:"Annuler toutes les modifications" +}, +nonbreaking:{ +nonbreaking_desc:"Ins\u00E9rer une espace ins\u00E9cable" +}, +iespell:{ +iespell_desc:"Lancer le v\u00E9rificateur d'orthographe", +download:"ieSpell n'est pas install\u00E9. Souhaitez-vous l'installer maintenant ?" +}, +advhr:{ +advhr_desc:"Ins\u00E9rer un trait horizontal" +}, +emotions:{ +emotions_desc:"\u00C9motic\u00F4nes" +}, +searchreplace:{ +search_desc:"Rechercher", +replace_desc:"Rechercher / remplacer" +}, +advimage:{ +image_desc:"Ins\u00E9rer / \u00E9diter une image" +}, +advlink:{ +link_desc:"Ins\u00E9rer / \u00E9diter un lien" +}, +xhtmlxtras:{ +cite_desc:"Citation", +abbr_desc:"Abr\u00E9viation", +acronym_desc:"Acronyme", +del_desc:"Barr\u00E9", +ins_desc:"Ins\u00E9r\u00E9", +attribs_desc:"Ins\u00E9rer / \u00E9diter les attributs" +}, +style:{ +desc:"\u00C9diter la feuille de style (CSS)" +}, +paste:{ +paste_text_desc:"Coller comme texte brut", +paste_word_desc:"Coller un texte cr\u00E9\u00E9 sous Word", +selectall_desc:"Tout s\u00E9lectionner" +}, +paste_dlg:{ +text_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre.", +text_linebreaks:"Conserver les retours \u00E0 la ligne", +word_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre." +}, +table:{ +desc:"Ins\u00E9rer un nouveau tableau", +row_before_desc:"Ins\u00E9rer une ligne avant", +row_after_desc:"Ins\u00E9rer une ligne apr\u00E8s", +delete_row_desc:"Effacer la ligne", +col_before_desc:"Ins\u00E9rer une colonne avant", +col_after_desc:"Ins\u00E9rer une colonne apr\u00E8s", +delete_col_desc:"Effacer la colonne", +split_cells_desc:"Scinder les cellules fusionn\u00E9es", +merge_cells_desc:"Fusionner les cellules", +row_desc:"Propri\u00E9t\u00E9s de la ligne", +cell_desc:"Propri\u00E9t\u00E9s de la cellule", +props_desc:"Propri\u00E9t\u00E9s du tableau", +paste_row_before_desc:"Coller la ligne avant", +paste_row_after_desc:"Coller la ligne apr\u00E8s", +cut_row_desc:"Couper la ligne", +copy_row_desc:"Copier la ligne", +del:"Effacer le tableau", +row:"Ligne", +col:"Colonne", +cell:"Cellule" +}, +autosave:{ +unload_msg:"Les modifications apport\u00E9es seront perdus si vous quittez cette page." +}, +fullscreen:{ +desc:"Passer en mode plein \u00E9cran" +}, +media:{ +desc:"Ins\u00E9rer / \u00E9diter un m\u00E9dia incorpor\u00E9", +edit:"\u00C9diter un m\u00E9dia incorpor\u00E9" +}, +fullpage:{ +desc:"Propri\u00E9t\u00E9s du document" +}, +template:{ +desc:"Ins\u00E9rer un mod\u00E8le pr\u00E9d\u00E9fini." +}, +visualchars:{ +desc:"Activer les caract\u00E8res de mise en page." +}, +spellchecker:{ +desc:"Activer le v\u00E9rificateur d'orthographe", +menu:"Param\u00E8tres du v\u00E9rificateur d'orthographe", +ignore_word:"Ignorer le mot", +ignore_words:"Tout ignorer", +langs:"Langues", +wait:"Veuillez patienter\u2026", +sug:"Suggestions", +no_sug:"Aucune suggestion", +no_mpell:"Aucune erreur trouv\u00E9e." +}, +pagebreak:{ +desc:"Ins\u00E9rer un saut de page." +}}}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/langs/de.js b/assets/tinymce/jscripts/tiny_mce/langs/de.js new file mode 100644 index 0000000..76faca9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/de.js @@ -0,0 +1,155 @@ +tinyMCE.addI18n({de:{ +common:{ +edit_confirm:"Wollen Sie diesen Textbereich mit WYSIWYG bearbeiten?", +apply:"\u00DCbernehmen", +insert:"Einf\u00FCgen", +update:"Aktualisieren", +cancel:"Abbrechen", +close:"Schlie\u00DFen", +browse:"Durchsuchen", +class_name:"CSS-Klasse", +not_set:"- unbestimmt -", +clipboard_msg:"Kopieren, Ausschneiden und Einf\u00FCgen sind im Mozilla Firefox nicht m\u00F6glich.\nM\u00F6chten Sie mehr \u00FCber dieses Problem erfahren?", +clipboard_no_support:"Wird derzeit in Ihrem Browser nicht unterst\u00FCtzt. Bitte benutzen Sie stattdessen die Tastenk\u00FCrzel.", +popup_blocked:"Leider hat Ihr Popup-Blocker ein Fenster unterbunden, das f\u00FCr den Betrieb dieses Programms n\u00F6tig ist. Bitte deaktivieren Sie den Popup-Blocker f\u00FCr diese Seite.", +invalid_data:"Fehler: Sie haben ung\u00FCltige Werte eingegeben (rot markiert).", +more_colors:"Weitere Farben" +}, +contextmenu:{ +align:"Ausrichtung", +left:"Linksb\u00FCndig", +center:"Zentriert", +right:"Rechtsb\u00FCndig", +full:"Blocksatz" +}, +insertdatetime:{ +date_fmt:"%d.%m.%Y", +time_fmt:"%H:%M:%S", +insertdate_desc:"Datum einf\u00FCgen", +inserttime_desc:"Zeit einf\u00FCgen", +months_long:"Januar,Februar,M\u00E4rz,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember", +months_short:"Jan,Feb,M\u00E4rz,Apr,Mai,Juni,Juli,Aug,Sept,Okt,Nov,Dez", +day_long:"Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag", +day_short:"So,Mo,Di,Mi,Do,Fr,Sa,So" +}, +print:{ +print_desc:"Drucken" +}, +preview:{ +preview_desc:"Vorschau" +}, +directionality:{ +ltr_desc:"Schrift von links nach rechts", +rtl_desc:"Schrift von rechts nach links" +}, +layer:{ +insertlayer_desc:"Neue Ebene einf\u00FCgen", +forward_desc:"Vor verschieben", +backward_desc:"Zur\u00FCck verschieben", +absolute_desc:"Absolute Positionierung", +content:"Neue Ebene..." +}, +save:{ +save_desc:"Speichern", +cancel_desc:"Alle \u00C4nderungen verwerfen" +}, +nonbreaking:{ +nonbreaking_desc:"Gesch\u00FCtztes Leerzeichen einf\u00FCgen" +}, +iespell:{ +iespell_desc:"Rechtschreibpr\u00FCfung", +download:"ieSpell konnte nicht gefunden werden. Wollen Sie es installieren?" +}, +advhr:{ +advhr_desc:"Trennlinie" +}, +emotions:{ +emotions_desc:"Smilies" +}, +searchreplace:{ +search_desc:"Suchen", +replace_desc:"Suchen/Ersetzen" +}, +advimage:{ +image_desc:"Bild einf\u00FCgen/ersetzen" +}, +advlink:{ +link_desc:"Link einf\u00FCgen/bearbeiten" +}, +xhtmlxtras:{ +cite_desc:"Quellenangabe", +abbr_desc:"Abk\u00FCrzung", +acronym_desc:"Akronym", +del_desc:"Entfernter Text", +ins_desc:"Eingef\u00FCgter Text", +attribs_desc:"Attribute einf\u00FCgen/bearbeiten" +}, +style:{ +desc:"CSS-Styles bearbeiten" +}, +paste:{ +paste_text_desc:"Als normalen Text einf\u00FCgen", +paste_word_desc:"Mit Formatierungen (aus Word) einf\u00FCgen", +selectall_desc:"Alles ausw\u00E4hlen" +}, +paste_dlg:{ +text_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen.", +text_linebreaks:"Zeilenumbr\u00FCche beibehalten", +word_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen." +}, +table:{ +desc:"Tabelle erstellen/bearbeiten", +row_before_desc:"Zeile oberhalb einf\u00FCgen", +row_after_desc:"Zeile unterhalb einf\u00FCgen", +delete_row_desc:"Zeile l\u00F6schen", +col_before_desc:"Spalte links einf\u00FCgen", +col_after_desc:"Spalte rechts einf\u00FCgen", +delete_col_desc:"Spalte l\u00F6schen", +split_cells_desc:"Verbundene Zellen trennen", +merge_cells_desc:"Zellen verbinden", +row_desc:"Eigenschaften der Zeile", +cell_desc:"Eigenschaften der Zelle", +props_desc:"Eigenschaften der Tabelle", +paste_row_before_desc:"Zeile oberhalb aus der Zwischenablage einf\u00FCgen", +paste_row_after_desc:"Zeile unterhalb aus der Zwischenablage einf\u00FCgen", +cut_row_desc:"Zeile ausschneiden", +copy_row_desc:"Zeile kopieren", +del:"Tabelle l\u00F6schen", +row:"Zeile", +col:"Spalte", +cell:"Zelle", +cellprops_delta_width:"150" +}, +autosave:{ +unload_msg:"Ihre \u00C4nderungen werden verloren gehen, wenn Sie die Seite verlassen." +}, +fullscreen:{ +desc:"Vollbildschirm" +}, +media:{ +desc:"Multimedia einbetten/bearbeiten", +edit:"Multimediaeinbettung bearbeiten" +}, +fullpage:{ +desc:"Dokument-Eigenschaften" +}, +template:{ +desc:"Vorgefertigter Vorlageninhalt einf\u00FCgen" +}, +visualchars:{ +desc:"Sichtbarkeit der Steuerzeichen an/aus" +}, +spellchecker:{ +desc:"Rechtschreibpr\u00FCfung an/aus", +menu:"Einstellungen der Rechtschreibpr\u00FCfung", +ignore_word:"Wort ignorieren", +ignore_words:"Alle ignorieren", +langs:"Sprachen", +wait:"Bitte warten...", +sug:"Vorschl\u00E4ge", +no_sug:"Keine Vorschl\u00E4ge", +no_mpell:"Keine Rechtschreibfehler gefunden." +}, +pagebreak:{ +desc:"Seitenumbruch einf\u00FCgen" +}}}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/langs/en.js b/assets/tinymce/jscripts/tiny_mce/langs/en.js new file mode 100644 index 0000000..8519b4d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/en.js @@ -0,0 +1,154 @@ +tinyMCE.addI18n({en:{ +common:{ +edit_confirm:"Do you want to use the WYSIWYG mode for this textarea?", +apply:"Apply", +insert:"Insert", +update:"Update", +cancel:"Cancel", +close:"Close", +browse:"Browse", +class_name:"Class", +not_set:"-- Not set --", +clipboard_msg:"Copy/Cut/Paste is not available in Mozilla and Firefox.\nDo you want more information about this issue?", +clipboard_no_support:"Currently not supported by your browser, use keyboard shortcuts instead.", +popup_blocked:"Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool.", +invalid_data:"Error: Invalid values entered, these are marked in red.", +more_colors:"More colors" +}, +contextmenu:{ +align:"Alignment", +left:"Left", +center:"Center", +right:"Right", +full:"Full" +}, +insertdatetime:{ +date_fmt:"%Y-%m-%d", +time_fmt:"%H:%M:%S", +insertdate_desc:"Insert date", +inserttime_desc:"Insert time", +months_long:"January,February,March,April,May,June,July,August,September,October,November,December", +months_short:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec", +day_long:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday", +day_short:"Sun,Mon,Tue,Wed,Thu,Fri,Sat,Sun" +}, +print:{ +print_desc:"Print" +}, +preview:{ +preview_desc:"Preview" +}, +directionality:{ +ltr_desc:"Direction left to right", +rtl_desc:"Direction right to left" +}, +layer:{ +insertlayer_desc:"Insert new layer", +forward_desc:"Move forward", +backward_desc:"Move backward", +absolute_desc:"Toggle absolute positioning", +content:"New layer..." +}, +save:{ +save_desc:"Save", +cancel_desc:"Cancel all changes" +}, +nonbreaking:{ +nonbreaking_desc:"Insert non-breaking space character" +}, +iespell:{ +iespell_desc:"Run spell checking", +download:"ieSpell not detected. Do you want to install it now?" +}, +advhr:{ +advhr_desc:"Horizontal rule" +}, +emotions:{ +emotions_desc:"Emotions" +}, +searchreplace:{ +search_desc:"Find", +replace_desc:"Find/Replace" +}, +advimage:{ +image_desc:"Insert/edit image" +}, +advlink:{ +link_desc:"Insert/edit link" +}, +xhtmlxtras:{ +cite_desc:"Citation", +abbr_desc:"Abbreviation", +acronym_desc:"Acronym", +del_desc:"Deletion", +ins_desc:"Insertion", +attribs_desc:"Insert/Edit Attributes" +}, +style:{ +desc:"Edit CSS Style" +}, +paste:{ +paste_text_desc:"Paste as Plain Text", +paste_word_desc:"Paste from Word", +selectall_desc:"Select All" +}, +paste_dlg:{ +text_title:"Use CTRL+V on your keyboard to paste the text into the window.", +text_linebreaks:"Keep linebreaks", +word_title:"Use CTRL+V on your keyboard to paste the text into the window." +}, +table:{ +desc:"Inserts a new table", +row_before_desc:"Insert row before", +row_after_desc:"Insert row after", +delete_row_desc:"Delete row", +col_before_desc:"Insert column before", +col_after_desc:"Insert column after", +delete_col_desc:"Remove column", +split_cells_desc:"Split merged table cells", +merge_cells_desc:"Merge table cells", +row_desc:"Table row properties", +cell_desc:"Table cell properties", +props_desc:"Table properties", +paste_row_before_desc:"Paste table row before", +paste_row_after_desc:"Paste table row after", +cut_row_desc:"Cut table row", +copy_row_desc:"Copy table row", +del:"Delete table", +row:"Row", +col:"Column", +cell:"Cell" +}, +autosave:{ +unload_msg:"The changes you made will be lost if you navigate away from this page." +}, +fullscreen:{ +desc:"Toggle fullscreen mode" +}, +media:{ +desc:"Insert / edit embedded media", +edit:"Edit embedded media" +}, +fullpage:{ +desc:"Document properties" +}, +template:{ +desc:"Insert predefined template content" +}, +visualchars:{ +desc:"Visual control characters on/off." +}, +spellchecker:{ +desc:"Toggle spellchecker", +menu:"Spellchecker settings", +ignore_word:"Ignore word", +ignore_words:"Ignore all", +langs:"Languages", +wait:"Please wait...", +sug:"Suggestions", +no_sug:"No suggestions", +no_mpell:"No misspellings found." +}, +pagebreak:{ +desc:"Insert page break." +}}}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/langs/fr.js b/assets/tinymce/jscripts/tiny_mce/langs/fr.js new file mode 100644 index 0000000..b26fa0b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/fr.js @@ -0,0 +1,154 @@ +tinyMCE.addI18n({fr:{ +common:{ +edit_confirm:"souhaitez-vous utiliser le mode WYSIWYG pour cette zone de texte ?", +apply:"Appliquer", +insert:"Ins\u00E9rer", +update:"Mettre \u00E0 jour", +cancel:"Annuler", +close:"Fermer", +browse:"parcourir", +class_name:"Class", +not_set:"-- non d\u00E9fini --", +clipboard_msg:"Les fonctions Copier/Couper/Coller ne sont pas valables sur Mozilla et Firefox.\nSouhaitez-vous avoir plus d'informations sur ce sujet ?", +clipboard_no_support:"Actuellement pas pris en charge par votre navigateur. Veuillez tiliser les raccourcis clavier \u00E0 la place.", +popup_blocked:"D\u00E9sol\u00E9, nous avons d\u00E9tect\u00E9 que votre bloqueur de popup a bloqu\u00E9 une fen\u00EAtre dont l'application a besoin. Vous devez d\u00E9sactiver votre bloqueur de popup pour pouvoir utiliser cet outil.", +invalid_data:"Erreur : saisie de valeurs incorrectes. Elles sont mises en \u00E9vidence en rouge.", +more_colors:"Plus de couleurs" +}, +contextmenu:{ +align:"Alignement", +left:"Gauche", +center:"Centr\u00E9", +right:"Droite", +full:"Justifi\u00E9" +}, +insertdatetime:{ +date_fmt:"%d-%m-%Y", +time_fmt:"%H:%M:%S", +insertdate_desc:"Ins\u00E9rer la date", +inserttime_desc:"Ins\u00E9rer l'heure", +months_long:"Janvier,F\u00E9vrier,Mars,Avril,Mai,Juin,Juillet,Ao\u00FBt,Septembre,Octobre,Novembre,D\u00E9cembre", +months_short:"Jan,F\u00E9v,Mar,Avr,Mai,Juin,Juil,Ao\u00FBt,Sep,Oct,Nov,D\u00E9c", +day_long:"Dimanche,Lundi,Mardi,Mercredi,Jeudi,Vendredi,Samedi,Dimanche", +day_short:"Dim,Lun,Mar,Mer,Jeu,Ven,Sam,Dim" +}, +print:{ +print_desc:"Imprimer" +}, +preview:{ +preview_desc:"Pr\u00E9visualiser" +}, +directionality:{ +ltr_desc:"\u00C9criture de gauche \u00E0 droite", +rtl_desc:"\u00C9criture de droite \u00E0 gauche" +}, +layer:{ +insertlayer_desc:"Ins\u00E9rer une nouvelle couche", +forward_desc:"D\u00E9placer vers l'avant", +backward_desc:"D\u00E9placer vers l'arri\u00E8re", +absolute_desc:"Activer le positionnement absolu", +content:"Nouvelle couche\u2026" +}, +save:{ +save_desc:"Enregistrer", +cancel_desc:"Annuler toutes les modifications" +}, +nonbreaking:{ +nonbreaking_desc:"Ins\u00E9rer une espace ins\u00E9cable" +}, +iespell:{ +iespell_desc:"Lancer le v\u00E9rificateur d'orthographe", +download:"ieSpell n'est pas install\u00E9. Souhaitez-vous l'installer maintenant ?" +}, +advhr:{ +advhr_desc:"Ins\u00E9rer un trait horizontal" +}, +emotions:{ +emotions_desc:"\u00C9motic\u00F4nes" +}, +searchreplace:{ +search_desc:"Rechercher", +replace_desc:"Rechercher / remplacer" +}, +advimage:{ +image_desc:"Ins\u00E9rer / \u00E9diter une image" +}, +advlink:{ +link_desc:"Ins\u00E9rer / \u00E9diter un lien" +}, +xhtmlxtras:{ +cite_desc:"Citation", +abbr_desc:"Abr\u00E9viation", +acronym_desc:"Acronyme", +del_desc:"Barr\u00E9", +ins_desc:"Ins\u00E9r\u00E9", +attribs_desc:"Ins\u00E9rer / \u00E9diter les attributs" +}, +style:{ +desc:"\u00C9diter la feuille de style (CSS)" +}, +paste:{ +paste_text_desc:"Coller comme texte brut", +paste_word_desc:"Coller un texte cr\u00E9\u00E9 sous Word", +selectall_desc:"Tout s\u00E9lectionner" +}, +paste_dlg:{ +text_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre.", +text_linebreaks:"Conserver les retours \u00E0 la ligne", +word_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre." +}, +table:{ +desc:"Ins\u00E9rer un nouveau tableau", +row_before_desc:"Ins\u00E9rer une ligne avant", +row_after_desc:"Ins\u00E9rer une ligne apr\u00E8s", +delete_row_desc:"Effacer la ligne", +col_before_desc:"Ins\u00E9rer une colonne avant", +col_after_desc:"Ins\u00E9rer une colonne apr\u00E8s", +delete_col_desc:"Effacer la colonne", +split_cells_desc:"Scinder les cellules fusionn\u00E9es", +merge_cells_desc:"Fusionner les cellules", +row_desc:"Propri\u00E9t\u00E9s de la ligne", +cell_desc:"Propri\u00E9t\u00E9s de la cellule", +props_desc:"Propri\u00E9t\u00E9s du tableau", +paste_row_before_desc:"Coller la ligne avant", +paste_row_after_desc:"Coller la ligne apr\u00E8s", +cut_row_desc:"Couper la ligne", +copy_row_desc:"Copier la ligne", +del:"Effacer le tableau", +row:"Ligne", +col:"Colonne", +cell:"Cellule" +}, +autosave:{ +unload_msg:"Les modifications apport\u00E9es seront perdus si vous quittez cette page." +}, +fullscreen:{ +desc:"Passer en mode plein \u00E9cran" +}, +media:{ +desc:"Ins\u00E9rer / \u00E9diter un m\u00E9dia incorpor\u00E9", +edit:"\u00C9diter un m\u00E9dia incorpor\u00E9" +}, +fullpage:{ +desc:"Propri\u00E9t\u00E9s du document" +}, +template:{ +desc:"Ins\u00E9rer un mod\u00E8le pr\u00E9d\u00E9fini." +}, +visualchars:{ +desc:"Activer les caract\u00E8res de mise en page." +}, +spellchecker:{ +desc:"Activer le v\u00E9rificateur d'orthographe", +menu:"Param\u00E8tres du v\u00E9rificateur d'orthographe", +ignore_word:"Ignorer le mot", +ignore_words:"Tout ignorer", +langs:"Langues", +wait:"Veuillez patienter\u2026", +sug:"Suggestions", +no_sug:"Aucune suggestion", +no_mpell:"Aucune erreur trouv\u00E9e." +}, +pagebreak:{ +desc:"Ins\u00E9rer un saut de page." +}}}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/langs/ru.js b/assets/tinymce/jscripts/tiny_mce/langs/ru.js new file mode 100644 index 0000000..62eea52 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/langs/ru.js @@ -0,0 +1,173 @@ +tinyMCE.addI18n({ru:{ +common:{ +edit_confirm:"\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C WYSIWYG \u0440\u0435\u0436\u0438\u043C \u0434\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u043F\u043E\u043B\u044F?", +apply:"\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C", +insert:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C", +update:"\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C", +cancel:"\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C", +close:"\u0417\u0430\u043A\u0440\u044B\u0442\u044C", +browse:"\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440", +class_name:"\u041A\u043B\u0430\u0441\u0441", +not_set:"- \u041D\u0435 \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u043E -", +clipboard_msg:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435, \u0432\u044B\u0440\u0435\u0437\u043A\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u043A\u0430 \u043D\u0435 \u0440\u0430\u0431\u043E\u0442\u0430\u044E\u0442 \u0432 Firefox.\r\n\u0425\u043E\u0442\u0438\u0442\u0435 \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 \u043F\u043E\u0434\u0440\u043E\u0431\u043D\u0443\u044E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E?", +clipboard_no_support:"\u041D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F \u0412\u0430\u0448\u0438\u043C \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043E\u043C, \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \u0433\u043E\u0440\u044F\u0447\u0438\u0435 \u043A\u043B\u0430\u0432\u0438\u0448\u0438.", +popup_blocked:"\u0411\u043B\u043E\u043A\u0438\u0440\u0430\u0442\u043E\u0440 \u0432\u0441\u043F\u043B\u044B\u0432\u0430\u044E\u0449\u0438\u0445 \u043E\u043A\u043E\u043D \u0437\u0430\u043A\u0440\u044B\u043B \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E\u0435 \u043E\u043A\u043D\u043E. \u0414\u043B\u044F \u043F\u043E\u043B\u043D\u043E\u0446\u0435\u043D\u043D\u043E\u0439 \u0440\u0430\u0431\u043E\u0442\u044B, \u043E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u0435 \u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0443 \u043D\u0430 \u044D\u0442\u043E\u043C \u0441\u0430\u0439\u0442\u0435.", +invalid_data:"\u041E\u0448\u0438\u0431\u043A\u0430: \u0412\u0432\u0435\u0434\u0435\u043D\u043E \u043D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435, \u043E\u043D\u043E \u043E\u0442\u043C\u0435\u0447\u0435\u043D\u043E \u043A\u0440\u0430\u0441\u043D\u044B\u043C.", +more_colors:"\u0414\u0440\u0443\u0433\u0438\u0435 \u0446\u0432\u0435\u0442\u0430..." +}, +contextmenu:{ +align:"\u0412\u044B\u0440\u0430\u0432\u043D\u0438\u0432\u0430\u043D\u0438\u0435", +left:"\u041F\u043E \u043B\u0435\u0432\u043E\u043C\u0443 \u043A\u0440\u0430\u044E", +center:"\u041F\u043E \u0446\u0435\u043D\u0442\u0440\u0443", +right:"\u041F\u043E \u043F\u0440\u0430\u0432\u043E\u043C\u0443 \u043A\u0440\u0430\u044E", +full:"\u041F\u043E \u0448\u0438\u0440\u0438\u043D\u0435" +}, +insertdatetime:{ +date_fmt:"%d.%m.%Y", +time_fmt:"%H:%M:%S", +insertdate_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0434\u0430\u0442\u0443", +inserttime_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0432\u0440\u0435\u043C\u044F", +months_long:"\u044F\u043D\u0432\u0430\u0440\u044C,\u0444\u0435\u0432\u0440\u0430\u043B\u044C,\u043C\u0430\u0440\u0442,\u0430\u043F\u0440\u0435\u043B\u044C,\u043C\u0430\u0439,\u0438\u044E\u043D\u044C,\u0438\u044E\u043B\u044C,\u0430\u0432\u0433\u0443\u0441\u0442,\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C,\u043E\u043A\u0442\u044F\u0431\u0440\u044C,\u043D\u043E\u044F\u0431\u0440\u044C,\u0434\u0435\u043A\u0430\u0431\u0440\u044C", +months_short:"\u044F\u043D\u0432,\u0444\u0435\u0432,\u043C\u0430\u0440\u0442,\u0430\u043F\u0440,\u043C\u0430\u0439,\u0438\u044E\u043D\u044C,\u0438\u044E\u043B\u044C,\u0430\u0432\u0433,\u0441\u0435\u043D,\u043E\u043A\u0442,\u043D\u043E\u044F,\u0434\u0435\u043A", +day_long:"\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435,\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A,\u0432\u0442\u043E\u0440\u043D\u0438\u043A,\u0441\u0440\u0435\u0434\u0430,\u0447\u0435\u0442\u0432\u0435\u0440\u0433,\u043F\u044F\u0442\u043D\u0438\u0446\u0443,\u0441\u0443\u0431\u0431\u043E\u0442\u0430,\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435", +day_short:"\u0432\u0441,\u043F\u043D,\u0432\u0442,\u0441\u0440,\u0447\u0442,\u043F\u0442,\u0441\u0431,\u0432\u0441" +}, +print:{ +print_desc:"\u041F\u0435\u0447\u0430\u0442\u044C" +}, +preview:{ +preview_desc:"\u041F\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440" +}, +directionality:{ +ltr_desc:"\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0441\u043B\u0435\u0432\u0430 \u043D\u0430\u043F\u0440\u0430\u0432\u043E", +rtl_desc:"\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0441\u043F\u0440\u0430\u0432\u0430 \u043D\u0430\u043B\u0435\u0432\u043E" +}, +layer:{ +insertlayer_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u043B\u043E\u0439", +forward_desc:"\u041D\u0430 \u043F\u0435\u0440\u0435\u0434\u043D\u0438\u0439 \u043F\u043B\u0430\u043D", +backward_desc:"\u041D\u0430 \u0437\u0430\u0434\u043D\u0438\u0439 \u043F\u043B\u0430\u043D", +absolute_desc:"\u0410\u0431\u0441\u043E\u043B\u044E\u0442\u043D\u043E\u0435 \u043F\u043E\u0437\u0438\u0446\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435", +content:"\u041D\u043E\u0432\u044B\u0439 \u0441\u043B\u043E\u0439" +}, +save:{ +save_desc:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C", +cancel_desc:"\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C \u0432\u0441\u0435 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F" +}, +nonbreaking:{ +nonbreaking_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u0435\u0440\u0430\u0437\u0440\u044B\u0432\u043D\u044B\u0439 \u043F\u0440\u043E\u0431\u0435\u043B" +}, +iespell:{ +iespell_desc:"\u041F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C \u043E\u0440\u0444\u043E\u0433\u0440\u0430\u0444\u0438\u044E", +download:"ieSpell \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D. \u0416\u0435\u043B\u0430\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C?" +}, +advhr:{ +advhr_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0440\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C" +}, +emotions:{ +emotions_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u043C\u0430\u0439\u043B" +}, +searchreplace:{ +search_desc:"\u041D\u0430\u0439\u0442\u0438", +replace_desc:"\u0417\u0430\u043C\u0435\u043D\u0438\u0442\u044C" +}, +advimage:{ +image_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C/\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435", +delta_width:"200" +}, +advlink:{ +link_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C/\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0441\u0441\u044B\u043B\u043A\u0443", +delta_width:"200" +}, +xhtmlxtras:{ +cite_desc:"\u0426\u0438\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435", +abbr_desc:"\u0421\u043E\u043A\u0440\u0430\u0449\u0435\u043D\u0438\u0435", +acronym_desc:"\u0410\u0431\u0431\u0440\u0435\u0432\u0438\u0430\u0446\u0438\u044F", +del_desc:"\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435", +ins_desc:"\u0417\u0430\u043C\u0435\u043D\u0430", +attribs_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C/\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u044D\u043B\u0435\u043C\u0435\u043D\u0442" +}, +style:{ +desc:"\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C CSS \u0441\u0442\u0438\u043B\u044C" +}, +paste:{ +paste_text_desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043A\u0430\u043A \u0442\u0435\u043A\u0441\u0442", +paste_word_desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u0438\u0437 Word", +selectall_desc:"\u0412\u044B\u0434\u0435\u043B\u0438\u0442\u044C \u0432\u0441\u0435", +plaintext_mode_sticky:"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.", +plaintext_mode:"Paste is now in plain text mode. Click again to toggle back to regular paste mode." +}, +paste_dlg:{ +text_title:"\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043B\u044F \u0432\u0441\u0442\u0430\u0432\u043A\u0438 \u0442\u0435\u043A\u0441\u0442\u0430 \u0432 \u043E\u043A\u043D\u043E.", +text_linebreaks:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043F\u0435\u0440\u0435\u043D\u043E\u0441\u044B \u0441\u0442\u0440\u043E\u043A", +word_title:"\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043B\u044F \u0432\u0441\u0442\u0430\u0432\u043A\u0438 \u0442\u0435\u043A\u0441\u0442\u0430 \u0432 \u043E\u043A\u043D\u043E." +}, +table:{ +desc:"\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435/\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0435 \u0442\u0430\u0431\u043B\u0438\u0446\u044B", +row_before_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 \u0441\u0432\u0435\u0440\u0445\u0443", +row_after_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 \u0441\u043D\u0438\u0437\u0443", +delete_row_desc:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443", +col_before_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0442\u043E\u043B\u0431\u0435\u0446 \u0441\u043B\u0435\u0432\u0430", +col_after_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0442\u043E\u043B\u0431\u0435\u0446 \u0441\u043F\u0440\u0430\u0432\u0430", +delete_col_desc:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u0442\u043E\u043B\u0431\u0435\u0446", +split_cells_desc:"\u0420\u0430\u0437\u0431\u0438\u0442\u044C \u044F\u0447\u0435\u0439\u043A\u0443", +merge_cells_desc:"\u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0438\u0442\u044C \u044F\u0447\u0435\u0439\u043A\u0438", +row_desc:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0441\u0442\u0440\u043E\u043A\u0438", +cell_desc:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u044F\u0447\u0435\u0439\u043A\u0438", +props_desc:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0442\u0430\u0431\u043B\u0438\u0446\u044B", +paste_row_before_desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 \u0441\u0432\u0435\u0440\u0445\u0443", +paste_row_after_desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 \u0441\u043D\u0438\u0437\u0443", +cut_row_desc:"\u0412\u044B\u0440\u0435\u0437\u0430\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443", +copy_row_desc:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443", +del:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0442\u0430\u0431\u043B\u0438\u0446\u0443", +row:"\u0421\u0442\u0440\u043E\u043A\u0430", +col:"\u0421\u0442\u043E\u043B\u0431\u0435\u0446", +cell:"\u042F\u0447\u0435\u0439\u043A\u0430", +cellprops_delta_width:"30" +}, +autosave:{ +unload_msg:"\u041F\u0440\u043E\u0438\u0437\u0432\u0435\u0434\u0435\u043D\u043D\u044B\u0435 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0431\u0443\u0434\u0443\u0442 \u0443\u0442\u0435\u0440\u044F\u043D\u044B, \u0435\u0441\u043B\u0438 \u0412\u044B \u0443\u0439\u0434\u0435\u0442\u0435 \u0441 \u044D\u0442\u043E\u0439 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u044B.", +restore_content:"\u0412\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0435 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u0435", +warning_message:"\u0412\u0441\u0435 \u043F\u0440\u043E\u0438\u0437\u0432\u0435\u0434\u0435\u043D\u043D\u044B\u0435 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0431\u0443\u0434\u0443\u0442 \u0443\u0442\u0435\u0440\u044F\u043D\u044B.\n\n\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C \u0432\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435 \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u044F?" +}, +fullscreen:{ +desc:"\u041F\u043E\u043B\u043D\u043E\u044D\u043A\u0440\u0430\u043D\u043D\u044B\u0439 \u0440\u0435\u0436\u0438\u043C" +}, +media:{ +desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C/\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043A\u043B\u0438", +edit:"\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 \u043A\u043B\u0438\u043F\u0430" +}, +fullpage:{ +desc:"\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430" +}, +template:{ +desc:"\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D" +}, +visualchars:{ +desc:"\u0412\u0441\u0435 \u0437\u043D\u0430\u043A\u0438" +}, +spellchecker:{ +desc:"\u041F\u0440\u0430\u0432\u043E\u043F\u0438\u0441\u0430\u043D\u0438\u0435", +menu:"\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 \u043F\u0440\u043E\u0432\u0435\u0440\u043A\u0438 \u043F\u0440\u0430\u0432\u043E\u043F\u0438\u0441\u0430\u043D\u0438\u044F", +ignore_word:"\u041F\u0440\u043E\u043F\u0443\u0441\u0442\u0438\u0442\u044C", +ignore_words:"\u041F\u0440\u043E\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u0432\u0441\u0435", +langs:"\u042F\u0437\u044B\u043A\u0438", +wait:"\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u0434\u043E\u0436\u0434\u0438\u0442\u0435...", +sug:"\u0412\u0430\u0440\u0438\u0430\u043D\u0442\u044B", +no_sug:"\u041D\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u043D\u0442\u043E\u0432", +no_mpell:"\u041E\u0448\u0438\u0431\u043E\u043A \u043D\u0435 \u043E\u0431\u043D\u0430\u0440\u0443\u0436\u0435\u043D\u043E." +}, +pagebreak:{ +desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0440\u0430\u0437\u0440\u044B\u0432 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u044B" +}, +advlist:{ +types:"\u0421\u0438\u043C\u0432\u043E\u043B\u044B", +def:"\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u044B\u0435", +lower_alpha:"\u0421\u0442\u0440\u043E\u0447\u043D\u044B\u0435 \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u0435 \u0431\u0443\u043A\u0432\u044B", +lower_greek:"\u0421\u0442\u0440\u043E\u0447\u043D\u044B\u0435 \u0433\u0440\u0435\u0447\u0435\u0441\u043A\u0438\u0435 \u0431\u0443\u043A\u0432\u044B", +lower_roman:"\u0421\u0442\u0440\u043E\u0447\u043D\u044B\u0435 \u0440\u0438\u043C\u0441\u043A\u0438\u0435 \u0446\u0438\u0444\u0440\u044B", +upper_alpha:"\u0417\u0430\u0433\u043B\u0430\u0432\u043D\u044B\u0435 \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u0435 \u0431\u0443\u043A\u0432\u044B", +upper_roman:"\u0417\u0430\u0433\u043B\u0430\u0432\u043D\u044B\u0435 \u0440\u0438\u043C\u0441\u043A\u0438\u0435 \u0446\u0438\u0444\u0440\u044B", +circle:"\u041A\u0440\u0443\u0433\u0438", +disc:"\u041E\u043A\u0440\u0443\u0436\u043D\u043E\u0441\u0442\u0438", +square:"\u041A\u0432\u0430\u0434\u0440\u0430\u0442\u044B" +}}}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/license.txt b/assets/tinymce/jscripts/tiny_mce/license.txt new file mode 100644 index 0000000..60d6d4c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/license.txt @@ -0,0 +1,504 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/.svn/all-wcprops new file mode 100644 index 0000000..480adbb --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 74 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/.svn/entries new file mode 100644 index 0000000..145242a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/.svn/entries @@ -0,0 +1,160 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins +http://django-grappelli.googlecode.com/svn + + + +2010-05-27T14:20:58.953064Z +1046 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +media +dir + +insertdatetime +dir + +pagebreak +dir + +searchreplace_orig +dir + +noneditable +dir + +inlinepopups +dir + +autoresize +dir + +template_orig +dir + +example +dir + +iespell +dir + +emotions +dir + +save +dir + +media_orig +dir + +visualchars_orig +dir + +advhr +dir + +tabfocus +dir + +advlist +dir + +advlink_orig +dir + +grappelli_contextmenu +dir + +layer +dir + +advimage +dir + +grappelli +dir + +preview +dir + +directionality +dir + +wordcount +dir + +visualchars +dir + +legacyoutput +dir + +table +dir + +autosave +dir + +advlink +dir + +print +dir + +paste_orig +dir + +advimage_orig +dir + +nonbreaking +dir + +fullpage +dir + +style +dir + +searchreplace +dir + +fullscreen +dir + +spellchecker +dir + +contextmenu +dir + +template +dir + +paste +dir + +bbcode +dir + +xhtmlxtras +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/all-wcprops new file mode 100644 index 0000000..290dfac --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js +END +rule.htm +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/entries new file mode 100644 index 0000000..72fd201 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/entries @@ -0,0 +1,139 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.428950Z +d0a03059205455e5c19cf3a845a0ebde +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +847 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.428950Z +a7fda2e674f15a33baf53cea2e23ec66 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1442 + +css +dir + +js +dir + +rule.htm +file + + + + +2010-06-04T12:51:45.428950Z +bb16b0b8feab8a604b14be9ae6da66e7 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2636 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..4d3b062 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AdvancedHRPlugin",{init:function(a,b){a.addCommand("mceAdvancedHr",function(){a.windowManager.open({file:b+"/rule.htm",width:250+parseInt(a.getLang("advhr.delta_width",0)),height:160+parseInt(a.getLang("advhr.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("advhr",{title:"advhr.advhr_desc",cmd:"mceAdvancedHr"});a.onNodeChange.add(function(d,c,e){c.setActive("advhr",e.nodeName=="HR")});a.onClick.add(function(c,d){d=d.target;if(d.nodeName==="HR"){c.selection.select(d)}})},getInfo:function(){return{longname:"Advanced HR",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advhr",tinymce.plugins.AdvancedHRPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..0c652d3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,57 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedHRPlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceAdvancedHr', function() { + ed.windowManager.open({ + file : url + '/rule.htm', + width : 250 + parseInt(ed.getLang('advhr.delta_width', 0)), + height : 160 + parseInt(ed.getLang('advhr.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('advhr', { + title : 'advhr.advhr_desc', + cmd : 'mceAdvancedHr' + }); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('advhr', n.nodeName == 'HR'); + }); + + ed.onClick.add(function(ed, e) { + e = e.target; + + if (e.nodeName === 'HR') + ed.selection.select(e); + }); + }, + + getInfo : function() { + return { + longname : 'Advanced HR', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advhr', tinymce.plugins.AdvancedHRPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/rule.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/rule.htm.svn-base new file mode 100644 index 0000000..fc37b2a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/.svn/text-base/rule.htm.svn-base @@ -0,0 +1,57 @@ + + + + {#advhr.advhr_desc} + + + + + + + +
+ + +
+
+ + + + + + + + + + + + + +
+ + +
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/all-wcprops new file mode 100644 index 0000000..ef2285d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/css +END +advhr.css +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/entries new file mode 100644 index 0000000..2791881 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +advhr.css +file + + + + +2010-06-04T12:51:45.418948Z +15df80b2137bcc04d5455ffa3a51e0c5 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +240 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/text-base/advhr.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/text-base/advhr.css.svn-base new file mode 100644 index 0000000..0e22834 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/.svn/text-base/advhr.css.svn-base @@ -0,0 +1,5 @@ +input.radio {border:1px none #000; background:transparent; vertical-align:middle;} +.panel_wrapper div.current {height:80px;} +#width {width:50px; vertical-align:middle;} +#width2 {width:50px; vertical-align:middle;} +#size {width:100px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css new file mode 100644 index 0000000..0e22834 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css @@ -0,0 +1,5 @@ +input.radio {border:1px none #000; background:transparent; vertical-align:middle;} +.panel_wrapper div.current {height:80px;} +#width {width:50px; vertical-align:middle;} +#width2 {width:50px; vertical-align:middle;} +#size {width:100px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js new file mode 100644 index 0000000..4d3b062 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AdvancedHRPlugin",{init:function(a,b){a.addCommand("mceAdvancedHr",function(){a.windowManager.open({file:b+"/rule.htm",width:250+parseInt(a.getLang("advhr.delta_width",0)),height:160+parseInt(a.getLang("advhr.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("advhr",{title:"advhr.advhr_desc",cmd:"mceAdvancedHr"});a.onNodeChange.add(function(d,c,e){c.setActive("advhr",e.nodeName=="HR")});a.onClick.add(function(c,d){d=d.target;if(d.nodeName==="HR"){c.selection.select(d)}})},getInfo:function(){return{longname:"Advanced HR",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advhr",tinymce.plugins.AdvancedHRPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js new file mode 100644 index 0000000..0c652d3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js @@ -0,0 +1,57 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedHRPlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceAdvancedHr', function() { + ed.windowManager.open({ + file : url + '/rule.htm', + width : 250 + parseInt(ed.getLang('advhr.delta_width', 0)), + height : 160 + parseInt(ed.getLang('advhr.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('advhr', { + title : 'advhr.advhr_desc', + cmd : 'mceAdvancedHr' + }); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('advhr', n.nodeName == 'HR'); + }); + + ed.onClick.add(function(ed, e) { + e = e.target; + + if (e.nodeName === 'HR') + ed.selection.select(e); + }); + }, + + getInfo : function() { + return { + longname : 'Advanced HR', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advhr', tinymce.plugins.AdvancedHRPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/all-wcprops new file mode 100644 index 0000000..f88f5a0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/js +END +rule.js +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/js/rule.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/entries new file mode 100644 index 0000000..359b583 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advhr/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +rule.js +file + + + + +2010-06-04T12:51:45.425614Z +ef46d7c850c8bcc869ea84ed7ac00c49 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1322 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/text-base/rule.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/text-base/rule.js.svn-base new file mode 100644 index 0000000..b6cbd66 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advhr/js/.svn/text-base/rule.js.svn-base @@ -0,0 +1,43 @@ +var AdvHRDialog = { + init : function(ed) { + var dom = ed.dom, f = document.forms[0], n = ed.selection.getNode(), w; + + w = dom.getAttrib(n, 'width'); + f.width.value = w ? parseInt(w) : (dom.getStyle('width') || ''); + f.size.value = dom.getAttrib(n, 'size') || parseInt(dom.getStyle('height')) || ''; + f.noshade.checked = !!dom.getAttrib(n, 'noshade') || !!dom.getStyle('border-width'); + selectByValue(f, 'width2', w.indexOf('%') != -1 ? '%' : 'px'); + }, + + update : function() { + var ed = tinyMCEPopup.editor, h, f = document.forms[0], st = ''; + + h = ' + + + {#advhr.advhr_desc} + + + + + + + +
+ + +
+
+ + + + + + + + + + + + + +
+ + +
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/all-wcprops new file mode 100644 index 0000000..26a5d0c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js +END +image.htm +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/entries new file mode 100644 index 0000000..ec79485 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/entries @@ -0,0 +1,142 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage +http://django-grappelli.googlecode.com/svn + + + +2010-05-27T14:20:58.953064Z +1046 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.628948Z +51ac8d88b3cb5e8e778692e1c28821f6 +2010-05-27T14:20:58.953064Z +1046 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +805 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.628948Z +e49660f37bcbe25dd0ca286c6ad34a33 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1295 + +css +dir + +image.htm +file + + + + +2010-06-04T12:51:45.632280Z +be42c94f1518d1f3ca7cb9fbd2018fa2 +2010-05-27T14:09:40.573569Z +1045 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +12970 + +img +dir + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/image.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/image.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/prop-base/image.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..6ece9e4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.AdvancedImagePlugin',{init:function(ed,url){ed.addCommand('mceAdvImage',function(){if(ed.dom.getAttrib(ed.selection.getNode(),'class').indexOf('mceItem')!=-1)return;ed.windowManager.open({file:url+'/image.htm',width:480+parseInt(ed.getLang('advimage.delta_width',0)),height:235+parseInt(ed.getLang('advimage.delta_height',0)),inline:1},{plugin_url:url});});ed.addButton('image',{title:'advimage.image_desc',cmd:'mceAdvImage'});},getInfo:function(){return{longname:'Advanced image',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('advimage',tinymce.plugins.AdvancedImagePlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..259a076 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,47 @@ +/** + * $Id: editor_plugin_src.js 677 2008-03-07 13:52:41Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedImagePlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceAdvImage', function() { + // Internal image object like a flash placeholder + if (ed.dom.getAttrib(ed.selection.getNode(), 'class').indexOf('mceItem') != -1) + return; + + ed.windowManager.open({ + file : url + '/image.htm', + width : 480 + parseInt(ed.getLang('advimage.delta_width', 0)), + height : 385 + parseInt(ed.getLang('advimage.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('image', { + title : 'advimage.image_desc', + cmd : 'mceAdvImage' + }); + }, + + getInfo : function() { + return { + longname : 'Advanced image', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advimage', tinymce.plugins.AdvancedImagePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/image.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/image.htm.svn-base new file mode 100644 index 0000000..df4e0ea --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/.svn/text-base/image.htm.svn-base @@ -0,0 +1,208 @@ + + + + {#advimage_dlg.dialog_title} + + + + + + + + + + +
+ + +
+
+
+
+
+
+ +
 
+
+
+ +
+
+
+
+
+
+
+
+
+ +
+ {#advimage_dlg.preview} + +
+
+ +
+
+ {#advimage_dlg.tab_appearance} + +
+
+
+ x + px + + +
+
+ + + +
+
+
+
+ + +
+
+ +
+
+ {#advimage_dlg.swap_image} + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ + + + +
 
+
+ +
+ {#advimage_dlg.misc} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + + + +
 
+
+
+
+ +
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/all-wcprops new file mode 100644 index 0000000..25c9c2e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/css +END +advimage.css +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/entries new file mode 100644 index 0000000..b0204ba --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/css +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +advimage.css +file + + + + +2010-06-04T12:51:45.612281Z +719c796564614adbcce9195099a41b58 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +663 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/prop-base/advimage.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/prop-base/advimage.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/prop-base/advimage.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/text-base/advimage.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/text-base/advimage.css.svn-base new file mode 100644 index 0000000..0ee8956 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/.svn/text-base/advimage.css.svn-base @@ -0,0 +1,13 @@ +#src_list, #over_list, #out_list {width:280px;} +.mceActionPanel {margin-top:7px;} +.alignPreview {border:1px solid #000; width:140px; height:140px; overflow:hidden; padding:5px;} +.checkbox {border:0;} +.panel_wrapper div.current {height:305px;} +#prev {margin:0; border:1px solid #000; width:428px; height:150px; overflow:auto;} +#align, #classlist {width:150px;} +#width, #height {vertical-align:middle; width:50px; text-align:center;} +#vspace, #hspace, #border {vertical-align:middle; width:30px; text-align:center;} +#class_list {width:180px;} +/*input {width: 280px;}*/ +#constrain, #onmousemovecheck {width:auto;} +#id, #dir, #lang, #usemap, #longdesc {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css new file mode 100755 index 0000000..0ee8956 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css @@ -0,0 +1,13 @@ +#src_list, #over_list, #out_list {width:280px;} +.mceActionPanel {margin-top:7px;} +.alignPreview {border:1px solid #000; width:140px; height:140px; overflow:hidden; padding:5px;} +.checkbox {border:0;} +.panel_wrapper div.current {height:305px;} +#prev {margin:0; border:1px solid #000; width:428px; height:150px; overflow:auto;} +#align, #classlist {width:150px;} +#width, #height {vertical-align:middle; width:50px; text-align:center;} +#vspace, #hspace, #border {vertical-align:middle; width:30px; text-align:center;} +#class_list {width:180px;} +/*input {width: 280px;}*/ +#constrain, #onmousemovecheck {width:auto;} +#id, #dir, #lang, #usemap, #longdesc {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js new file mode 100755 index 0000000..6ece9e4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.AdvancedImagePlugin',{init:function(ed,url){ed.addCommand('mceAdvImage',function(){if(ed.dom.getAttrib(ed.selection.getNode(),'class').indexOf('mceItem')!=-1)return;ed.windowManager.open({file:url+'/image.htm',width:480+parseInt(ed.getLang('advimage.delta_width',0)),height:235+parseInt(ed.getLang('advimage.delta_height',0)),inline:1},{plugin_url:url});});ed.addButton('image',{title:'advimage.image_desc',cmd:'mceAdvImage'});},getInfo:function(){return{longname:'Advanced image',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('advimage',tinymce.plugins.AdvancedImagePlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js new file mode 100755 index 0000000..259a076 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js @@ -0,0 +1,47 @@ +/** + * $Id: editor_plugin_src.js 677 2008-03-07 13:52:41Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedImagePlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceAdvImage', function() { + // Internal image object like a flash placeholder + if (ed.dom.getAttrib(ed.selection.getNode(), 'class').indexOf('mceItem') != -1) + return; + + ed.windowManager.open({ + file : url + '/image.htm', + width : 480 + parseInt(ed.getLang('advimage.delta_width', 0)), + height : 385 + parseInt(ed.getLang('advimage.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('image', { + title : 'advimage.image_desc', + cmd : 'mceAdvImage' + }); + }, + + getInfo : function() { + return { + longname : 'Advanced image', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advimage', tinymce.plugins.AdvancedImagePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm new file mode 100755 index 0000000..df4e0ea --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm @@ -0,0 +1,208 @@ + + + + {#advimage_dlg.dialog_title} + + + + + + + + + + +
+ + +
+
+
+
+
+
+ +
 
+
+
+ +
+
+
+
+
+
+
+
+
+ +
+ {#advimage_dlg.preview} + +
+
+ +
+
+ {#advimage_dlg.tab_appearance} + +
+
+
+ x + px + + +
+
+ + + +
+
+
+
+ + +
+
+ +
+
+ {#advimage_dlg.swap_image} + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ + + + +
 
+
+ +
+ {#advimage_dlg.misc} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + + + +
 
+
+
+
+ +
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/all-wcprops new file mode 100644 index 0000000..de73555 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/img +END +sample.gif +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/entries new file mode 100644 index 0000000..703041c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/img +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +sample.gif +file + + + + +2010-06-04T12:51:45.618948Z +b9c7057c46716340e8967340ad11766e +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1624 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/prop-base/sample.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/prop-base/sample.gif.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/prop-base/sample.gif.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/text-base/sample.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/img/.svn/text-base/sample.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..53bf6890b507741c10910c9e2217ad8247b98e8d GIT binary patch literal 1624 zcmV-e2B-N)Nk%w1VJ!eH0OkMy|NsB}{r&v>{Q3F$`1ttq^YifV@ayaA>FMd_=H}w! z;^5%m-rnBb-QC>W+}qpR+S=OL+1c3G*w@$B*4Eb4)YQ|{)zHw=&d$%x&CScp%gV~i z$;rvc$jHXV#>B+L!^6YE!otD9!N9=4zrVk|y}i7=yt})*y1Kf#xw*Hux3;#nwY9ah zw6wFcv$C?Xv9YnRu&}SMudc4Ht*x!BtgNf6tE#H1si~={sjjD|r>3T+rKP2$q@<&x zqobp!qN1Xqp`oFnrJ$goprE6lpP!zdp`MSWoSd7Ro12@UnwpxLnw^=MnV6WE zmzS58mX?*3mz9;3mX?*2l$4W`lai8@l9G~eg|M^H&l zLpBo?51@vfgB2q_TVh*dNP<;cR$Wg!vYsMHR!qvvOis>GNH`+ zJ3B|tqgANiBSy@x>Q#;x7+DuU7&rwlf#S04)VZvA$XoUy8Y&f7)SqP<}Lw@L# zA(@Cohl`6CZyedUu^BlmK|DG5$Kl2f8z@uCc)^k-3m7$G!njf7$;XhOW>^`rV#UFh zEN#eG;bP?tCs>{+)q)ceg9$aDAaTZ{MGK5rU8ty$qz8){MT#gHGX{#XEJHLonBXFa zj+#9GE&^pq!`qG`K5iiC!gq}sRY|1yD8?j++_^oR0g+)NNtZN`)08!0q=}AA4HhIo zFaa9NYu8%97=oos5f?O`lwre~4VfoIei+FyK|urxj@C(-q(sS(!$5uL3j&jg7&XY% zlr17;3GGL;2K8>CB87G97;W(2VZ((D+3Hz;L;bylfhf(kFNV8at)h;hdM z85WX(#*Hq@@BYePt3t_l{ zCL3|YVWydA0Fz{rTl65n00)c^)^-jJn1c zRVXtA6mkUMEDLU|v7{JK&_IJ2ciiCy7BOT1fdUBh8b=yrbYaCAchCU_7?H`b1`}4q zLB|_mI2!;7W4QCq6F1O+MW||6AwmKafUrReUA&QotxQZI8D$G)AuSVV@X<&A9v;~H zKnWjo&;bljq=29aCeV-t5GBYkL=Q}q(S~FLd2t39MyRmC%_GFHkPc7CfIt8P*emqV z0YK2j9A+kmW^!tn(ZmG+L=6DZR99W}8p9?Utr=#t@rE2=zxf3QQ(JBJ&<{Z2>8EUP zeX1B)2w_3gXV)D-0Tt+=#@cV-0f!PU#MglZ3m6b}0e08zK^x;9(u?Tga{%?&nNTXhcEuM_#J>yL>p*a zuZJ2pliCGSp!Ye8>YFq@)ZOW-uT~OrjFQK!)UyVGFt7ni{Q3F$`1ttq^YifV@ayaA>FMd_=H}w! z;^5%m-rnBb-QC>W+}qpR+S=OL+1c3G*w@$B*4Eb4)YQ|{)zHw=&d$%x&CScp%gV~i z$;rvc$jHXV#>B+L!^6YE!otD9!N9=4zrVk|y}i7=yt})*y1Kf#xw*Hux3;#nwY9ah zw6wFcv$C?Xv9YnRu&}SMudc4Ht*x!BtgNf6tE#H1si~={sjjD|r>3T+rKP2$q@<&x zqobp!qN1Xqp`oFnrJ$goprE6lpP!zdp`MSWoSd7Ro12@UnwpxLnw^=MnV6WE zmzS58mX?*3mz9;3mX?*2l$4W`lai8@l9G~eg|M^H&l zLpBo?51@vfgB2q_TVh*dNP<;cR$Wg!vYsMHR!qvvOis>GNH`+ zJ3B|tqgANiBSy@x>Q#;x7+DuU7&rwlf#S04)VZvA$XoUy8Y&f7)SqP<}Lw@L# zA(@Cohl`6CZyedUu^BlmK|DG5$Kl2f8z@uCc)^k-3m7$G!njf7$;XhOW>^`rV#UFh zEN#eG;bP?tCs>{+)q)ceg9$aDAaTZ{MGK5rU8ty$qz8){MT#gHGX{#XEJHLonBXFa zj+#9GE&^pq!`qG`K5iiC!gq}sRY|1yD8?j++_^oR0g+)NNtZN`)08!0q=}AA4HhIo zFaa9NYu8%97=oos5f?O`lwre~4VfoIei+FyK|urxj@C(-q(sS(!$5uL3j&jg7&XY% zlr17;3GGL;2K8>CB87G97;W(2VZ((D+3Hz;L;bylfhf(kFNV8at)h;hdM z85WX(#*Hq@@BYePt3t_l{ zCL3|YVWydA0Fz{rTl65n00)c^)^-jJn1c zRVXtA6mkUMEDLU|v7{JK&_IJ2ciiCy7BOT1fdUBh8b=yrbYaCAchCU_7?H`b1`}4q zLB|_mI2!;7W4QCq6F1O+MW||6AwmKafUrReUA&QotxQZI8D$G)AuSVV@X<&A9v;~H zKnWjo&;bljq=29aCeV-t5GBYkL=Q}q(S~FLd2t39MyRmC%_GFHkPc7CfIt8P*emqV z0YK2j9A+kmW^!tn(ZmG+L=6DZR99W}8p9?Utr=#t@rE2=zxf3QQ(JBJ&<{Z2>8EUP zeX1B)2w_3gXV)D-0Tt+=#@cV-0f!PU#MglZ3m6b}0e08zK^x;9(u?Tga{%?&nNTXhcEuM_#J>yL>p*a zuZJ2pliCGSp!Ye8>YFq@)ZOW-uT~OrjFQK!)UyVGFt7ni'); + }, + + init : function(ed) { + var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, dom = ed.dom, n = ed.selection.getNode(); + + tinyMCEPopup.resizeToInnerSize(); + this.fillClassList('class_list'); + this.fillFileList('src_list', 'tinyMCEImageList'); + this.fillFileList('over_list', 'tinyMCEImageList'); + this.fillFileList('out_list', 'tinyMCEImageList'); + TinyMCE_EditableSelects.init(); + + if (n.nodeName == 'IMG') { + nl.src.value = dom.getAttrib(n, 'src'); + nl.width.value = dom.getAttrib(n, 'width'); + nl.height.value = dom.getAttrib(n, 'height'); + nl.alt.value = dom.getAttrib(n, 'alt'); + nl.title.value = dom.getAttrib(n, 'title'); + nl.vspace.value = this.getAttrib(n, 'vspace'); + nl.hspace.value = this.getAttrib(n, 'hspace'); + nl.border.value = this.getAttrib(n, 'border'); + selectByValue(f, 'align', this.getAttrib(n, 'align')); + selectByValue(f, 'class_list', dom.getAttrib(n, 'class'), true, true); + nl.style.value = dom.getAttrib(n, 'style'); + nl.id.value = dom.getAttrib(n, 'id'); + nl.dir.value = dom.getAttrib(n, 'dir'); + nl.lang.value = dom.getAttrib(n, 'lang'); + nl.usemap.value = dom.getAttrib(n, 'usemap'); + nl.longdesc.value = dom.getAttrib(n, 'longdesc'); + nl.insert.value = ed.getLang('update'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseover'))) + nl.onmouseoversrc.value = dom.getAttrib(n, 'onmouseover').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseout'))) + nl.onmouseoutsrc.value = dom.getAttrib(n, 'onmouseout').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (ed.settings.inline_styles) { + // Move attribs to styles + if (dom.getAttrib(n, 'align')) + this.updateStyle('align'); + + if (dom.getAttrib(n, 'hspace')) + this.updateStyle('hspace'); + + if (dom.getAttrib(n, 'border')) + this.updateStyle('border'); + + if (dom.getAttrib(n, 'vspace')) + this.updateStyle('vspace'); + } + } + + // Setup browse button + document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image'); + if (isVisible('srcbrowser')) + document.getElementById('src').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoversrccontainer').innerHTML = getBrowserHTML('overbrowser','onmouseoversrc','image','theme_advanced_image'); + if (isVisible('overbrowser')) + document.getElementById('onmouseoversrc').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoutsrccontainer').innerHTML = getBrowserHTML('outbrowser','onmouseoutsrc','image','theme_advanced_image'); + if (isVisible('outbrowser')) + document.getElementById('onmouseoutsrc').style.width = '260px'; + + // If option enabled default contrain proportions to checked + if (ed.getParam("advimage_constrain_proportions", true)) + f.constrain.checked = true; + + // Check swap image if valid data + if (nl.onmouseoversrc.value || nl.onmouseoutsrc.value) + this.setSwapImage(true); + else + this.setSwapImage(false); + + this.changeAppearance(); + this.showPreviewImage(nl.src.value, 1); + }, + + insert : function(file, title) { + var ed = tinyMCEPopup.editor, t = this, f = document.forms[0]; + + if (f.src.value === '') { + if (ed.selection.getNode().nodeName == 'IMG') { + ed.dom.remove(ed.selection.getNode()); + ed.execCommand('mceRepaint'); + } + + tinyMCEPopup.close(); + return; + } + + if (tinyMCEPopup.getParam("accessibility_warnings", 1)) { + if (!f.alt.value) { + tinyMCEPopup.confirm(tinyMCEPopup.getLang('advimage_dlg.missing_alt'), function(s) { + if (s) + t.insertAndClose(); + }); + + return; + } + } + + t.insertAndClose(); + }, + + insertAndClose : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], nl = f.elements, v, args = {}, el; + + tinyMCEPopup.restoreSelection(); + + // Fixes crash in Safari + if (tinymce.isWebKit) + ed.getWin().focus(); + + if (!ed.settings.inline_styles) { + args = { + vspace : nl.vspace.value, + hspace : nl.hspace.value, + border : nl.border.value, + align : getSelectValue(f, 'align') + }; + } else { + // Remove deprecated values + args = { + vspace : '', + hspace : '', + border : '', + align : '' + }; + } + + tinymce.extend(args, { + src : nl.src.value, + width : nl.width.value, + height : nl.height.value, + alt : nl.alt.value, + title : nl.title.value, + 'class' : getSelectValue(f, 'class_list'), + style : nl.style.value, + id : nl.id.value, + dir : nl.dir.value, + lang : nl.lang.value, + usemap : nl.usemap.value, + longdesc : nl.longdesc.value + }); + + args.onmouseover = args.onmouseout = ''; + + if (f.onmousemovecheck.checked) { + if (nl.onmouseoversrc.value) + args.onmouseover = "this.src='" + nl.onmouseoversrc.value + "';"; + + if (nl.onmouseoutsrc.value) + args.onmouseout = "this.src='" + nl.onmouseoutsrc.value + "';"; + } + + el = ed.selection.getNode(); + + if (el && el.nodeName == 'IMG') { + ed.dom.setAttribs(el, args); + } else { + ed.execCommand('mceInsertContent', false, '', {skip_undo : 1}); + ed.dom.setAttribs('__mce_tmp', args); + ed.dom.setAttrib('__mce_tmp', 'id', ''); + ed.undoManager.add(); + } + + tinyMCEPopup.close(); + }, + + getAttrib : function(e, at) { + var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2; + + if (ed.settings.inline_styles) { + switch (at) { + case 'align': + if (v = dom.getStyle(e, 'float')) + return v; + + if (v = dom.getStyle(e, 'vertical-align')) + return v; + + break; + + case 'hspace': + v = dom.getStyle(e, 'margin-left') + v2 = dom.getStyle(e, 'margin-right'); + + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'vspace': + v = dom.getStyle(e, 'margin-top') + v2 = dom.getStyle(e, 'margin-bottom'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'border': + v = 0; + + tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) { + sv = dom.getStyle(e, 'border-' + sv + '-width'); + + // False or not the same as prev + if (!sv || (sv != v && v !== 0)) { + v = 0; + return false; + } + + if (sv) + v = sv; + }); + + if (v) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + } + } + + if (v = dom.getAttrib(e, at)) + return v; + + return ''; + }, + + setSwapImage : function(st) { + var f = document.forms[0]; + + f.onmousemovecheck.checked = st; + setBrowserDisabled('overbrowser', !st); + setBrowserDisabled('outbrowser', !st); + + if (f.over_list) + f.over_list.disabled = !st; + + if (f.out_list) + f.out_list.disabled = !st; + + f.onmouseoversrc.disabled = !st; + f.onmouseoutsrc.disabled = !st; + }, + + fillClassList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + if (v = tinyMCEPopup.getParam('theme_advanced_styles')) { + cl = []; + + tinymce.each(v.split(';'), function(v) { + var p = v.split('='); + + cl.push({'title' : p[0], 'class' : p[1]}); + }); + } else + cl = tinyMCEPopup.editor.dom.getClasses(); + + if (cl.length > 0) { + lst.options.length = 0; + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + + tinymce.each(cl, function(o) { + lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + lst.options.length = 0; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + resetImageData : function() { + var f = document.forms[0]; + + f.elements.width.value = f.elements.height.value = ''; + }, + + updateImageData : function(img, st) { + var f = document.forms[0]; + + if (!st) { + f.elements.width.value = img.width; + f.elements.height.value = img.height; + } + + this.preloadImg = img; + }, + + changeAppearance : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], img = document.getElementById('alignSampleImg'); + + if (img) { + if (ed.getParam('inline_styles')) { + ed.dom.setAttrib(img, 'style', f.style.value); + } else { + img.align = f.align.value; + img.border = f.border.value; + img.hspace = f.hspace.value; + img.vspace = f.vspace.value; + } + } + }, + + changeHeight : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.width.value) / parseInt(t.preloadImg.width)) * t.preloadImg.height; + f.height.value = tp.toFixed(0); + }, + + changeWidth : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.height.value) / parseInt(t.preloadImg.height)) * t.preloadImg.width; + f.width.value = tp.toFixed(0); + }, + + updateStyle : function(ty) { + var dom = tinyMCEPopup.dom, st, v, f = document.forms[0], img = dom.create('img', {style : dom.get('style').value}); + + if (tinyMCEPopup.editor.settings.inline_styles) { + // Handle align + if (ty == 'align') { + dom.setStyle(img, 'float', ''); + dom.setStyle(img, 'vertical-align', ''); + + v = getSelectValue(f, 'align'); + if (v) { + if (v == 'left' || v == 'right') + dom.setStyle(img, 'float', v); + else + img.style.verticalAlign = v; + } + } + + // Handle border + if (ty == 'border') { + dom.setStyle(img, 'border', ''); + + v = f.border.value; + if (v || v == '0') { + if (v == '0') + img.style.border = '0'; + else + img.style.border = v + 'px solid black'; + } + } + + // Handle hspace + if (ty == 'hspace') { + dom.setStyle(img, 'marginLeft', ''); + dom.setStyle(img, 'marginRight', ''); + + v = f.hspace.value; + if (v) { + img.style.marginLeft = v + 'px'; + img.style.marginRight = v + 'px'; + } + } + + // Handle vspace + if (ty == 'vspace') { + dom.setStyle(img, 'marginTop', ''); + dom.setStyle(img, 'marginBottom', ''); + + v = f.vspace.value; + if (v) { + img.style.marginTop = v + 'px'; + img.style.marginBottom = v + 'px'; + } + } + + // Merge + dom.get('style').value = dom.serializeStyle(dom.parseStyle(img.style.cssText), 'img'); + } + }, + + changeMouseMove : function() { + }, + + showPreviewImage : function(u, st) { + if (!u) { + tinyMCEPopup.dom.setHTML('prev', ''); + return; + } + + if (!st && tinyMCEPopup.getParam("advimage_update_dimensions_onchange", true)) + this.resetImageData(); + + u = tinyMCEPopup.editor.documentBaseURI.toAbsolute(u); + + if (!st) + tinyMCEPopup.dom.setHTML('prev', ''); + else + tinyMCEPopup.dom.setHTML('prev', ''); + } +}; + +ImageDialog.preInit(); +tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js new file mode 100755 index 0000000..d08e469 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js @@ -0,0 +1,443 @@ +var ImageDialog = { + preInit : function() { + var url; + + tinyMCEPopup.requireLangPack(); + + if (url = tinyMCEPopup.getParam("external_image_list_url")) + document.write(''); + }, + + init : function(ed) { + var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, dom = ed.dom, n = ed.selection.getNode(); + + tinyMCEPopup.resizeToInnerSize(); + this.fillClassList('class_list'); + this.fillFileList('src_list', 'tinyMCEImageList'); + this.fillFileList('over_list', 'tinyMCEImageList'); + this.fillFileList('out_list', 'tinyMCEImageList'); + TinyMCE_EditableSelects.init(); + + if (n.nodeName == 'IMG') { + nl.src.value = dom.getAttrib(n, 'src'); + nl.width.value = dom.getAttrib(n, 'width'); + nl.height.value = dom.getAttrib(n, 'height'); + nl.alt.value = dom.getAttrib(n, 'alt'); + nl.title.value = dom.getAttrib(n, 'title'); + nl.vspace.value = this.getAttrib(n, 'vspace'); + nl.hspace.value = this.getAttrib(n, 'hspace'); + nl.border.value = this.getAttrib(n, 'border'); + selectByValue(f, 'align', this.getAttrib(n, 'align')); + selectByValue(f, 'class_list', dom.getAttrib(n, 'class'), true, true); + nl.style.value = dom.getAttrib(n, 'style'); + nl.id.value = dom.getAttrib(n, 'id'); + nl.dir.value = dom.getAttrib(n, 'dir'); + nl.lang.value = dom.getAttrib(n, 'lang'); + nl.usemap.value = dom.getAttrib(n, 'usemap'); + nl.longdesc.value = dom.getAttrib(n, 'longdesc'); + nl.insert.value = ed.getLang('update'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseover'))) + nl.onmouseoversrc.value = dom.getAttrib(n, 'onmouseover').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseout'))) + nl.onmouseoutsrc.value = dom.getAttrib(n, 'onmouseout').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (ed.settings.inline_styles) { + // Move attribs to styles + if (dom.getAttrib(n, 'align')) + this.updateStyle('align'); + + if (dom.getAttrib(n, 'hspace')) + this.updateStyle('hspace'); + + if (dom.getAttrib(n, 'border')) + this.updateStyle('border'); + + if (dom.getAttrib(n, 'vspace')) + this.updateStyle('vspace'); + } + } + + // Setup browse button + document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image'); + if (isVisible('srcbrowser')) + document.getElementById('src').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoversrccontainer').innerHTML = getBrowserHTML('overbrowser','onmouseoversrc','image','theme_advanced_image'); + if (isVisible('overbrowser')) + document.getElementById('onmouseoversrc').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoutsrccontainer').innerHTML = getBrowserHTML('outbrowser','onmouseoutsrc','image','theme_advanced_image'); + if (isVisible('outbrowser')) + document.getElementById('onmouseoutsrc').style.width = '260px'; + + // If option enabled default contrain proportions to checked + if (ed.getParam("advimage_constrain_proportions", true)) + f.constrain.checked = true; + + // Check swap image if valid data + if (nl.onmouseoversrc.value || nl.onmouseoutsrc.value) + this.setSwapImage(true); + else + this.setSwapImage(false); + + this.changeAppearance(); + this.showPreviewImage(nl.src.value, 1); + }, + + insert : function(file, title) { + var ed = tinyMCEPopup.editor, t = this, f = document.forms[0]; + + if (f.src.value === '') { + if (ed.selection.getNode().nodeName == 'IMG') { + ed.dom.remove(ed.selection.getNode()); + ed.execCommand('mceRepaint'); + } + + tinyMCEPopup.close(); + return; + } + + if (tinyMCEPopup.getParam("accessibility_warnings", 1)) { + if (!f.alt.value) { + tinyMCEPopup.confirm(tinyMCEPopup.getLang('advimage_dlg.missing_alt'), function(s) { + if (s) + t.insertAndClose(); + }); + + return; + } + } + + t.insertAndClose(); + }, + + insertAndClose : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], nl = f.elements, v, args = {}, el; + + tinyMCEPopup.restoreSelection(); + + // Fixes crash in Safari + if (tinymce.isWebKit) + ed.getWin().focus(); + + if (!ed.settings.inline_styles) { + args = { + vspace : nl.vspace.value, + hspace : nl.hspace.value, + border : nl.border.value, + align : getSelectValue(f, 'align') + }; + } else { + // Remove deprecated values + args = { + vspace : '', + hspace : '', + border : '', + align : '' + }; + } + + tinymce.extend(args, { + src : nl.src.value, + width : nl.width.value, + height : nl.height.value, + alt : nl.alt.value, + title : nl.title.value, + 'class' : getSelectValue(f, 'class_list'), + style : nl.style.value, + id : nl.id.value, + dir : nl.dir.value, + lang : nl.lang.value, + usemap : nl.usemap.value, + longdesc : nl.longdesc.value + }); + + args.onmouseover = args.onmouseout = ''; + + if (f.onmousemovecheck.checked) { + if (nl.onmouseoversrc.value) + args.onmouseover = "this.src='" + nl.onmouseoversrc.value + "';"; + + if (nl.onmouseoutsrc.value) + args.onmouseout = "this.src='" + nl.onmouseoutsrc.value + "';"; + } + + el = ed.selection.getNode(); + + if (el && el.nodeName == 'IMG') { + ed.dom.setAttribs(el, args); + } else { + ed.execCommand('mceInsertContent', false, '', {skip_undo : 1}); + ed.dom.setAttribs('__mce_tmp', args); + ed.dom.setAttrib('__mce_tmp', 'id', ''); + ed.undoManager.add(); + } + + tinyMCEPopup.close(); + }, + + getAttrib : function(e, at) { + var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2; + + if (ed.settings.inline_styles) { + switch (at) { + case 'align': + if (v = dom.getStyle(e, 'float')) + return v; + + if (v = dom.getStyle(e, 'vertical-align')) + return v; + + break; + + case 'hspace': + v = dom.getStyle(e, 'margin-left') + v2 = dom.getStyle(e, 'margin-right'); + + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'vspace': + v = dom.getStyle(e, 'margin-top') + v2 = dom.getStyle(e, 'margin-bottom'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'border': + v = 0; + + tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) { + sv = dom.getStyle(e, 'border-' + sv + '-width'); + + // False or not the same as prev + if (!sv || (sv != v && v !== 0)) { + v = 0; + return false; + } + + if (sv) + v = sv; + }); + + if (v) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + } + } + + if (v = dom.getAttrib(e, at)) + return v; + + return ''; + }, + + setSwapImage : function(st) { + var f = document.forms[0]; + + f.onmousemovecheck.checked = st; + setBrowserDisabled('overbrowser', !st); + setBrowserDisabled('outbrowser', !st); + + if (f.over_list) + f.over_list.disabled = !st; + + if (f.out_list) + f.out_list.disabled = !st; + + f.onmouseoversrc.disabled = !st; + f.onmouseoutsrc.disabled = !st; + }, + + fillClassList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + if (v = tinyMCEPopup.getParam('theme_advanced_styles')) { + cl = []; + + tinymce.each(v.split(';'), function(v) { + var p = v.split('='); + + cl.push({'title' : p[0], 'class' : p[1]}); + }); + } else + cl = tinyMCEPopup.editor.dom.getClasses(); + + if (cl.length > 0) { + lst.options.length = 0; + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + + tinymce.each(cl, function(o) { + lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + lst.options.length = 0; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + resetImageData : function() { + var f = document.forms[0]; + + f.elements.width.value = f.elements.height.value = ''; + }, + + updateImageData : function(img, st) { + var f = document.forms[0]; + + if (!st) { + f.elements.width.value = img.width; + f.elements.height.value = img.height; + } + + this.preloadImg = img; + }, + + changeAppearance : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], img = document.getElementById('alignSampleImg'); + + if (img) { + if (ed.getParam('inline_styles')) { + ed.dom.setAttrib(img, 'style', f.style.value); + } else { + img.align = f.align.value; + img.border = f.border.value; + img.hspace = f.hspace.value; + img.vspace = f.vspace.value; + } + } + }, + + changeHeight : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.width.value) / parseInt(t.preloadImg.width)) * t.preloadImg.height; + f.height.value = tp.toFixed(0); + }, + + changeWidth : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.height.value) / parseInt(t.preloadImg.height)) * t.preloadImg.width; + f.width.value = tp.toFixed(0); + }, + + updateStyle : function(ty) { + var dom = tinyMCEPopup.dom, st, v, f = document.forms[0], img = dom.create('img', {style : dom.get('style').value}); + + if (tinyMCEPopup.editor.settings.inline_styles) { + // Handle align + if (ty == 'align') { + dom.setStyle(img, 'float', ''); + dom.setStyle(img, 'vertical-align', ''); + + v = getSelectValue(f, 'align'); + if (v) { + if (v == 'left' || v == 'right') + dom.setStyle(img, 'float', v); + else + img.style.verticalAlign = v; + } + } + + // Handle border + if (ty == 'border') { + dom.setStyle(img, 'border', ''); + + v = f.border.value; + if (v || v == '0') { + if (v == '0') + img.style.border = '0'; + else + img.style.border = v + 'px solid black'; + } + } + + // Handle hspace + if (ty == 'hspace') { + dom.setStyle(img, 'marginLeft', ''); + dom.setStyle(img, 'marginRight', ''); + + v = f.hspace.value; + if (v) { + img.style.marginLeft = v + 'px'; + img.style.marginRight = v + 'px'; + } + } + + // Handle vspace + if (ty == 'vspace') { + dom.setStyle(img, 'marginTop', ''); + dom.setStyle(img, 'marginBottom', ''); + + v = f.vspace.value; + if (v) { + img.style.marginTop = v + 'px'; + img.style.marginBottom = v + 'px'; + } + } + + // Merge + dom.get('style').value = dom.serializeStyle(dom.parseStyle(img.style.cssText), 'img'); + } + }, + + changeMouseMove : function() { + }, + + showPreviewImage : function(u, st) { + if (!u) { + tinyMCEPopup.dom.setHTML('prev', ''); + return; + } + + if (!st && tinyMCEPopup.getParam("advimage_update_dimensions_onchange", true)) + this.resetImageData(); + + u = tinyMCEPopup.editor.documentBaseURI.toAbsolute(u); + + if (!st) + tinyMCEPopup.dom.setHTML('prev', ''); + else + tinyMCEPopup.dom.setHTML('prev', ''); + } +}; + +ImageDialog.preInit(); +tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/all-wcprops new file mode 100644 index 0000000..4c9d2e4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/entries new file mode 100644 index 0000000..f0d61ca --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage/langs +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:45.595615Z +11192eee56b945762dd843279ba34b81 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1244 + +de_dlg.js +file + + + + +2010-06-04T12:51:45.598949Z +0af562fa4915e30d1f3733fc3d86b2c9 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1303 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/de_dlg.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/de_dlg.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/en_dlg.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/prop-base/en_dlg.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..5478386 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,43 @@ +tinyMCE.addI18n('de.advimage_dlg',{ +tab_general:"Allgemein", +tab_appearance:"Aussehen", +tab_advanced:"Erweitert", +general:"Allgemein", +title:"Titel", +preview:"Vorschau", +constrain_proportions:"Ausma\u00DFe", +langdir:"Schriftrichtung", +langcode:"Sprachcode", +long_desc:"Ausf\u00FChrliche Beschreibung", +style:"Format", +classes:"Klassen", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +id:"ID", +map:"Image-Map", +swap_image:"Bild austauschen", +alt_image:"Alternatives Bild", +mouseover:"bei Mauskontakt", +mouseout:"bei keinem Mauskontakt", +misc:"Verschiedenes", +example_img:"Aussehen der Vorschau", +missing_alt:"Wollen Sie wirklich keine Beschreibung eingeben? Bestimmte Benutzer mit k\u00F6rperlichen Einschr\u00E4nkungen k\u00F6nnen so nicht darauf zugrifen, ebenso solche, die einen Textbrowser benutzen oder die Anzeige von Bildern deaktiviert haben.", +dialog_title:"Bild einf\u00FCgen/bearbeiten", +src:"Adresse", +alt:"Beschreibung", +list:"Bilderliste", +border:"Rahmen", +dimensions:"Ausma\u00DFe", +vspace:"Vertikaler Abstand", +hspace:"Horizontaler Abstand", +align:"Ausrichtung", +align_baseline:"Zeile", +align_top:"Oben", +align_middle:"Mittig", +align_bottom:"Unten", +align_texttop:"Oben im Text", +align_textbottom:"Unten im Text", +align_left:"Links", +align_right:"Rechts", +image_list:"Bilderliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..ef81f78 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,43 @@ +tinyMCE.addI18n('en.advimage_dlg',{ +tab_general:"General", +tab_appearance:"Appearance", +tab_advanced:"Advanced", +general:"General", +title:"Title", +preview:"Preview", +constrain_proportions:"Constrain proportions", +langdir:"Language direction", +langcode:"Language code", +long_desc:"Long description link", +style:"Style", +classes:"Classes", +ltr:"Left to right", +rtl:"Right to left", +id:"Id", +map:"Image map", +swap_image:"Swap image", +alt_image:"Alternative image", +mouseover:"for mouse over", +mouseout:"for mouse out", +misc:"Miscellaneous", +example_img:"Appearance preview image", +missing_alt:"Are you sure you want to continue without including an Image Description? Without it the image may not be accessible to some users with disabilities, or to those using a text browser, or browsing the Web with images turned off.", +dialog_title:"Insert/edit image", +src:"Image URL", +alt:"Image description", +list:"Image list", +border:"Border", +dimensions:"Dimensions", +vspace:"Vertical space", +hspace:"Horizontal space", +align:"Alignment", +align_baseline:"Baseline", +align_top:"Top", +align_middle:"Middle", +align_bottom:"Bottom", +align_texttop:"Text top", +align_textbottom:"Text bottom", +align_left:"Left", +align_right:"Right", +image_list:"Image list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/de_dlg.js new file mode 100755 index 0000000..5478386 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/de_dlg.js @@ -0,0 +1,43 @@ +tinyMCE.addI18n('de.advimage_dlg',{ +tab_general:"Allgemein", +tab_appearance:"Aussehen", +tab_advanced:"Erweitert", +general:"Allgemein", +title:"Titel", +preview:"Vorschau", +constrain_proportions:"Ausma\u00DFe", +langdir:"Schriftrichtung", +langcode:"Sprachcode", +long_desc:"Ausf\u00FChrliche Beschreibung", +style:"Format", +classes:"Klassen", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +id:"ID", +map:"Image-Map", +swap_image:"Bild austauschen", +alt_image:"Alternatives Bild", +mouseover:"bei Mauskontakt", +mouseout:"bei keinem Mauskontakt", +misc:"Verschiedenes", +example_img:"Aussehen der Vorschau", +missing_alt:"Wollen Sie wirklich keine Beschreibung eingeben? Bestimmte Benutzer mit k\u00F6rperlichen Einschr\u00E4nkungen k\u00F6nnen so nicht darauf zugrifen, ebenso solche, die einen Textbrowser benutzen oder die Anzeige von Bildern deaktiviert haben.", +dialog_title:"Bild einf\u00FCgen/bearbeiten", +src:"Adresse", +alt:"Beschreibung", +list:"Bilderliste", +border:"Rahmen", +dimensions:"Ausma\u00DFe", +vspace:"Vertikaler Abstand", +hspace:"Horizontaler Abstand", +align:"Ausrichtung", +align_baseline:"Zeile", +align_top:"Oben", +align_middle:"Mittig", +align_bottom:"Unten", +align_texttop:"Oben im Text", +align_textbottom:"Unten im Text", +align_left:"Links", +align_right:"Rechts", +image_list:"Bilderliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js new file mode 100755 index 0000000..ef81f78 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js @@ -0,0 +1,43 @@ +tinyMCE.addI18n('en.advimage_dlg',{ +tab_general:"General", +tab_appearance:"Appearance", +tab_advanced:"Advanced", +general:"General", +title:"Title", +preview:"Preview", +constrain_proportions:"Constrain proportions", +langdir:"Language direction", +langcode:"Language code", +long_desc:"Long description link", +style:"Style", +classes:"Classes", +ltr:"Left to right", +rtl:"Right to left", +id:"Id", +map:"Image map", +swap_image:"Swap image", +alt_image:"Alternative image", +mouseover:"for mouse over", +mouseout:"for mouse out", +misc:"Miscellaneous", +example_img:"Appearance preview image", +missing_alt:"Are you sure you want to continue without including an Image Description? Without it the image may not be accessible to some users with disabilities, or to those using a text browser, or browsing the Web with images turned off.", +dialog_title:"Insert/edit image", +src:"Image URL", +alt:"Image description", +list:"Image list", +border:"Border", +dimensions:"Dimensions", +vspace:"Vertical space", +hspace:"Horizontal space", +align:"Alignment", +align_baseline:"Baseline", +align_top:"Top", +align_middle:"Middle", +align_bottom:"Bottom", +align_texttop:"Text top", +align_textbottom:"Text bottom", +align_left:"Left", +align_right:"Right", +image_list:"Image list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/all-wcprops new file mode 100644 index 0000000..83cbe39 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js +END +image.htm +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/entries new file mode 100644 index 0000000..6f4d6b2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/entries @@ -0,0 +1,142 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:35:55.822899Z +1018 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.238949Z +6634dc710b837855baff6d4d3a4f290e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +788 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.238949Z +5134485db327459f7b10de273b50a5e8 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1387 + +css +dir + +image.htm +file + + + + +2010-06-04T12:51:46.238949Z +6317ffa9f6c8c5e9b154c0afdafafd43 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +11351 + +img +dir + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..4c7a9c3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AdvancedImagePlugin",{init:function(a,b){a.addCommand("mceAdvImage",function(){if(a.dom.getAttrib(a.selection.getNode(),"class").indexOf("mceItem")!=-1){return}a.windowManager.open({file:b+"/image.htm",width:480+parseInt(a.getLang("advimage.delta_width",0)),height:385+parseInt(a.getLang("advimage.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("image",{title:"advimage.image_desc",cmd:"mceAdvImage"})},getInfo:function(){return{longname:"Advanced image",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advimage",tinymce.plugins.AdvancedImagePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..2625dd2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,50 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedImagePlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceAdvImage', function() { + // Internal image object like a flash placeholder + if (ed.dom.getAttrib(ed.selection.getNode(), 'class').indexOf('mceItem') != -1) + return; + + ed.windowManager.open({ + file : url + '/image.htm', + width : 480 + parseInt(ed.getLang('advimage.delta_width', 0)), + height : 385 + parseInt(ed.getLang('advimage.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('image', { + title : 'advimage.image_desc', + cmd : 'mceAdvImage' + }); + }, + + getInfo : function() { + return { + longname : 'Advanced image', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advimage', tinymce.plugins.AdvancedImagePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/image.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/image.htm.svn-base new file mode 100644 index 0000000..79cff3f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/.svn/text-base/image.htm.svn-base @@ -0,0 +1,232 @@ + + + + {#advimage_dlg.dialog_title} + + + + + + + + + +
+ + +
+
+
+ {#advimage_dlg.general} + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+
+ +
+ {#advimage_dlg.preview} + +
+
+ +
+
+ {#advimage_dlg.tab_appearance} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ {#advimage_dlg.example_img} + Lorem ipsum, Dolor sit amet, consectetuer adipiscing loreum ipsum edipiscing elit, sed diam + nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.Loreum ipsum + edipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam + erat volutpat. +
+
+ x + px +
  + + + + +
+
+
+
+ +
+
+ {#advimage_dlg.swap_image} + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ + + + +
 
+
+ +
+ {#advimage_dlg.misc} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + + + +
 
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/all-wcprops new file mode 100644 index 0000000..e1b956b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css +END +advimage.css +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/entries new file mode 100644 index 0000000..581e6f6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +advimage.css +file + + + + +2010-06-04T12:51:46.222281Z +1ccd374d5f1e89cc16e1649558a9bb33 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +672 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/text-base/advimage.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/text-base/advimage.css.svn-base new file mode 100644 index 0000000..0a6251a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/.svn/text-base/advimage.css.svn-base @@ -0,0 +1,13 @@ +#src_list, #over_list, #out_list {width:280px;} +.mceActionPanel {margin-top:7px;} +.alignPreview {border:1px solid #000; width:140px; height:140px; overflow:hidden; padding:5px;} +.checkbox {border:0;} +.panel_wrapper div.current {height:305px;} +#prev {margin:0; border:1px solid #000; width:428px; height:150px; overflow:auto;} +#align, #classlist {width:150px;} +#width, #height {vertical-align:middle; width:50px; text-align:center;} +#vspace, #hspace, #border {vertical-align:middle; width:30px; text-align:center;} +#class_list {width:180px;} +input {width: 280px;} +#constrain, #onmousemovecheck {width:auto;} +#id, #dir, #lang, #usemap, #longdesc {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css new file mode 100644 index 0000000..0a6251a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css @@ -0,0 +1,13 @@ +#src_list, #over_list, #out_list {width:280px;} +.mceActionPanel {margin-top:7px;} +.alignPreview {border:1px solid #000; width:140px; height:140px; overflow:hidden; padding:5px;} +.checkbox {border:0;} +.panel_wrapper div.current {height:305px;} +#prev {margin:0; border:1px solid #000; width:428px; height:150px; overflow:auto;} +#align, #classlist {width:150px;} +#width, #height {vertical-align:middle; width:50px; text-align:center;} +#vspace, #hspace, #border {vertical-align:middle; width:30px; text-align:center;} +#class_list {width:180px;} +input {width: 280px;} +#constrain, #onmousemovecheck {width:auto;} +#id, #dir, #lang, #usemap, #longdesc {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js new file mode 100644 index 0000000..4c7a9c3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AdvancedImagePlugin",{init:function(a,b){a.addCommand("mceAdvImage",function(){if(a.dom.getAttrib(a.selection.getNode(),"class").indexOf("mceItem")!=-1){return}a.windowManager.open({file:b+"/image.htm",width:480+parseInt(a.getLang("advimage.delta_width",0)),height:385+parseInt(a.getLang("advimage.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("image",{title:"advimage.image_desc",cmd:"mceAdvImage"})},getInfo:function(){return{longname:"Advanced image",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advimage",tinymce.plugins.AdvancedImagePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js new file mode 100644 index 0000000..2625dd2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js @@ -0,0 +1,50 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedImagePlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceAdvImage', function() { + // Internal image object like a flash placeholder + if (ed.dom.getAttrib(ed.selection.getNode(), 'class').indexOf('mceItem') != -1) + return; + + ed.windowManager.open({ + file : url + '/image.htm', + width : 480 + parseInt(ed.getLang('advimage.delta_width', 0)), + height : 385 + parseInt(ed.getLang('advimage.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('image', { + title : 'advimage.image_desc', + cmd : 'mceAdvImage' + }); + }, + + getInfo : function() { + return { + longname : 'Advanced image', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advimage', tinymce.plugins.AdvancedImagePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm new file mode 100644 index 0000000..79cff3f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm @@ -0,0 +1,232 @@ + + + + {#advimage_dlg.dialog_title} + + + + + + + + + +
+ + +
+
+
+ {#advimage_dlg.general} + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+
+ +
+ {#advimage_dlg.preview} + +
+
+ +
+
+ {#advimage_dlg.tab_appearance} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ {#advimage_dlg.example_img} + Lorem ipsum, Dolor sit amet, consectetuer adipiscing loreum ipsum edipiscing elit, sed diam + nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.Loreum ipsum + edipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam + erat volutpat. +
+
+ x + px +
  + + + + +
+
+
+
+ +
+
+ {#advimage_dlg.swap_image} + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ + + + +
 
+
+ +
+ {#advimage_dlg.misc} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + + + +
 
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/all-wcprops new file mode 100644 index 0000000..99e1cb3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img +END +sample.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/sample.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/entries new file mode 100644 index 0000000..a17d533 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +sample.gif +file + + + + +2010-06-04T12:51:46.232281Z +b9c7057c46716340e8967340ad11766e +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +1624 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/prop-base/sample.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/prop-base/sample.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/prop-base/sample.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/text-base/sample.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/.svn/text-base/sample.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..53bf6890b507741c10910c9e2217ad8247b98e8d GIT binary patch literal 1624 zcmV-e2B-N)Nk%w1VJ!eH0OkMy|NsB}{r&v>{Q3F$`1ttq^YifV@ayaA>FMd_=H}w! z;^5%m-rnBb-QC>W+}qpR+S=OL+1c3G*w@$B*4Eb4)YQ|{)zHw=&d$%x&CScp%gV~i z$;rvc$jHXV#>B+L!^6YE!otD9!N9=4zrVk|y}i7=yt})*y1Kf#xw*Hux3;#nwY9ah zw6wFcv$C?Xv9YnRu&}SMudc4Ht*x!BtgNf6tE#H1si~={sjjD|r>3T+rKP2$q@<&x zqobp!qN1Xqp`oFnrJ$goprE6lpP!zdp`MSWoSd7Ro12@UnwpxLnw^=MnV6WE zmzS58mX?*3mz9;3mX?*2l$4W`lai8@l9G~eg|M^H&l zLpBo?51@vfgB2q_TVh*dNP<;cR$Wg!vYsMHR!qvvOis>GNH`+ zJ3B|tqgANiBSy@x>Q#;x7+DuU7&rwlf#S04)VZvA$XoUy8Y&f7)SqP<}Lw@L# zA(@Cohl`6CZyedUu^BlmK|DG5$Kl2f8z@uCc)^k-3m7$G!njf7$;XhOW>^`rV#UFh zEN#eG;bP?tCs>{+)q)ceg9$aDAaTZ{MGK5rU8ty$qz8){MT#gHGX{#XEJHLonBXFa zj+#9GE&^pq!`qG`K5iiC!gq}sRY|1yD8?j++_^oR0g+)NNtZN`)08!0q=}AA4HhIo zFaa9NYu8%97=oos5f?O`lwre~4VfoIei+FyK|urxj@C(-q(sS(!$5uL3j&jg7&XY% zlr17;3GGL;2K8>CB87G97;W(2VZ((D+3Hz;L;bylfhf(kFNV8at)h;hdM z85WX(#*Hq@@BYePt3t_l{ zCL3|YVWydA0Fz{rTl65n00)c^)^-jJn1c zRVXtA6mkUMEDLU|v7{JK&_IJ2ciiCy7BOT1fdUBh8b=yrbYaCAchCU_7?H`b1`}4q zLB|_mI2!;7W4QCq6F1O+MW||6AwmKafUrReUA&QotxQZI8D$G)AuSVV@X<&A9v;~H zKnWjo&;bljq=29aCeV-t5GBYkL=Q}q(S~FLd2t39MyRmC%_GFHkPc7CfIt8P*emqV z0YK2j9A+kmW^!tn(ZmG+L=6DZR99W}8p9?Utr=#t@rE2=zxf3QQ(JBJ&<{Z2>8EUP zeX1B)2w_3gXV)D-0Tt+=#@cV-0f!PU#MglZ3m6b}0e08zK^x;9(u?Tga{%?&nNTXhcEuM_#J>yL>p*a zuZJ2pliCGSp!Ye8>YFq@)ZOW-uT~OrjFQK!)UyVGFt7ni{Q3F$`1ttq^YifV@ayaA>FMd_=H}w! z;^5%m-rnBb-QC>W+}qpR+S=OL+1c3G*w@$B*4Eb4)YQ|{)zHw=&d$%x&CScp%gV~i z$;rvc$jHXV#>B+L!^6YE!otD9!N9=4zrVk|y}i7=yt})*y1Kf#xw*Hux3;#nwY9ah zw6wFcv$C?Xv9YnRu&}SMudc4Ht*x!BtgNf6tE#H1si~={sjjD|r>3T+rKP2$q@<&x zqobp!qN1Xqp`oFnrJ$goprE6lpP!zdp`MSWoSd7Ro12@UnwpxLnw^=MnV6WE zmzS58mX?*3mz9;3mX?*2l$4W`lai8@l9G~eg|M^H&l zLpBo?51@vfgB2q_TVh*dNP<;cR$Wg!vYsMHR!qvvOis>GNH`+ zJ3B|tqgANiBSy@x>Q#;x7+DuU7&rwlf#S04)VZvA$XoUy8Y&f7)SqP<}Lw@L# zA(@Cohl`6CZyedUu^BlmK|DG5$Kl2f8z@uCc)^k-3m7$G!njf7$;XhOW>^`rV#UFh zEN#eG;bP?tCs>{+)q)ceg9$aDAaTZ{MGK5rU8ty$qz8){MT#gHGX{#XEJHLonBXFa zj+#9GE&^pq!`qG`K5iiC!gq}sRY|1yD8?j++_^oR0g+)NNtZN`)08!0q=}AA4HhIo zFaa9NYu8%97=oos5f?O`lwre~4VfoIei+FyK|urxj@C(-q(sS(!$5uL3j&jg7&XY% zlr17;3GGL;2K8>CB87G97;W(2VZ((D+3Hz;L;bylfhf(kFNV8at)h;hdM z85WX(#*Hq@@BYePt3t_l{ zCL3|YVWydA0Fz{rTl65n00)c^)^-jJn1c zRVXtA6mkUMEDLU|v7{JK&_IJ2ciiCy7BOT1fdUBh8b=yrbYaCAchCU_7?H`b1`}4q zLB|_mI2!;7W4QCq6F1O+MW||6AwmKafUrReUA&QotxQZI8D$G)AuSVV@X<&A9v;~H zKnWjo&;bljq=29aCeV-t5GBYkL=Q}q(S~FLd2t39MyRmC%_GFHkPc7CfIt8P*emqV z0YK2j9A+kmW^!tn(ZmG+L=6DZR99W}8p9?Utr=#t@rE2=zxf3QQ(JBJ&<{Z2>8EUP zeX1B)2w_3gXV)D-0Tt+=#@cV-0f!PU#MglZ3m6b}0e08zK^x;9(u?Tga{%?&nNTXhcEuM_#J>yL>p*a zuZJ2pliCGSp!Ye8>YFq@)ZOW-uT~OrjFQK!)UyVGFt7ni'); + }, + + init : function(ed) { + var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, dom = ed.dom, n = ed.selection.getNode(); + + tinyMCEPopup.resizeToInnerSize(); + this.fillClassList('class_list'); + this.fillFileList('src_list', 'tinyMCEImageList'); + this.fillFileList('over_list', 'tinyMCEImageList'); + this.fillFileList('out_list', 'tinyMCEImageList'); + TinyMCE_EditableSelects.init(); + + if (n.nodeName == 'IMG') { + nl.src.value = dom.getAttrib(n, 'src'); + nl.width.value = dom.getAttrib(n, 'width'); + nl.height.value = dom.getAttrib(n, 'height'); + nl.alt.value = dom.getAttrib(n, 'alt'); + nl.title.value = dom.getAttrib(n, 'title'); + nl.vspace.value = this.getAttrib(n, 'vspace'); + nl.hspace.value = this.getAttrib(n, 'hspace'); + nl.border.value = this.getAttrib(n, 'border'); + selectByValue(f, 'align', this.getAttrib(n, 'align')); + selectByValue(f, 'class_list', dom.getAttrib(n, 'class'), true, true); + nl.style.value = dom.getAttrib(n, 'style'); + nl.id.value = dom.getAttrib(n, 'id'); + nl.dir.value = dom.getAttrib(n, 'dir'); + nl.lang.value = dom.getAttrib(n, 'lang'); + nl.usemap.value = dom.getAttrib(n, 'usemap'); + nl.longdesc.value = dom.getAttrib(n, 'longdesc'); + nl.insert.value = ed.getLang('update'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseover'))) + nl.onmouseoversrc.value = dom.getAttrib(n, 'onmouseover').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseout'))) + nl.onmouseoutsrc.value = dom.getAttrib(n, 'onmouseout').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (ed.settings.inline_styles) { + // Move attribs to styles + if (dom.getAttrib(n, 'align')) + this.updateStyle('align'); + + if (dom.getAttrib(n, 'hspace')) + this.updateStyle('hspace'); + + if (dom.getAttrib(n, 'border')) + this.updateStyle('border'); + + if (dom.getAttrib(n, 'vspace')) + this.updateStyle('vspace'); + } + } + + // Setup browse button + document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image'); + if (isVisible('srcbrowser')) + document.getElementById('src').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoversrccontainer').innerHTML = getBrowserHTML('overbrowser','onmouseoversrc','image','theme_advanced_image'); + if (isVisible('overbrowser')) + document.getElementById('onmouseoversrc').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoutsrccontainer').innerHTML = getBrowserHTML('outbrowser','onmouseoutsrc','image','theme_advanced_image'); + if (isVisible('outbrowser')) + document.getElementById('onmouseoutsrc').style.width = '260px'; + + // If option enabled default contrain proportions to checked + if (ed.getParam("advimage_constrain_proportions", true)) + f.constrain.checked = true; + + // Check swap image if valid data + if (nl.onmouseoversrc.value || nl.onmouseoutsrc.value) + this.setSwapImage(true); + else + this.setSwapImage(false); + + this.changeAppearance(); + this.showPreviewImage(nl.src.value, 1); + }, + + insert : function(file, title) { + var ed = tinyMCEPopup.editor, t = this, f = document.forms[0]; + + if (f.src.value === '') { + if (ed.selection.getNode().nodeName == 'IMG') { + ed.dom.remove(ed.selection.getNode()); + ed.execCommand('mceRepaint'); + } + + tinyMCEPopup.close(); + return; + } + + if (tinyMCEPopup.getParam("accessibility_warnings", 1)) { + if (!f.alt.value) { + tinyMCEPopup.confirm(tinyMCEPopup.getLang('advimage_dlg.missing_alt'), function(s) { + if (s) + t.insertAndClose(); + }); + + return; + } + } + + t.insertAndClose(); + }, + + insertAndClose : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], nl = f.elements, v, args = {}, el; + + tinyMCEPopup.restoreSelection(); + + // Fixes crash in Safari + if (tinymce.isWebKit) + ed.getWin().focus(); + + if (!ed.settings.inline_styles) { + args = { + vspace : nl.vspace.value, + hspace : nl.hspace.value, + border : nl.border.value, + align : getSelectValue(f, 'align') + }; + } else { + // Remove deprecated values + args = { + vspace : '', + hspace : '', + border : '', + align : '' + }; + } + + tinymce.extend(args, { + src : nl.src.value, + width : nl.width.value, + height : nl.height.value, + alt : nl.alt.value, + title : nl.title.value, + 'class' : getSelectValue(f, 'class_list'), + style : nl.style.value, + id : nl.id.value, + dir : nl.dir.value, + lang : nl.lang.value, + usemap : nl.usemap.value, + longdesc : nl.longdesc.value + }); + + args.onmouseover = args.onmouseout = ''; + + if (f.onmousemovecheck.checked) { + if (nl.onmouseoversrc.value) + args.onmouseover = "this.src='" + nl.onmouseoversrc.value + "';"; + + if (nl.onmouseoutsrc.value) + args.onmouseout = "this.src='" + nl.onmouseoutsrc.value + "';"; + } + + el = ed.selection.getNode(); + + if (el && el.nodeName == 'IMG') { + ed.dom.setAttribs(el, args); + } else { + ed.execCommand('mceInsertContent', false, '', {skip_undo : 1}); + ed.dom.setAttribs('__mce_tmp', args); + ed.dom.setAttrib('__mce_tmp', 'id', ''); + ed.undoManager.add(); + } + + tinyMCEPopup.close(); + }, + + getAttrib : function(e, at) { + var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2; + + if (ed.settings.inline_styles) { + switch (at) { + case 'align': + if (v = dom.getStyle(e, 'float')) + return v; + + if (v = dom.getStyle(e, 'vertical-align')) + return v; + + break; + + case 'hspace': + v = dom.getStyle(e, 'margin-left') + v2 = dom.getStyle(e, 'margin-right'); + + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'vspace': + v = dom.getStyle(e, 'margin-top') + v2 = dom.getStyle(e, 'margin-bottom'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'border': + v = 0; + + tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) { + sv = dom.getStyle(e, 'border-' + sv + '-width'); + + // False or not the same as prev + if (!sv || (sv != v && v !== 0)) { + v = 0; + return false; + } + + if (sv) + v = sv; + }); + + if (v) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + } + } + + if (v = dom.getAttrib(e, at)) + return v; + + return ''; + }, + + setSwapImage : function(st) { + var f = document.forms[0]; + + f.onmousemovecheck.checked = st; + setBrowserDisabled('overbrowser', !st); + setBrowserDisabled('outbrowser', !st); + + if (f.over_list) + f.over_list.disabled = !st; + + if (f.out_list) + f.out_list.disabled = !st; + + f.onmouseoversrc.disabled = !st; + f.onmouseoutsrc.disabled = !st; + }, + + fillClassList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + if (v = tinyMCEPopup.getParam('theme_advanced_styles')) { + cl = []; + + tinymce.each(v.split(';'), function(v) { + var p = v.split('='); + + cl.push({'title' : p[0], 'class' : p[1]}); + }); + } else + cl = tinyMCEPopup.editor.dom.getClasses(); + + if (cl.length > 0) { + lst.options.length = 0; + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + + tinymce.each(cl, function(o) { + lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + lst.options.length = 0; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + resetImageData : function() { + var f = document.forms[0]; + + f.elements.width.value = f.elements.height.value = ''; + }, + + updateImageData : function(img, st) { + var f = document.forms[0]; + + if (!st) { + f.elements.width.value = img.width; + f.elements.height.value = img.height; + } + + this.preloadImg = img; + }, + + changeAppearance : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], img = document.getElementById('alignSampleImg'); + + if (img) { + if (ed.getParam('inline_styles')) { + ed.dom.setAttrib(img, 'style', f.style.value); + } else { + img.align = f.align.value; + img.border = f.border.value; + img.hspace = f.hspace.value; + img.vspace = f.vspace.value; + } + } + }, + + changeHeight : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.width.value) / parseInt(t.preloadImg.width)) * t.preloadImg.height; + f.height.value = tp.toFixed(0); + }, + + changeWidth : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.height.value) / parseInt(t.preloadImg.height)) * t.preloadImg.width; + f.width.value = tp.toFixed(0); + }, + + updateStyle : function(ty) { + var dom = tinyMCEPopup.dom, st, v, f = document.forms[0], img = dom.create('img', {style : dom.get('style').value}); + + if (tinyMCEPopup.editor.settings.inline_styles) { + // Handle align + if (ty == 'align') { + dom.setStyle(img, 'float', ''); + dom.setStyle(img, 'vertical-align', ''); + + v = getSelectValue(f, 'align'); + if (v) { + if (v == 'left' || v == 'right') + dom.setStyle(img, 'float', v); + else + img.style.verticalAlign = v; + } + } + + // Handle border + if (ty == 'border') { + dom.setStyle(img, 'border', ''); + + v = f.border.value; + if (v || v == '0') { + if (v == '0') + img.style.border = '0'; + else + img.style.border = v + 'px solid black'; + } + } + + // Handle hspace + if (ty == 'hspace') { + dom.setStyle(img, 'marginLeft', ''); + dom.setStyle(img, 'marginRight', ''); + + v = f.hspace.value; + if (v) { + img.style.marginLeft = v + 'px'; + img.style.marginRight = v + 'px'; + } + } + + // Handle vspace + if (ty == 'vspace') { + dom.setStyle(img, 'marginTop', ''); + dom.setStyle(img, 'marginBottom', ''); + + v = f.vspace.value; + if (v) { + img.style.marginTop = v + 'px'; + img.style.marginBottom = v + 'px'; + } + } + + // Merge + dom.get('style').value = dom.serializeStyle(dom.parseStyle(img.style.cssText), 'img'); + } + }, + + changeMouseMove : function() { + }, + + showPreviewImage : function(u, st) { + if (!u) { + tinyMCEPopup.dom.setHTML('prev', ''); + return; + } + + if (!st && tinyMCEPopup.getParam("advimage_update_dimensions_onchange", true)) + this.resetImageData(); + + u = tinyMCEPopup.editor.documentBaseURI.toAbsolute(u); + + if (!st) + tinyMCEPopup.dom.setHTML('prev', ''); + else + tinyMCEPopup.dom.setHTML('prev', ''); + } +}; + +ImageDialog.preInit(); +tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js new file mode 100644 index 0000000..3bda86a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js @@ -0,0 +1,443 @@ +var ImageDialog = { + preInit : function() { + var url; + + tinyMCEPopup.requireLangPack(); + + if (url = tinyMCEPopup.getParam("external_image_list_url")) + document.write(''); + }, + + init : function(ed) { + var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, dom = ed.dom, n = ed.selection.getNode(); + + tinyMCEPopup.resizeToInnerSize(); + this.fillClassList('class_list'); + this.fillFileList('src_list', 'tinyMCEImageList'); + this.fillFileList('over_list', 'tinyMCEImageList'); + this.fillFileList('out_list', 'tinyMCEImageList'); + TinyMCE_EditableSelects.init(); + + if (n.nodeName == 'IMG') { + nl.src.value = dom.getAttrib(n, 'src'); + nl.width.value = dom.getAttrib(n, 'width'); + nl.height.value = dom.getAttrib(n, 'height'); + nl.alt.value = dom.getAttrib(n, 'alt'); + nl.title.value = dom.getAttrib(n, 'title'); + nl.vspace.value = this.getAttrib(n, 'vspace'); + nl.hspace.value = this.getAttrib(n, 'hspace'); + nl.border.value = this.getAttrib(n, 'border'); + selectByValue(f, 'align', this.getAttrib(n, 'align')); + selectByValue(f, 'class_list', dom.getAttrib(n, 'class'), true, true); + nl.style.value = dom.getAttrib(n, 'style'); + nl.id.value = dom.getAttrib(n, 'id'); + nl.dir.value = dom.getAttrib(n, 'dir'); + nl.lang.value = dom.getAttrib(n, 'lang'); + nl.usemap.value = dom.getAttrib(n, 'usemap'); + nl.longdesc.value = dom.getAttrib(n, 'longdesc'); + nl.insert.value = ed.getLang('update'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseover'))) + nl.onmouseoversrc.value = dom.getAttrib(n, 'onmouseover').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/.test(dom.getAttrib(n, 'onmouseout'))) + nl.onmouseoutsrc.value = dom.getAttrib(n, 'onmouseout').replace(/^\s*this.src\s*=\s*\'([^\']+)\';?\s*$/, '$1'); + + if (ed.settings.inline_styles) { + // Move attribs to styles + if (dom.getAttrib(n, 'align')) + this.updateStyle('align'); + + if (dom.getAttrib(n, 'hspace')) + this.updateStyle('hspace'); + + if (dom.getAttrib(n, 'border')) + this.updateStyle('border'); + + if (dom.getAttrib(n, 'vspace')) + this.updateStyle('vspace'); + } + } + + // Setup browse button + document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image'); + if (isVisible('srcbrowser')) + document.getElementById('src').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoversrccontainer').innerHTML = getBrowserHTML('overbrowser','onmouseoversrc','image','theme_advanced_image'); + if (isVisible('overbrowser')) + document.getElementById('onmouseoversrc').style.width = '260px'; + + // Setup browse button + document.getElementById('onmouseoutsrccontainer').innerHTML = getBrowserHTML('outbrowser','onmouseoutsrc','image','theme_advanced_image'); + if (isVisible('outbrowser')) + document.getElementById('onmouseoutsrc').style.width = '260px'; + + // If option enabled default contrain proportions to checked + if (ed.getParam("advimage_constrain_proportions", true)) + f.constrain.checked = true; + + // Check swap image if valid data + if (nl.onmouseoversrc.value || nl.onmouseoutsrc.value) + this.setSwapImage(true); + else + this.setSwapImage(false); + + this.changeAppearance(); + this.showPreviewImage(nl.src.value, 1); + }, + + insert : function(file, title) { + var ed = tinyMCEPopup.editor, t = this, f = document.forms[0]; + + if (f.src.value === '') { + if (ed.selection.getNode().nodeName == 'IMG') { + ed.dom.remove(ed.selection.getNode()); + ed.execCommand('mceRepaint'); + } + + tinyMCEPopup.close(); + return; + } + + if (tinyMCEPopup.getParam("accessibility_warnings", 1)) { + if (!f.alt.value) { + tinyMCEPopup.confirm(tinyMCEPopup.getLang('advimage_dlg.missing_alt'), function(s) { + if (s) + t.insertAndClose(); + }); + + return; + } + } + + t.insertAndClose(); + }, + + insertAndClose : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], nl = f.elements, v, args = {}, el; + + tinyMCEPopup.restoreSelection(); + + // Fixes crash in Safari + if (tinymce.isWebKit) + ed.getWin().focus(); + + if (!ed.settings.inline_styles) { + args = { + vspace : nl.vspace.value, + hspace : nl.hspace.value, + border : nl.border.value, + align : getSelectValue(f, 'align') + }; + } else { + // Remove deprecated values + args = { + vspace : '', + hspace : '', + border : '', + align : '' + }; + } + + tinymce.extend(args, { + src : nl.src.value, + width : nl.width.value, + height : nl.height.value, + alt : nl.alt.value, + title : nl.title.value, + 'class' : getSelectValue(f, 'class_list'), + style : nl.style.value, + id : nl.id.value, + dir : nl.dir.value, + lang : nl.lang.value, + usemap : nl.usemap.value, + longdesc : nl.longdesc.value + }); + + args.onmouseover = args.onmouseout = ''; + + if (f.onmousemovecheck.checked) { + if (nl.onmouseoversrc.value) + args.onmouseover = "this.src='" + nl.onmouseoversrc.value + "';"; + + if (nl.onmouseoutsrc.value) + args.onmouseout = "this.src='" + nl.onmouseoutsrc.value + "';"; + } + + el = ed.selection.getNode(); + + if (el && el.nodeName == 'IMG') { + ed.dom.setAttribs(el, args); + } else { + ed.execCommand('mceInsertContent', false, '', {skip_undo : 1}); + ed.dom.setAttribs('__mce_tmp', args); + ed.dom.setAttrib('__mce_tmp', 'id', ''); + ed.undoManager.add(); + } + + tinyMCEPopup.close(); + }, + + getAttrib : function(e, at) { + var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2; + + if (ed.settings.inline_styles) { + switch (at) { + case 'align': + if (v = dom.getStyle(e, 'float')) + return v; + + if (v = dom.getStyle(e, 'vertical-align')) + return v; + + break; + + case 'hspace': + v = dom.getStyle(e, 'margin-left') + v2 = dom.getStyle(e, 'margin-right'); + + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'vspace': + v = dom.getStyle(e, 'margin-top') + v2 = dom.getStyle(e, 'margin-bottom'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'border': + v = 0; + + tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) { + sv = dom.getStyle(e, 'border-' + sv + '-width'); + + // False or not the same as prev + if (!sv || (sv != v && v !== 0)) { + v = 0; + return false; + } + + if (sv) + v = sv; + }); + + if (v) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + } + } + + if (v = dom.getAttrib(e, at)) + return v; + + return ''; + }, + + setSwapImage : function(st) { + var f = document.forms[0]; + + f.onmousemovecheck.checked = st; + setBrowserDisabled('overbrowser', !st); + setBrowserDisabled('outbrowser', !st); + + if (f.over_list) + f.over_list.disabled = !st; + + if (f.out_list) + f.out_list.disabled = !st; + + f.onmouseoversrc.disabled = !st; + f.onmouseoutsrc.disabled = !st; + }, + + fillClassList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + if (v = tinyMCEPopup.getParam('theme_advanced_styles')) { + cl = []; + + tinymce.each(v.split(';'), function(v) { + var p = v.split('='); + + cl.push({'title' : p[0], 'class' : p[1]}); + }); + } else + cl = tinyMCEPopup.editor.dom.getClasses(); + + if (cl.length > 0) { + lst.options.length = 0; + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + + tinymce.each(cl, function(o) { + lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + lst.options.length = 0; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + resetImageData : function() { + var f = document.forms[0]; + + f.elements.width.value = f.elements.height.value = ''; + }, + + updateImageData : function(img, st) { + var f = document.forms[0]; + + if (!st) { + f.elements.width.value = img.width; + f.elements.height.value = img.height; + } + + this.preloadImg = img; + }, + + changeAppearance : function() { + var ed = tinyMCEPopup.editor, f = document.forms[0], img = document.getElementById('alignSampleImg'); + + if (img) { + if (ed.getParam('inline_styles')) { + ed.dom.setAttrib(img, 'style', f.style.value); + } else { + img.align = f.align.value; + img.border = f.border.value; + img.hspace = f.hspace.value; + img.vspace = f.vspace.value; + } + } + }, + + changeHeight : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.width.value) / parseInt(t.preloadImg.width)) * t.preloadImg.height; + f.height.value = tp.toFixed(0); + }, + + changeWidth : function() { + var f = document.forms[0], tp, t = this; + + if (!f.constrain.checked || !t.preloadImg) { + return; + } + + if (f.width.value == "" || f.height.value == "") + return; + + tp = (parseInt(f.height.value) / parseInt(t.preloadImg.height)) * t.preloadImg.width; + f.width.value = tp.toFixed(0); + }, + + updateStyle : function(ty) { + var dom = tinyMCEPopup.dom, st, v, f = document.forms[0], img = dom.create('img', {style : dom.get('style').value}); + + if (tinyMCEPopup.editor.settings.inline_styles) { + // Handle align + if (ty == 'align') { + dom.setStyle(img, 'float', ''); + dom.setStyle(img, 'vertical-align', ''); + + v = getSelectValue(f, 'align'); + if (v) { + if (v == 'left' || v == 'right') + dom.setStyle(img, 'float', v); + else + img.style.verticalAlign = v; + } + } + + // Handle border + if (ty == 'border') { + dom.setStyle(img, 'border', ''); + + v = f.border.value; + if (v || v == '0') { + if (v == '0') + img.style.border = '0'; + else + img.style.border = v + 'px solid black'; + } + } + + // Handle hspace + if (ty == 'hspace') { + dom.setStyle(img, 'marginLeft', ''); + dom.setStyle(img, 'marginRight', ''); + + v = f.hspace.value; + if (v) { + img.style.marginLeft = v + 'px'; + img.style.marginRight = v + 'px'; + } + } + + // Handle vspace + if (ty == 'vspace') { + dom.setStyle(img, 'marginTop', ''); + dom.setStyle(img, 'marginBottom', ''); + + v = f.vspace.value; + if (v) { + img.style.marginTop = v + 'px'; + img.style.marginBottom = v + 'px'; + } + } + + // Merge + dom.get('style').value = dom.serializeStyle(dom.parseStyle(img.style.cssText), 'img'); + } + }, + + changeMouseMove : function() { + }, + + showPreviewImage : function(u, st) { + if (!u) { + tinyMCEPopup.dom.setHTML('prev', ''); + return; + } + + if (!st && tinyMCEPopup.getParam("advimage_update_dimensions_onchange", true)) + this.resetImageData(); + + u = tinyMCEPopup.editor.documentBaseURI.toAbsolute(u); + + if (!st) + tinyMCEPopup.dom.setHTML('prev', ''); + else + tinyMCEPopup.dom.setHTML('prev', ''); + } +}; + +ImageDialog.preInit(); +tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/all-wcprops new file mode 100644 index 0000000..ef61e41 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js +END +fr_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/fr_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/entries new file mode 100644 index 0000000..ad5fe0c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:46.212281Z +3b21c2c0990c044ed3e06f08504baa71 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1286 + +fr_dlg.js +file + + + + +2010-06-04T12:51:46.212281Z +70898ee737bbd35bcf73bc918808399a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1503 + +de_dlg.js +file + + + + +2010-06-04T12:51:46.212281Z +4182beaa0379e3b6061ccbdbaa0fa2ad +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1367 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..e704596 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,43 @@ +tinyMCE.addI18n('de.advimage_dlg',{ +tab_general:"Allgemein", +tab_appearance:"Aussehen", +tab_advanced:"Erweitert", +general:"Allgemein", +title:"Titel", +preview:"Vorschau", +constrain_proportions:"Seitenverh\u00E4ltnis beibehalten", +langdir:"Schriftrichtung", +langcode:"Sprachcode", +long_desc:"Ausf\u00FChrliche Beschreibung", +style:"Format", +classes:"Klassen", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +id:"ID", +map:"Image-Map", +swap_image:"Bild austauschen", +alt_image:"Alternatives Bild", +mouseover:"bei Mauskontakt", +mouseout:"bei keinem Mauskontakt", +misc:"Verschiedenes", +example_img:"Aussehen der Vorschau", +missing_alt:"Wollen Sie wirklich keine Beschreibung eingeben? Bestimmte Benutzer mit k\u00F6rperlichen Einschr\u00E4nkungen k\u00F6nnen so nicht darauf zugreifen, ebenso solche, die einen Textbrowser benutzen oder die Anzeige von Bildern deaktiviert haben.", +dialog_title:"Bild einf\u00FCgen/bearbeiten", +src:"Adresse", +alt:"Beschreibung", +list:"Bilderliste", +border:"Rahmen", +dimensions:"Ausma\u00DFe", +vspace:"Vertikaler Abstand", +hspace:"Horizontaler Abstand", +align:"Ausrichtung", +align_baseline:"Zeile", +align_top:"Oben", +align_middle:"Mittig", +align_bottom:"Unten", +align_texttop:"Oben im Text", +align_textbottom:"Unten im Text", +align_left:"Links", +align_right:"Rechts", +image_list:"Bilderliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..f493d19 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,43 @@ +tinyMCE.addI18n('en.advimage_dlg',{ +tab_general:"General", +tab_appearance:"Appearance", +tab_advanced:"Advanced", +general:"General", +title:"Title", +preview:"Preview", +constrain_proportions:"Constrain proportions", +langdir:"Language direction", +langcode:"Language code", +long_desc:"Long description link", +style:"Style", +classes:"Classes", +ltr:"Left to right", +rtl:"Right to left", +id:"Id", +map:"Image map", +swap_image:"Swap image", +alt_image:"Alternative image", +mouseover:"for mouse over", +mouseout:"for mouse out", +misc:"Miscellaneous", +example_img:"Appearance preview image", +missing_alt:"Are you sure you want to continue without including an Image Description? Without it the image may not be accessible to some users with disabilities, or to those using a text browser, or browsing the Web with images turned off.", +dialog_title:"Insert/edit image", +src:"Image URL", +alt:"Image description", +list:"Image list", +border:"Border", +dimensions:"Dimensions", +vspace:"Vertical space", +hspace:"Horizontal space", +align:"Alignment", +align_baseline:"Baseline", +align_top:"Top", +align_middle:"Middle", +align_bottom:"Bottom", +align_texttop:"Text top", +align_textbottom:"Text bottom", +align_left:"Left", +align_right:"Right", +image_list:"Image list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/fr_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/fr_dlg.js.svn-base new file mode 100644 index 0000000..caf91c4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/.svn/text-base/fr_dlg.js.svn-base @@ -0,0 +1,43 @@ +tinyMCE.addI18n('fr.advimage_dlg',{ +tab_general:"G\u00E9n\u00E9ral", +tab_appearance:"Apparence", +tab_advanced:"Avanc\u00E9", +general:"G\u00E9n\u00E9ral", +title:"Titre", +preview:"Pr\u00E9visualisation", +constrain_proportions:"Conserver les proportions", +langdir:"Sens de lecture", +langcode:"Code de la langue", +long_desc:"Description longue du lien", +style:"Style", +classes:"Classes", +ltr:"De gauche \u00E0 droite", +rtl:"De droite \u00E0 gauche", +id:"Id", +map:"Image cliquable", +swap_image:"Image de remplacement", +alt_image:"Image alternative", +mouseover:"au survol de la souris", +mouseout:"\u00E0 la sortie de la souris", +misc:"Divers", +example_img:"Apparence de l'image", +missing_alt:"Souhaitez-vous vraiment continuer sans d\u00E9finir de description pour l'image ? Sans elle, l'image peut ne pas \u00EAtre accessible \u00E0 certains utilisateurs handicap\u00E9s, ceux utilisant un navigateur texte ou ceux qui naviguent sans affichage des images.", +dialog_title:"Ins\u00E9rer / \u00E9diter une image", +src:"URL de l'image", +alt:"Description de l'image", +list:"Liste d'images", +border:"Bordure", +dimensions:"Dimensions", +vspace:"Espacement vertical", +hspace:"Espacement horizontal", +align:"Alignement", +align_baseline:"Normal", +align_top:"En haut", +align_middle:"Au milieu", +align_bottom:"En bas", +align_texttop:"Texte en haut", +align_textbottom:"Texte en bas", +align_left:"Gauche (flottant)", +align_right:"Droite (flottant)", +image_list:"Liste d'images" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/de_dlg.js new file mode 100644 index 0000000..e704596 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/de_dlg.js @@ -0,0 +1,43 @@ +tinyMCE.addI18n('de.advimage_dlg',{ +tab_general:"Allgemein", +tab_appearance:"Aussehen", +tab_advanced:"Erweitert", +general:"Allgemein", +title:"Titel", +preview:"Vorschau", +constrain_proportions:"Seitenverh\u00E4ltnis beibehalten", +langdir:"Schriftrichtung", +langcode:"Sprachcode", +long_desc:"Ausf\u00FChrliche Beschreibung", +style:"Format", +classes:"Klassen", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +id:"ID", +map:"Image-Map", +swap_image:"Bild austauschen", +alt_image:"Alternatives Bild", +mouseover:"bei Mauskontakt", +mouseout:"bei keinem Mauskontakt", +misc:"Verschiedenes", +example_img:"Aussehen der Vorschau", +missing_alt:"Wollen Sie wirklich keine Beschreibung eingeben? Bestimmte Benutzer mit k\u00F6rperlichen Einschr\u00E4nkungen k\u00F6nnen so nicht darauf zugreifen, ebenso solche, die einen Textbrowser benutzen oder die Anzeige von Bildern deaktiviert haben.", +dialog_title:"Bild einf\u00FCgen/bearbeiten", +src:"Adresse", +alt:"Beschreibung", +list:"Bilderliste", +border:"Rahmen", +dimensions:"Ausma\u00DFe", +vspace:"Vertikaler Abstand", +hspace:"Horizontaler Abstand", +align:"Ausrichtung", +align_baseline:"Zeile", +align_top:"Oben", +align_middle:"Mittig", +align_bottom:"Unten", +align_texttop:"Oben im Text", +align_textbottom:"Unten im Text", +align_left:"Links", +align_right:"Rechts", +image_list:"Bilderliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js new file mode 100644 index 0000000..f493d19 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js @@ -0,0 +1,43 @@ +tinyMCE.addI18n('en.advimage_dlg',{ +tab_general:"General", +tab_appearance:"Appearance", +tab_advanced:"Advanced", +general:"General", +title:"Title", +preview:"Preview", +constrain_proportions:"Constrain proportions", +langdir:"Language direction", +langcode:"Language code", +long_desc:"Long description link", +style:"Style", +classes:"Classes", +ltr:"Left to right", +rtl:"Right to left", +id:"Id", +map:"Image map", +swap_image:"Swap image", +alt_image:"Alternative image", +mouseover:"for mouse over", +mouseout:"for mouse out", +misc:"Miscellaneous", +example_img:"Appearance preview image", +missing_alt:"Are you sure you want to continue without including an Image Description? Without it the image may not be accessible to some users with disabilities, or to those using a text browser, or browsing the Web with images turned off.", +dialog_title:"Insert/edit image", +src:"Image URL", +alt:"Image description", +list:"Image list", +border:"Border", +dimensions:"Dimensions", +vspace:"Vertical space", +hspace:"Horizontal space", +align:"Alignment", +align_baseline:"Baseline", +align_top:"Top", +align_middle:"Middle", +align_bottom:"Bottom", +align_texttop:"Text top", +align_textbottom:"Text bottom", +align_left:"Left", +align_right:"Right", +image_list:"Image list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/fr_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/fr_dlg.js new file mode 100644 index 0000000..caf91c4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/fr_dlg.js @@ -0,0 +1,43 @@ +tinyMCE.addI18n('fr.advimage_dlg',{ +tab_general:"G\u00E9n\u00E9ral", +tab_appearance:"Apparence", +tab_advanced:"Avanc\u00E9", +general:"G\u00E9n\u00E9ral", +title:"Titre", +preview:"Pr\u00E9visualisation", +constrain_proportions:"Conserver les proportions", +langdir:"Sens de lecture", +langcode:"Code de la langue", +long_desc:"Description longue du lien", +style:"Style", +classes:"Classes", +ltr:"De gauche \u00E0 droite", +rtl:"De droite \u00E0 gauche", +id:"Id", +map:"Image cliquable", +swap_image:"Image de remplacement", +alt_image:"Image alternative", +mouseover:"au survol de la souris", +mouseout:"\u00E0 la sortie de la souris", +misc:"Divers", +example_img:"Apparence de l'image", +missing_alt:"Souhaitez-vous vraiment continuer sans d\u00E9finir de description pour l'image ? Sans elle, l'image peut ne pas \u00EAtre accessible \u00E0 certains utilisateurs handicap\u00E9s, ceux utilisant un navigateur texte ou ceux qui naviguent sans affichage des images.", +dialog_title:"Ins\u00E9rer / \u00E9diter une image", +src:"URL de l'image", +alt:"Description de l'image", +list:"Liste d'images", +border:"Bordure", +dimensions:"Dimensions", +vspace:"Espacement vertical", +hspace:"Espacement horizontal", +align:"Alignement", +align_baseline:"Normal", +align_top:"En haut", +align_middle:"Au milieu", +align_bottom:"En bas", +align_texttop:"Texte en haut", +align_textbottom:"Texte en bas", +align_left:"Gauche (flottant)", +align_right:"Droite (flottant)", +image_list:"Liste d'images" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/all-wcprops new file mode 100644 index 0000000..aba899f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js +END +link.htm +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/entries new file mode 100644 index 0000000..2509f75 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/entries @@ -0,0 +1,139 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink +http://django-grappelli.googlecode.com/svn + + + +2010-05-27T14:09:40.573569Z +1045 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.022281Z +eaa41354ef1c4797d7a5d1e9dbdb3407 +2010-05-27T14:09:40.573569Z +1045 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +1003 + +langs +dir + +link.htm +file + + + + +2010-06-04T12:51:46.025634Z +fc3948ffd0605a91c828ac6a21800f55 +2010-05-27T14:09:40.573569Z +1045 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +20067 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.025634Z +c51e9c80e7988a097cea262433720205 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1530 + +css +dir + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/link.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/link.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/prop-base/link.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..34a38f8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.AdvancedLinkPlugin',{init:function(ed,url){this.editor=ed;ed.addCommand('mceAdvLink',function(){var se=ed.selection;if(se.isCollapsed()&&!ed.dom.getParent(se.getNode(),'A'))return;ed.windowManager.open({file:url+'/link.htm',width:480+parseInt(ed.getLang('advlink.delta_width',0)),height:320+parseInt(ed.getLang('advlink.delta_height',0)),inline:1},{plugin_url:url});});ed.addButton('link',{title:'advlink.link_desc',cmd:'mceAdvLink'});ed.addShortcut('ctrl+k','advlink.advlink_desc','mceAdvLink');ed.onNodeChange.add(function(ed,cm,n,co){cm.setDisabled('link',co&&n.nodeName!='A');cm.setActive('link',n.nodeName=='A'&&!n.name);});},getInfo:function(){return{longname:'Advanced link',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('advlink',tinymce.plugins.AdvancedLinkPlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..7081e72 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,58 @@ +/** + * $Id: editor_plugin_src.js 539 2008-01-14 19:08:58Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedLinkPlugin', { + init : function(ed, url) { + this.editor = ed; + + // Register commands + ed.addCommand('mceAdvLink', function() { + var se = ed.selection; + + // No selection and not in link + if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A')) + return; + + ed.windowManager.open({ + file : url + '/link.htm', + width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)), + height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('link', { + title : 'advlink.link_desc', + cmd : 'mceAdvLink' + }); + + ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink'); + + ed.onNodeChange.add(function(ed, cm, n, co) { + cm.setDisabled('link', co && n.nodeName != 'A'); + cm.setActive('link', n.nodeName == 'A' && !n.name); + }); + }, + + getInfo : function() { + return { + longname : 'Advanced link', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/link.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/link.htm.svn-base new file mode 100644 index 0000000..7b82b44 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/.svn/text-base/link.htm.svn-base @@ -0,0 +1,311 @@ + + + + {#advlink_dlg.title} + + + + + + + + + +
+ + +
+
+
+ {#advlink_dlg.general_props} +
+
+
+ +
 
+
+
+
+
+
 
+
+
+
+
 
+
+
+
+
 
+
+
+
+
+
+
+
+
+ +
+
+
+
+ + + +
+
+ {#advlink_dlg.advanced_props} +
+
+
+
+ + + + + + + + + + + + +
+
+ + +
+
+ {#advlink_dlg.event_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/all-wcprops new file mode 100644 index 0000000..603cc9e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/css +END +advlink.css +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/entries new file mode 100644 index 0000000..990c6e8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/css +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +advlink.css +file + + + + +2010-06-04T12:51:46.015615Z +19558f5e2b7a7d11968aacdc37e6e436 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +472 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/prop-base/advlink.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/prop-base/advlink.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/prop-base/advlink.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/text-base/advlink.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/text-base/advlink.css.svn-base new file mode 100644 index 0000000..66c6549 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/.svn/text-base/advlink.css.svn-base @@ -0,0 +1,8 @@ +.mceLinkList, .mceAnchorList, #targetlist {width:280px;} +.mceActionPanel {margin-top:7px;} +.panel_wrapper div.current {height:320px;} +#classlist, #title, #href {width:280px;} +#popupurl, #popupname {width:200px;} +#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;} +#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;} +#events_panel input {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css new file mode 100755 index 0000000..66c6549 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css @@ -0,0 +1,8 @@ +.mceLinkList, .mceAnchorList, #targetlist {width:280px;} +.mceActionPanel {margin-top:7px;} +.panel_wrapper div.current {height:320px;} +#classlist, #title, #href {width:280px;} +#popupurl, #popupname {width:200px;} +#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;} +#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;} +#events_panel input {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js new file mode 100755 index 0000000..34a38f8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.AdvancedLinkPlugin',{init:function(ed,url){this.editor=ed;ed.addCommand('mceAdvLink',function(){var se=ed.selection;if(se.isCollapsed()&&!ed.dom.getParent(se.getNode(),'A'))return;ed.windowManager.open({file:url+'/link.htm',width:480+parseInt(ed.getLang('advlink.delta_width',0)),height:320+parseInt(ed.getLang('advlink.delta_height',0)),inline:1},{plugin_url:url});});ed.addButton('link',{title:'advlink.link_desc',cmd:'mceAdvLink'});ed.addShortcut('ctrl+k','advlink.advlink_desc','mceAdvLink');ed.onNodeChange.add(function(ed,cm,n,co){cm.setDisabled('link',co&&n.nodeName!='A');cm.setActive('link',n.nodeName=='A'&&!n.name);});},getInfo:function(){return{longname:'Advanced link',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('advlink',tinymce.plugins.AdvancedLinkPlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js new file mode 100755 index 0000000..7081e72 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js @@ -0,0 +1,58 @@ +/** + * $Id: editor_plugin_src.js 539 2008-01-14 19:08:58Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedLinkPlugin', { + init : function(ed, url) { + this.editor = ed; + + // Register commands + ed.addCommand('mceAdvLink', function() { + var se = ed.selection; + + // No selection and not in link + if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A')) + return; + + ed.windowManager.open({ + file : url + '/link.htm', + width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)), + height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('link', { + title : 'advlink.link_desc', + cmd : 'mceAdvLink' + }); + + ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink'); + + ed.onNodeChange.add(function(ed, cm, n, co) { + cm.setDisabled('link', co && n.nodeName != 'A'); + cm.setActive('link', n.nodeName == 'A' && !n.name); + }); + }, + + getInfo : function() { + return { + longname : 'Advanced link', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/all-wcprops new file mode 100644 index 0000000..6e8c601 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 85 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/js +END +advlink.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/entries new file mode 100644 index 0000000..68f65ae --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/js +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +advlink.js +file + + + + +2010-06-04T12:51:46.022281Z +d27775961d02693ef20d36dd8206c95a +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +16648 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/prop-base/advlink.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/prop-base/advlink.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/prop-base/advlink.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/text-base/advlink.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/text-base/advlink.js.svn-base new file mode 100644 index 0000000..c8d1983 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/.svn/text-base/advlink.js.svn-base @@ -0,0 +1,527 @@ +/* Functions for the advlink plugin popup */ + +tinyMCEPopup.requireLangPack(); + +var templates = { + "window.open" : "window.open('${url}','${target}','${options}')" +}; + +function preinit() { + var url; + + if (url = tinyMCEPopup.getParam("external_link_list_url")) + document.write(''); +} + +function changeClass() { + var f = document.forms[0]; + + f.classes.value = getSelectValue(f, 'classlist'); +} + +function init() { + tinyMCEPopup.resizeToInnerSize(); + + var formObj = document.forms[0]; + var inst = tinyMCEPopup.editor; + var elm = inst.selection.getNode(); + var action = "insert"; + var html; + + document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink'); + document.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink'); + document.getElementById('linklisthrefcontainer').innerHTML = getLinkListHTML('linklisthref','href'); + document.getElementById('anchorlistcontainer').innerHTML = getAnchorListHTML('anchorlist','href'); + document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target'); + + // Link list + html = getLinkListHTML('linklisthref','href'); + if (html == "") + document.getElementById("linklisthrefrow").style.display = 'none'; + else + document.getElementById("linklisthrefcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('hrefbrowser')) + document.getElementById('href').style.width = '260px'; + + if (isVisible('popupurlbrowser')) + document.getElementById('popupurl').style.width = '180px'; + + elm = inst.dom.getParent(elm, "A"); + if (elm != null && elm.nodeName == "A") + action = "update"; + + formObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true); + + setPopupControlsDisabled(true); + + if (action == "update") { + var href = inst.dom.getAttrib(elm, 'href'); + var onclick = inst.dom.getAttrib(elm, 'onclick'); + + // Setup form data + setFormValue('href', href); + setFormValue('title', inst.dom.getAttrib(elm, 'title')); + setFormValue('id', inst.dom.getAttrib(elm, 'id')); + setFormValue('style', inst.dom.getAttrib(elm, "style")); + setFormValue('rel', inst.dom.getAttrib(elm, 'rel')); + setFormValue('rev', inst.dom.getAttrib(elm, 'rev')); + setFormValue('charset', inst.dom.getAttrib(elm, 'charset')); + setFormValue('hreflang', inst.dom.getAttrib(elm, 'hreflang')); + setFormValue('dir', inst.dom.getAttrib(elm, 'dir')); + setFormValue('lang', inst.dom.getAttrib(elm, 'lang')); + setFormValue('tabindex', inst.dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : "")); + setFormValue('accesskey', inst.dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : "")); + setFormValue('type', inst.dom.getAttrib(elm, 'type')); + setFormValue('onfocus', inst.dom.getAttrib(elm, 'onfocus')); + setFormValue('onblur', inst.dom.getAttrib(elm, 'onblur')); + setFormValue('onclick', onclick); + setFormValue('ondblclick', inst.dom.getAttrib(elm, 'ondblclick')); + setFormValue('onmousedown', inst.dom.getAttrib(elm, 'onmousedown')); + setFormValue('onmouseup', inst.dom.getAttrib(elm, 'onmouseup')); + setFormValue('onmouseover', inst.dom.getAttrib(elm, 'onmouseover')); + setFormValue('onmousemove', inst.dom.getAttrib(elm, 'onmousemove')); + setFormValue('onmouseout', inst.dom.getAttrib(elm, 'onmouseout')); + setFormValue('onkeypress', inst.dom.getAttrib(elm, 'onkeypress')); + setFormValue('onkeydown', inst.dom.getAttrib(elm, 'onkeydown')); + setFormValue('onkeyup', inst.dom.getAttrib(elm, 'onkeyup')); + setFormValue('target', inst.dom.getAttrib(elm, 'target')); + setFormValue('classes', inst.dom.getAttrib(elm, 'class')); + + // Parse onclick data + if (onclick != null && onclick.indexOf('window.open') != -1) + parseWindowOpen(onclick); + else + parseFunction(onclick); + + // Select by the values + selectByValue(formObj, 'dir', inst.dom.getAttrib(elm, 'dir')); + selectByValue(formObj, 'rel', inst.dom.getAttrib(elm, 'rel')); + selectByValue(formObj, 'rev', inst.dom.getAttrib(elm, 'rev')); + selectByValue(formObj, 'linklisthref', href); + + if (href.charAt(0) == '#') + selectByValue(formObj, 'anchorlist', href); + + addClassesToList('classlist', 'advlink_styles'); + + selectByValue(formObj, 'classlist', inst.dom.getAttrib(elm, 'class'), true); + selectByValue(formObj, 'targetlist', inst.dom.getAttrib(elm, 'target'), true); + } else + addClassesToList('classlist', 'advlink_styles'); +} + +function checkPrefix(n) { + if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_email'))) + n.value = 'mailto:' + n.value; + + if (/^\s*www./i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_external'))) + n.value = 'http://' + n.value; +} + +function setFormValue(name, value) { + document.forms[0].elements[name].value = value; +} + +function parseWindowOpen(onclick) { + var formObj = document.forms[0]; + + // Preprocess center code + if (onclick.indexOf('return false;') != -1) { + formObj.popupreturn.checked = true; + onclick = onclick.replace('return false;', ''); + } else + formObj.popupreturn.checked = false; + + var onClickData = parseLink(onclick); + + if (onClickData != null) { + formObj.ispopup.checked = true; + setPopupControlsDisabled(false); + + var onClickWindowOptions = parseOptions(onClickData['options']); + var url = onClickData['url']; + + formObj.popupname.value = onClickData['target']; + formObj.popupurl.value = url; + formObj.popupwidth.value = getOption(onClickWindowOptions, 'width'); + formObj.popupheight.value = getOption(onClickWindowOptions, 'height'); + + formObj.popupleft.value = getOption(onClickWindowOptions, 'left'); + formObj.popuptop.value = getOption(onClickWindowOptions, 'top'); + + if (formObj.popupleft.value.indexOf('screen') != -1) + formObj.popupleft.value = "c"; + + if (formObj.popuptop.value.indexOf('screen') != -1) + formObj.popuptop.value = "c"; + + formObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == "yes"; + formObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == "yes"; + formObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == "yes"; + formObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == "yes"; + formObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == "yes"; + formObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == "yes"; + formObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == "yes"; + + buildOnClick(); + } +} + +function parseFunction(onclick) { + var formObj = document.forms[0]; + var onClickData = parseLink(onclick); + + // TODO: Add stuff here +} + +function getOption(opts, name) { + return typeof(opts[name]) == "undefined" ? "" : opts[name]; +} + +function setPopupControlsDisabled(state) { + var formObj = document.forms[0]; + + formObj.popupname.disabled = state; + formObj.popupurl.disabled = state; + formObj.popupwidth.disabled = state; + formObj.popupheight.disabled = state; + formObj.popupleft.disabled = state; + formObj.popuptop.disabled = state; + formObj.popuplocation.disabled = state; + formObj.popupscrollbars.disabled = state; + formObj.popupmenubar.disabled = state; + formObj.popupresizable.disabled = state; + formObj.popuptoolbar.disabled = state; + formObj.popupstatus.disabled = state; + formObj.popupreturn.disabled = state; + formObj.popupdependent.disabled = state; + + setBrowserDisabled('popupurlbrowser', state); +} + +function parseLink(link) { + link = link.replace(new RegExp(''', 'g'), "'"); + + var fnName = link.replace(new RegExp("\\s*([A-Za-z0-9\.]*)\\s*\\(.*", "gi"), "$1"); + + // Is function name a template function + var template = templates[fnName]; + if (template) { + // Build regexp + var variableNames = template.match(new RegExp("'?\\$\\{[A-Za-z0-9\.]*\\}'?", "gi")); + var regExp = "\\s*[A-Za-z0-9\.]*\\s*\\("; + var replaceStr = ""; + for (var i=0; i'); + for (var i=0; i'; + html += ''; + + for (i=0; i' + name + ''; + } + + html += ''; + + return html; +} + +function insertAction() { + var inst = tinyMCEPopup.editor; + var elm, elementArray, i; + + elm = inst.selection.getNode(); + checkPrefix(document.forms[0].href); + + elm = inst.dom.getParent(elm, "A"); + + // Remove element if there is no href + if (!document.forms[0].href.value) { + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + i = inst.selection.getBookmark(); + inst.dom.remove(elm, 1); + inst.selection.moveToBookmark(i); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + return; + } + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + + // Create new anchor elements + if (elm == null) { + tinyMCEPopup.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1}); + + elementArray = tinymce.grep(inst.dom.select("a"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';}); + for (i=0; i' + tinyMCELinkList[i][0] + ''; + + html += ''; + + return html; + + // tinyMCE.debug('-- image list start --', html, '-- image list end --'); +} + +function getTargetListHTML(elm_id, target_form_element) { + var targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';'); + var html = ''; + + html += ''; + + return html; +} + +// While loading +preinit(); +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js new file mode 100755 index 0000000..c8d1983 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js @@ -0,0 +1,527 @@ +/* Functions for the advlink plugin popup */ + +tinyMCEPopup.requireLangPack(); + +var templates = { + "window.open" : "window.open('${url}','${target}','${options}')" +}; + +function preinit() { + var url; + + if (url = tinyMCEPopup.getParam("external_link_list_url")) + document.write(''); +} + +function changeClass() { + var f = document.forms[0]; + + f.classes.value = getSelectValue(f, 'classlist'); +} + +function init() { + tinyMCEPopup.resizeToInnerSize(); + + var formObj = document.forms[0]; + var inst = tinyMCEPopup.editor; + var elm = inst.selection.getNode(); + var action = "insert"; + var html; + + document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink'); + document.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink'); + document.getElementById('linklisthrefcontainer').innerHTML = getLinkListHTML('linklisthref','href'); + document.getElementById('anchorlistcontainer').innerHTML = getAnchorListHTML('anchorlist','href'); + document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target'); + + // Link list + html = getLinkListHTML('linklisthref','href'); + if (html == "") + document.getElementById("linklisthrefrow").style.display = 'none'; + else + document.getElementById("linklisthrefcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('hrefbrowser')) + document.getElementById('href').style.width = '260px'; + + if (isVisible('popupurlbrowser')) + document.getElementById('popupurl').style.width = '180px'; + + elm = inst.dom.getParent(elm, "A"); + if (elm != null && elm.nodeName == "A") + action = "update"; + + formObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true); + + setPopupControlsDisabled(true); + + if (action == "update") { + var href = inst.dom.getAttrib(elm, 'href'); + var onclick = inst.dom.getAttrib(elm, 'onclick'); + + // Setup form data + setFormValue('href', href); + setFormValue('title', inst.dom.getAttrib(elm, 'title')); + setFormValue('id', inst.dom.getAttrib(elm, 'id')); + setFormValue('style', inst.dom.getAttrib(elm, "style")); + setFormValue('rel', inst.dom.getAttrib(elm, 'rel')); + setFormValue('rev', inst.dom.getAttrib(elm, 'rev')); + setFormValue('charset', inst.dom.getAttrib(elm, 'charset')); + setFormValue('hreflang', inst.dom.getAttrib(elm, 'hreflang')); + setFormValue('dir', inst.dom.getAttrib(elm, 'dir')); + setFormValue('lang', inst.dom.getAttrib(elm, 'lang')); + setFormValue('tabindex', inst.dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : "")); + setFormValue('accesskey', inst.dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : "")); + setFormValue('type', inst.dom.getAttrib(elm, 'type')); + setFormValue('onfocus', inst.dom.getAttrib(elm, 'onfocus')); + setFormValue('onblur', inst.dom.getAttrib(elm, 'onblur')); + setFormValue('onclick', onclick); + setFormValue('ondblclick', inst.dom.getAttrib(elm, 'ondblclick')); + setFormValue('onmousedown', inst.dom.getAttrib(elm, 'onmousedown')); + setFormValue('onmouseup', inst.dom.getAttrib(elm, 'onmouseup')); + setFormValue('onmouseover', inst.dom.getAttrib(elm, 'onmouseover')); + setFormValue('onmousemove', inst.dom.getAttrib(elm, 'onmousemove')); + setFormValue('onmouseout', inst.dom.getAttrib(elm, 'onmouseout')); + setFormValue('onkeypress', inst.dom.getAttrib(elm, 'onkeypress')); + setFormValue('onkeydown', inst.dom.getAttrib(elm, 'onkeydown')); + setFormValue('onkeyup', inst.dom.getAttrib(elm, 'onkeyup')); + setFormValue('target', inst.dom.getAttrib(elm, 'target')); + setFormValue('classes', inst.dom.getAttrib(elm, 'class')); + + // Parse onclick data + if (onclick != null && onclick.indexOf('window.open') != -1) + parseWindowOpen(onclick); + else + parseFunction(onclick); + + // Select by the values + selectByValue(formObj, 'dir', inst.dom.getAttrib(elm, 'dir')); + selectByValue(formObj, 'rel', inst.dom.getAttrib(elm, 'rel')); + selectByValue(formObj, 'rev', inst.dom.getAttrib(elm, 'rev')); + selectByValue(formObj, 'linklisthref', href); + + if (href.charAt(0) == '#') + selectByValue(formObj, 'anchorlist', href); + + addClassesToList('classlist', 'advlink_styles'); + + selectByValue(formObj, 'classlist', inst.dom.getAttrib(elm, 'class'), true); + selectByValue(formObj, 'targetlist', inst.dom.getAttrib(elm, 'target'), true); + } else + addClassesToList('classlist', 'advlink_styles'); +} + +function checkPrefix(n) { + if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_email'))) + n.value = 'mailto:' + n.value; + + if (/^\s*www./i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_external'))) + n.value = 'http://' + n.value; +} + +function setFormValue(name, value) { + document.forms[0].elements[name].value = value; +} + +function parseWindowOpen(onclick) { + var formObj = document.forms[0]; + + // Preprocess center code + if (onclick.indexOf('return false;') != -1) { + formObj.popupreturn.checked = true; + onclick = onclick.replace('return false;', ''); + } else + formObj.popupreturn.checked = false; + + var onClickData = parseLink(onclick); + + if (onClickData != null) { + formObj.ispopup.checked = true; + setPopupControlsDisabled(false); + + var onClickWindowOptions = parseOptions(onClickData['options']); + var url = onClickData['url']; + + formObj.popupname.value = onClickData['target']; + formObj.popupurl.value = url; + formObj.popupwidth.value = getOption(onClickWindowOptions, 'width'); + formObj.popupheight.value = getOption(onClickWindowOptions, 'height'); + + formObj.popupleft.value = getOption(onClickWindowOptions, 'left'); + formObj.popuptop.value = getOption(onClickWindowOptions, 'top'); + + if (formObj.popupleft.value.indexOf('screen') != -1) + formObj.popupleft.value = "c"; + + if (formObj.popuptop.value.indexOf('screen') != -1) + formObj.popuptop.value = "c"; + + formObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == "yes"; + formObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == "yes"; + formObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == "yes"; + formObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == "yes"; + formObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == "yes"; + formObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == "yes"; + formObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == "yes"; + + buildOnClick(); + } +} + +function parseFunction(onclick) { + var formObj = document.forms[0]; + var onClickData = parseLink(onclick); + + // TODO: Add stuff here +} + +function getOption(opts, name) { + return typeof(opts[name]) == "undefined" ? "" : opts[name]; +} + +function setPopupControlsDisabled(state) { + var formObj = document.forms[0]; + + formObj.popupname.disabled = state; + formObj.popupurl.disabled = state; + formObj.popupwidth.disabled = state; + formObj.popupheight.disabled = state; + formObj.popupleft.disabled = state; + formObj.popuptop.disabled = state; + formObj.popuplocation.disabled = state; + formObj.popupscrollbars.disabled = state; + formObj.popupmenubar.disabled = state; + formObj.popupresizable.disabled = state; + formObj.popuptoolbar.disabled = state; + formObj.popupstatus.disabled = state; + formObj.popupreturn.disabled = state; + formObj.popupdependent.disabled = state; + + setBrowserDisabled('popupurlbrowser', state); +} + +function parseLink(link) { + link = link.replace(new RegExp(''', 'g'), "'"); + + var fnName = link.replace(new RegExp("\\s*([A-Za-z0-9\.]*)\\s*\\(.*", "gi"), "$1"); + + // Is function name a template function + var template = templates[fnName]; + if (template) { + // Build regexp + var variableNames = template.match(new RegExp("'?\\$\\{[A-Za-z0-9\.]*\\}'?", "gi")); + var regExp = "\\s*[A-Za-z0-9\.]*\\s*\\("; + var replaceStr = ""; + for (var i=0; i'); + for (var i=0; i'; + html += ''; + + for (i=0; i' + name + ''; + } + + html += ''; + + return html; +} + +function insertAction() { + var inst = tinyMCEPopup.editor; + var elm, elementArray, i; + + elm = inst.selection.getNode(); + checkPrefix(document.forms[0].href); + + elm = inst.dom.getParent(elm, "A"); + + // Remove element if there is no href + if (!document.forms[0].href.value) { + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + i = inst.selection.getBookmark(); + inst.dom.remove(elm, 1); + inst.selection.moveToBookmark(i); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + return; + } + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + + // Create new anchor elements + if (elm == null) { + tinyMCEPopup.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1}); + + elementArray = tinymce.grep(inst.dom.select("a"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';}); + for (i=0; i' + tinyMCELinkList[i][0] + ''; + + html += ''; + + return html; + + // tinyMCE.debug('-- image list start --', html, '-- image list end --'); +} + +function getTargetListHTML(elm_id, target_form_element) { + var targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';'); + var html = ''; + + html += ''; + + return html; +} + +// While loading +preinit(); +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/all-wcprops new file mode 100644 index 0000000..f42b413 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/entries new file mode 100644 index 0000000..16808e5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink/langs +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:46.005614Z +a8f914a5c88714aee11eda0d75c98e71 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1622 + +de_dlg.js +file + + + + +2010-06-04T12:51:46.005614Z +5a52e342a6dcbba0a56574d949513bfb +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1947 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/de_dlg.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/de_dlg.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/en_dlg.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/prop-base/en_dlg.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..1f36c26 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,52 @@ +tinyMCE.addI18n('de.advlink_dlg',{ +title:"Link einf\u00FCgen/bearbeiten", +url:"Adresse", +target:"Fenster", +titlefield:"Titel", +is_email:"Bei der Adresse scheint es sich um eine E-Mail-Adresse zu handeln. Wollen Sie das dazu ben\u00F6tigte mailto: voranstellen?", +is_external:"Bei der Adresse scheint es sich um einen externen Link zu handeln. M\u00F6chten Sie, dass zur korrekten Verlinkung ein http:// vorangestellt wird?", +list:"Linkliste", +general_tab:"Allgemein", +popup_tab:"Popup", +events_tab:"Ereignisse", +advanced_tab:"Erweitert", +general_props:"Allemeine Eigenschaften", +popup_props:"Popup-Eigenschaften", +event_props:"Ereignisse", +advanced_props:"Erweiterte Eigenschaften", +popup_opts:"Optionen", +anchor_names:"Anker", +target_same:"Im selben Fenster/Frame \u00F6ffnen", +target_parent:"Im \u00FCbergeordneten Fenster/Frame \u00F6ffnen", +target_top:"Im obersten Frame \u00F6ffnen (sprengt das Frameset)", +target_blank:"In neuem Fenster \u00F6ffnen", +popup:"JavaScript-Popup", +popup_url:"Popup-Adresse", +popup_name:"Name des Fensters", +popup_return:"Link trotz Popup folgen", +popup_scrollbars:"Scrollbalken anzeigen", +popup_statusbar:"Statusleiste anzeigen", +popup_toolbar:"Werkzeugleisten anzeigen", +popup_menubar:"Browsermen\u00FC anzeigen", +popup_location:"Adressleiste anzeigen", +popup_resizable:"Vergr\u00F6\u00DFern des Fenster zulassen", +popup_dependent:"Vom Elternfenster abh\u00E4ngig
(nur Mozilla/Firefox) ", +popup_size:"Gr\u00F6\u00DFe", +popup_position:"Position (X/Y)", +id:"ID", +style:"Format", +classes:"Klassen", +target_name:"Name der Zielseite", +langdir:"Schriftrichtung", +target_langcode:"Sprache der Zielseite", +langcode:"Sprachcode", +encoding:"Zeichenkodierung der Zielseite", +mime:"MIME-Type der Zielseite", +rel:"Beziehung der Seite zum Linkziel", +rev:"Beziehung des Linkziels zur Seite", +tabindex:"Tabindex", +accesskey:"Tastenk\u00FCrzel", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +link_list:"Linkliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..8ef9c79 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,52 @@ +tinyMCE.addI18n('en.advlink_dlg',{ +title:"Insert/edit link", +url:"Link URL", +target:"Target", +titlefield:"Title", +is_email:"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?", +is_external:"The URL you entered seems to external link, do you want to add the required http:// prefix?", +list:"Link list", +general_tab:"General", +popup_tab:"Popup", +events_tab:"Events", +advanced_tab:"Advanced", +general_props:"General properties", +popup_props:"Popup properties", +event_props:"Events", +advanced_props:"Advanced properties", +popup_opts:"Options", +anchor_names:"Anchors", +target_same:"Open in this window / frame", +target_parent:"Open in parent window / frame", +target_top:"Open in top frame (replaces all frames)", +target_blank:"Open in new window", +popup:"Javascript popup", +popup_url:"Popup URL", +popup_name:"Window name", +popup_return:"Insert 'return false'", +popup_scrollbars:"Show scrollbars", +popup_statusbar:"Show status bar", +popup_toolbar:"Show toolbars", +popup_menubar:"Show menu bar", +popup_location:"Show location bar", +popup_resizable:"Make window resizable", +popup_dependent:"Dependent (Mozilla/Firefox only)", +popup_size:"Size", +popup_position:"Position (X/Y)", +id:"Id", +style:"Style", +classes:"Classes", +target_name:"Target name", +langdir:"Language direction", +target_langcode:"Target language", +langcode:"Language code", +encoding:"Target character encoding", +mime:"Target MIME type", +rel:"Relationship page to target", +rev:"Relationship target to page", +tabindex:"Tabindex", +accesskey:"Accesskey", +ltr:"Left to right", +rtl:"Right to left", +link_list:"Link list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js new file mode 100755 index 0000000..1f36c26 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/de_dlg.js @@ -0,0 +1,52 @@ +tinyMCE.addI18n('de.advlink_dlg',{ +title:"Link einf\u00FCgen/bearbeiten", +url:"Adresse", +target:"Fenster", +titlefield:"Titel", +is_email:"Bei der Adresse scheint es sich um eine E-Mail-Adresse zu handeln. Wollen Sie das dazu ben\u00F6tigte mailto: voranstellen?", +is_external:"Bei der Adresse scheint es sich um einen externen Link zu handeln. M\u00F6chten Sie, dass zur korrekten Verlinkung ein http:// vorangestellt wird?", +list:"Linkliste", +general_tab:"Allgemein", +popup_tab:"Popup", +events_tab:"Ereignisse", +advanced_tab:"Erweitert", +general_props:"Allemeine Eigenschaften", +popup_props:"Popup-Eigenschaften", +event_props:"Ereignisse", +advanced_props:"Erweiterte Eigenschaften", +popup_opts:"Optionen", +anchor_names:"Anker", +target_same:"Im selben Fenster/Frame \u00F6ffnen", +target_parent:"Im \u00FCbergeordneten Fenster/Frame \u00F6ffnen", +target_top:"Im obersten Frame \u00F6ffnen (sprengt das Frameset)", +target_blank:"In neuem Fenster \u00F6ffnen", +popup:"JavaScript-Popup", +popup_url:"Popup-Adresse", +popup_name:"Name des Fensters", +popup_return:"Link trotz Popup folgen", +popup_scrollbars:"Scrollbalken anzeigen", +popup_statusbar:"Statusleiste anzeigen", +popup_toolbar:"Werkzeugleisten anzeigen", +popup_menubar:"Browsermen\u00FC anzeigen", +popup_location:"Adressleiste anzeigen", +popup_resizable:"Vergr\u00F6\u00DFern des Fenster zulassen", +popup_dependent:"Vom Elternfenster abh\u00E4ngig
(nur Mozilla/Firefox) ", +popup_size:"Gr\u00F6\u00DFe", +popup_position:"Position (X/Y)", +id:"ID", +style:"Format", +classes:"Klassen", +target_name:"Name der Zielseite", +langdir:"Schriftrichtung", +target_langcode:"Sprache der Zielseite", +langcode:"Sprachcode", +encoding:"Zeichenkodierung der Zielseite", +mime:"MIME-Type der Zielseite", +rel:"Beziehung der Seite zum Linkziel", +rev:"Beziehung des Linkziels zur Seite", +tabindex:"Tabindex", +accesskey:"Tastenk\u00FCrzel", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +link_list:"Linkliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js new file mode 100755 index 0000000..8ef9c79 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js @@ -0,0 +1,52 @@ +tinyMCE.addI18n('en.advlink_dlg',{ +title:"Insert/edit link", +url:"Link URL", +target:"Target", +titlefield:"Title", +is_email:"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?", +is_external:"The URL you entered seems to external link, do you want to add the required http:// prefix?", +list:"Link list", +general_tab:"General", +popup_tab:"Popup", +events_tab:"Events", +advanced_tab:"Advanced", +general_props:"General properties", +popup_props:"Popup properties", +event_props:"Events", +advanced_props:"Advanced properties", +popup_opts:"Options", +anchor_names:"Anchors", +target_same:"Open in this window / frame", +target_parent:"Open in parent window / frame", +target_top:"Open in top frame (replaces all frames)", +target_blank:"Open in new window", +popup:"Javascript popup", +popup_url:"Popup URL", +popup_name:"Window name", +popup_return:"Insert 'return false'", +popup_scrollbars:"Show scrollbars", +popup_statusbar:"Show status bar", +popup_toolbar:"Show toolbars", +popup_menubar:"Show menu bar", +popup_location:"Show location bar", +popup_resizable:"Make window resizable", +popup_dependent:"Dependent (Mozilla/Firefox only)", +popup_size:"Size", +popup_position:"Position (X/Y)", +id:"Id", +style:"Style", +classes:"Classes", +target_name:"Target name", +langdir:"Language direction", +target_langcode:"Target language", +langcode:"Language code", +encoding:"Target character encoding", +mime:"Target MIME type", +rel:"Relationship page to target", +rev:"Relationship target to page", +tabindex:"Tabindex", +accesskey:"Accesskey", +ltr:"Left to right", +rtl:"Right to left", +link_list:"Link list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm new file mode 100755 index 0000000..7b82b44 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm @@ -0,0 +1,311 @@ + + + + {#advlink_dlg.title} + + + + + + + + + +
+ + +
+
+
+ {#advlink_dlg.general_props} +
+
+
+ +
 
+
+
+
+
+
 
+
+
+
+
 
+
+
+
+
 
+
+
+
+
+
+
+
+
+ +
+
+
+
+ + + +
+
+ {#advlink_dlg.advanced_props} +
+
+
+
+ + + + + + + + + + + + +
+
+ + +
+
+ {#advlink_dlg.event_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/all-wcprops new file mode 100644 index 0000000..3471355 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js +END +link.htm +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/entries new file mode 100644 index 0000000..d68fc5f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/entries @@ -0,0 +1,139 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:35:55.822899Z +1018 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.575615Z +5e440c6bcb7fd94e7fd597f8a183e16f +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +973 + +langs +dir + +link.htm +file + + + + +2010-06-04T12:51:45.575615Z +acf75c39574ed15cc72166a78f430358 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +14993 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.575615Z +4104cd66aea546becf5d8fca66cf7951 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1633 + +css +dir + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..983fe5a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AdvancedLinkPlugin",{init:function(a,b){this.editor=a;a.addCommand("mceAdvLink",function(){var c=a.selection;if(c.isCollapsed()&&!a.dom.getParent(c.getNode(),"A")){return}a.windowManager.open({file:b+"/link.htm",width:480+parseInt(a.getLang("advlink.delta_width",0)),height:400+parseInt(a.getLang("advlink.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("link",{title:"advlink.link_desc",cmd:"mceAdvLink"});a.addShortcut("ctrl+k","advlink.advlink_desc","mceAdvLink");a.onNodeChange.add(function(d,c,f,e){c.setDisabled("link",e&&f.nodeName!="A");c.setActive("link",f.nodeName=="A"&&!f.name)})},getInfo:function(){return{longname:"Advanced link",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advlink",tinymce.plugins.AdvancedLinkPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..14e46a7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,61 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedLinkPlugin', { + init : function(ed, url) { + this.editor = ed; + + // Register commands + ed.addCommand('mceAdvLink', function() { + var se = ed.selection; + + // No selection and not in link + if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A')) + return; + + ed.windowManager.open({ + file : url + '/link.htm', + width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)), + height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('link', { + title : 'advlink.link_desc', + cmd : 'mceAdvLink' + }); + + ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink'); + + ed.onNodeChange.add(function(ed, cm, n, co) { + cm.setDisabled('link', co && n.nodeName != 'A'); + cm.setActive('link', n.nodeName == 'A' && !n.name); + }); + }, + + getInfo : function() { + return { + longname : 'Advanced link', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/link.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/link.htm.svn-base new file mode 100644 index 0000000..876669c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/.svn/text-base/link.htm.svn-base @@ -0,0 +1,333 @@ + + + + {#advlink_dlg.title} + + + + + + + + +
+ + +
+
+
+ {#advlink_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ +
+
+
+ + + +
+
+ {#advlink_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+
+
+
+ +
+
+ {#advlink_dlg.event_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/all-wcprops new file mode 100644 index 0000000..cfe7b76 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css +END +advlink.css +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/entries new file mode 100644 index 0000000..cfc8e26 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +advlink.css +file + + + + +2010-06-04T12:51:45.568949Z +aaf226732a7b4ae80ee680700f488a1e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +480 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/text-base/advlink.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/text-base/advlink.css.svn-base new file mode 100644 index 0000000..1436431 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/.svn/text-base/advlink.css.svn-base @@ -0,0 +1,8 @@ +.mceLinkList, .mceAnchorList, #targetlist {width:280px;} +.mceActionPanel {margin-top:7px;} +.panel_wrapper div.current {height:320px;} +#classlist, #title, #href {width:280px;} +#popupurl, #popupname {width:200px;} +#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;} +#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;} +#events_panel input {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css new file mode 100644 index 0000000..1436431 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css @@ -0,0 +1,8 @@ +.mceLinkList, .mceAnchorList, #targetlist {width:280px;} +.mceActionPanel {margin-top:7px;} +.panel_wrapper div.current {height:320px;} +#classlist, #title, #href {width:280px;} +#popupurl, #popupname {width:200px;} +#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;} +#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;} +#events_panel input {width:200px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js new file mode 100644 index 0000000..983fe5a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AdvancedLinkPlugin",{init:function(a,b){this.editor=a;a.addCommand("mceAdvLink",function(){var c=a.selection;if(c.isCollapsed()&&!a.dom.getParent(c.getNode(),"A")){return}a.windowManager.open({file:b+"/link.htm",width:480+parseInt(a.getLang("advlink.delta_width",0)),height:400+parseInt(a.getLang("advlink.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("link",{title:"advlink.link_desc",cmd:"mceAdvLink"});a.addShortcut("ctrl+k","advlink.advlink_desc","mceAdvLink");a.onNodeChange.add(function(d,c,f,e){c.setDisabled("link",e&&f.nodeName!="A");c.setActive("link",f.nodeName=="A"&&!f.name)})},getInfo:function(){return{longname:"Advanced link",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advlink",tinymce.plugins.AdvancedLinkPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js new file mode 100644 index 0000000..14e46a7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js @@ -0,0 +1,61 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.AdvancedLinkPlugin', { + init : function(ed, url) { + this.editor = ed; + + // Register commands + ed.addCommand('mceAdvLink', function() { + var se = ed.selection; + + // No selection and not in link + if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A')) + return; + + ed.windowManager.open({ + file : url + '/link.htm', + width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)), + height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('link', { + title : 'advlink.link_desc', + cmd : 'mceAdvLink' + }); + + ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink'); + + ed.onNodeChange.add(function(ed, cm, n, co) { + cm.setDisabled('link', co && n.nodeName != 'A'); + cm.setActive('link', n.nodeName == 'A' && !n.name); + }); + }, + + getInfo : function() { + return { + longname : 'Advanced link', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/all-wcprops new file mode 100644 index 0000000..5360e3c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js +END +advlink.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/entries new file mode 100644 index 0000000..5a17889 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +advlink.js +file + + + + +2010-06-04T12:51:45.572301Z +99b5bf24438ceeba3091fe6713365adc +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +17234 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/text-base/advlink.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/text-base/advlink.js.svn-base new file mode 100644 index 0000000..b78e82f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/.svn/text-base/advlink.js.svn-base @@ -0,0 +1,528 @@ +/* Functions for the advlink plugin popup */ + +tinyMCEPopup.requireLangPack(); + +var templates = { + "window.open" : "window.open('${url}','${target}','${options}')" +}; + +function preinit() { + var url; + + if (url = tinyMCEPopup.getParam("external_link_list_url")) + document.write(''); +} + +function changeClass() { + var f = document.forms[0]; + + f.classes.value = getSelectValue(f, 'classlist'); +} + +function init() { + tinyMCEPopup.resizeToInnerSize(); + + var formObj = document.forms[0]; + var inst = tinyMCEPopup.editor; + var elm = inst.selection.getNode(); + var action = "insert"; + var html; + + document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink'); + document.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink'); + document.getElementById('linklisthrefcontainer').innerHTML = getLinkListHTML('linklisthref','href'); + document.getElementById('anchorlistcontainer').innerHTML = getAnchorListHTML('anchorlist','href'); + document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target'); + + // Link list + html = getLinkListHTML('linklisthref','href'); + if (html == "") + document.getElementById("linklisthrefrow").style.display = 'none'; + else + document.getElementById("linklisthrefcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('hrefbrowser')) + document.getElementById('href').style.width = '260px'; + + if (isVisible('popupurlbrowser')) + document.getElementById('popupurl').style.width = '180px'; + + elm = inst.dom.getParent(elm, "A"); + if (elm != null && elm.nodeName == "A") + action = "update"; + + formObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true); + + setPopupControlsDisabled(true); + + if (action == "update") { + var href = inst.dom.getAttrib(elm, 'href'); + var onclick = inst.dom.getAttrib(elm, 'onclick'); + + // Setup form data + setFormValue('href', href); + setFormValue('title', inst.dom.getAttrib(elm, 'title')); + setFormValue('id', inst.dom.getAttrib(elm, 'id')); + setFormValue('style', inst.dom.getAttrib(elm, "style")); + setFormValue('rel', inst.dom.getAttrib(elm, 'rel')); + setFormValue('rev', inst.dom.getAttrib(elm, 'rev')); + setFormValue('charset', inst.dom.getAttrib(elm, 'charset')); + setFormValue('hreflang', inst.dom.getAttrib(elm, 'hreflang')); + setFormValue('dir', inst.dom.getAttrib(elm, 'dir')); + setFormValue('lang', inst.dom.getAttrib(elm, 'lang')); + setFormValue('tabindex', inst.dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : "")); + setFormValue('accesskey', inst.dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : "")); + setFormValue('type', inst.dom.getAttrib(elm, 'type')); + setFormValue('onfocus', inst.dom.getAttrib(elm, 'onfocus')); + setFormValue('onblur', inst.dom.getAttrib(elm, 'onblur')); + setFormValue('onclick', onclick); + setFormValue('ondblclick', inst.dom.getAttrib(elm, 'ondblclick')); + setFormValue('onmousedown', inst.dom.getAttrib(elm, 'onmousedown')); + setFormValue('onmouseup', inst.dom.getAttrib(elm, 'onmouseup')); + setFormValue('onmouseover', inst.dom.getAttrib(elm, 'onmouseover')); + setFormValue('onmousemove', inst.dom.getAttrib(elm, 'onmousemove')); + setFormValue('onmouseout', inst.dom.getAttrib(elm, 'onmouseout')); + setFormValue('onkeypress', inst.dom.getAttrib(elm, 'onkeypress')); + setFormValue('onkeydown', inst.dom.getAttrib(elm, 'onkeydown')); + setFormValue('onkeyup', inst.dom.getAttrib(elm, 'onkeyup')); + setFormValue('target', inst.dom.getAttrib(elm, 'target')); + setFormValue('classes', inst.dom.getAttrib(elm, 'class')); + + // Parse onclick data + if (onclick != null && onclick.indexOf('window.open') != -1) + parseWindowOpen(onclick); + else + parseFunction(onclick); + + // Select by the values + selectByValue(formObj, 'dir', inst.dom.getAttrib(elm, 'dir')); + selectByValue(formObj, 'rel', inst.dom.getAttrib(elm, 'rel')); + selectByValue(formObj, 'rev', inst.dom.getAttrib(elm, 'rev')); + selectByValue(formObj, 'linklisthref', href); + + if (href.charAt(0) == '#') + selectByValue(formObj, 'anchorlist', href); + + addClassesToList('classlist', 'advlink_styles'); + + selectByValue(formObj, 'classlist', inst.dom.getAttrib(elm, 'class'), true); + selectByValue(formObj, 'targetlist', inst.dom.getAttrib(elm, 'target'), true); + } else + addClassesToList('classlist', 'advlink_styles'); +} + +function checkPrefix(n) { + if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_email'))) + n.value = 'mailto:' + n.value; + + if (/^\s*www\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_external'))) + n.value = 'http://' + n.value; +} + +function setFormValue(name, value) { + document.forms[0].elements[name].value = value; +} + +function parseWindowOpen(onclick) { + var formObj = document.forms[0]; + + // Preprocess center code + if (onclick.indexOf('return false;') != -1) { + formObj.popupreturn.checked = true; + onclick = onclick.replace('return false;', ''); + } else + formObj.popupreturn.checked = false; + + var onClickData = parseLink(onclick); + + if (onClickData != null) { + formObj.ispopup.checked = true; + setPopupControlsDisabled(false); + + var onClickWindowOptions = parseOptions(onClickData['options']); + var url = onClickData['url']; + + formObj.popupname.value = onClickData['target']; + formObj.popupurl.value = url; + formObj.popupwidth.value = getOption(onClickWindowOptions, 'width'); + formObj.popupheight.value = getOption(onClickWindowOptions, 'height'); + + formObj.popupleft.value = getOption(onClickWindowOptions, 'left'); + formObj.popuptop.value = getOption(onClickWindowOptions, 'top'); + + if (formObj.popupleft.value.indexOf('screen') != -1) + formObj.popupleft.value = "c"; + + if (formObj.popuptop.value.indexOf('screen') != -1) + formObj.popuptop.value = "c"; + + formObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == "yes"; + formObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == "yes"; + formObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == "yes"; + formObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == "yes"; + formObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == "yes"; + formObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == "yes"; + formObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == "yes"; + + buildOnClick(); + } +} + +function parseFunction(onclick) { + var formObj = document.forms[0]; + var onClickData = parseLink(onclick); + + // TODO: Add stuff here +} + +function getOption(opts, name) { + return typeof(opts[name]) == "undefined" ? "" : opts[name]; +} + +function setPopupControlsDisabled(state) { + var formObj = document.forms[0]; + + formObj.popupname.disabled = state; + formObj.popupurl.disabled = state; + formObj.popupwidth.disabled = state; + formObj.popupheight.disabled = state; + formObj.popupleft.disabled = state; + formObj.popuptop.disabled = state; + formObj.popuplocation.disabled = state; + formObj.popupscrollbars.disabled = state; + formObj.popupmenubar.disabled = state; + formObj.popupresizable.disabled = state; + formObj.popuptoolbar.disabled = state; + formObj.popupstatus.disabled = state; + formObj.popupreturn.disabled = state; + formObj.popupdependent.disabled = state; + + setBrowserDisabled('popupurlbrowser', state); +} + +function parseLink(link) { + link = link.replace(new RegExp(''', 'g'), "'"); + + var fnName = link.replace(new RegExp("\\s*([A-Za-z0-9\.]*)\\s*\\(.*", "gi"), "$1"); + + // Is function name a template function + var template = templates[fnName]; + if (template) { + // Build regexp + var variableNames = template.match(new RegExp("'?\\$\\{[A-Za-z0-9\.]*\\}'?", "gi")); + var regExp = "\\s*[A-Za-z0-9\.]*\\s*\\("; + var replaceStr = ""; + for (var i=0; i'); + for (var i=0; i'; + html += ''; + + for (i=0; i' + name + ''; + } + + html += ''; + + return html; +} + +function insertAction() { + var inst = tinyMCEPopup.editor; + var elm, elementArray, i; + + elm = inst.selection.getNode(); + checkPrefix(document.forms[0].href); + + elm = inst.dom.getParent(elm, "A"); + + // Remove element if there is no href + if (!document.forms[0].href.value) { + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + i = inst.selection.getBookmark(); + inst.dom.remove(elm, 1); + inst.selection.moveToBookmark(i); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + return; + } + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + + // Create new anchor elements + if (elm == null) { + inst.getDoc().execCommand("unlink", false, null); + tinyMCEPopup.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1}); + + elementArray = tinymce.grep(inst.dom.select("a"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';}); + for (i=0; i' + tinyMCELinkList[i][0] + ''; + + html += ''; + + return html; + + // tinyMCE.debug('-- image list start --', html, '-- image list end --'); +} + +function getTargetListHTML(elm_id, target_form_element) { + var targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';'); + var html = ''; + + html += ''; + + return html; +} + +// While loading +preinit(); +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js new file mode 100644 index 0000000..b78e82f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js @@ -0,0 +1,528 @@ +/* Functions for the advlink plugin popup */ + +tinyMCEPopup.requireLangPack(); + +var templates = { + "window.open" : "window.open('${url}','${target}','${options}')" +}; + +function preinit() { + var url; + + if (url = tinyMCEPopup.getParam("external_link_list_url")) + document.write(''); +} + +function changeClass() { + var f = document.forms[0]; + + f.classes.value = getSelectValue(f, 'classlist'); +} + +function init() { + tinyMCEPopup.resizeToInnerSize(); + + var formObj = document.forms[0]; + var inst = tinyMCEPopup.editor; + var elm = inst.selection.getNode(); + var action = "insert"; + var html; + + document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink'); + document.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink'); + document.getElementById('linklisthrefcontainer').innerHTML = getLinkListHTML('linklisthref','href'); + document.getElementById('anchorlistcontainer').innerHTML = getAnchorListHTML('anchorlist','href'); + document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target'); + + // Link list + html = getLinkListHTML('linklisthref','href'); + if (html == "") + document.getElementById("linklisthrefrow").style.display = 'none'; + else + document.getElementById("linklisthrefcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('hrefbrowser')) + document.getElementById('href').style.width = '260px'; + + if (isVisible('popupurlbrowser')) + document.getElementById('popupurl').style.width = '180px'; + + elm = inst.dom.getParent(elm, "A"); + if (elm != null && elm.nodeName == "A") + action = "update"; + + formObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true); + + setPopupControlsDisabled(true); + + if (action == "update") { + var href = inst.dom.getAttrib(elm, 'href'); + var onclick = inst.dom.getAttrib(elm, 'onclick'); + + // Setup form data + setFormValue('href', href); + setFormValue('title', inst.dom.getAttrib(elm, 'title')); + setFormValue('id', inst.dom.getAttrib(elm, 'id')); + setFormValue('style', inst.dom.getAttrib(elm, "style")); + setFormValue('rel', inst.dom.getAttrib(elm, 'rel')); + setFormValue('rev', inst.dom.getAttrib(elm, 'rev')); + setFormValue('charset', inst.dom.getAttrib(elm, 'charset')); + setFormValue('hreflang', inst.dom.getAttrib(elm, 'hreflang')); + setFormValue('dir', inst.dom.getAttrib(elm, 'dir')); + setFormValue('lang', inst.dom.getAttrib(elm, 'lang')); + setFormValue('tabindex', inst.dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : "")); + setFormValue('accesskey', inst.dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : "")); + setFormValue('type', inst.dom.getAttrib(elm, 'type')); + setFormValue('onfocus', inst.dom.getAttrib(elm, 'onfocus')); + setFormValue('onblur', inst.dom.getAttrib(elm, 'onblur')); + setFormValue('onclick', onclick); + setFormValue('ondblclick', inst.dom.getAttrib(elm, 'ondblclick')); + setFormValue('onmousedown', inst.dom.getAttrib(elm, 'onmousedown')); + setFormValue('onmouseup', inst.dom.getAttrib(elm, 'onmouseup')); + setFormValue('onmouseover', inst.dom.getAttrib(elm, 'onmouseover')); + setFormValue('onmousemove', inst.dom.getAttrib(elm, 'onmousemove')); + setFormValue('onmouseout', inst.dom.getAttrib(elm, 'onmouseout')); + setFormValue('onkeypress', inst.dom.getAttrib(elm, 'onkeypress')); + setFormValue('onkeydown', inst.dom.getAttrib(elm, 'onkeydown')); + setFormValue('onkeyup', inst.dom.getAttrib(elm, 'onkeyup')); + setFormValue('target', inst.dom.getAttrib(elm, 'target')); + setFormValue('classes', inst.dom.getAttrib(elm, 'class')); + + // Parse onclick data + if (onclick != null && onclick.indexOf('window.open') != -1) + parseWindowOpen(onclick); + else + parseFunction(onclick); + + // Select by the values + selectByValue(formObj, 'dir', inst.dom.getAttrib(elm, 'dir')); + selectByValue(formObj, 'rel', inst.dom.getAttrib(elm, 'rel')); + selectByValue(formObj, 'rev', inst.dom.getAttrib(elm, 'rev')); + selectByValue(formObj, 'linklisthref', href); + + if (href.charAt(0) == '#') + selectByValue(formObj, 'anchorlist', href); + + addClassesToList('classlist', 'advlink_styles'); + + selectByValue(formObj, 'classlist', inst.dom.getAttrib(elm, 'class'), true); + selectByValue(formObj, 'targetlist', inst.dom.getAttrib(elm, 'target'), true); + } else + addClassesToList('classlist', 'advlink_styles'); +} + +function checkPrefix(n) { + if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_email'))) + n.value = 'mailto:' + n.value; + + if (/^\s*www\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_external'))) + n.value = 'http://' + n.value; +} + +function setFormValue(name, value) { + document.forms[0].elements[name].value = value; +} + +function parseWindowOpen(onclick) { + var formObj = document.forms[0]; + + // Preprocess center code + if (onclick.indexOf('return false;') != -1) { + formObj.popupreturn.checked = true; + onclick = onclick.replace('return false;', ''); + } else + formObj.popupreturn.checked = false; + + var onClickData = parseLink(onclick); + + if (onClickData != null) { + formObj.ispopup.checked = true; + setPopupControlsDisabled(false); + + var onClickWindowOptions = parseOptions(onClickData['options']); + var url = onClickData['url']; + + formObj.popupname.value = onClickData['target']; + formObj.popupurl.value = url; + formObj.popupwidth.value = getOption(onClickWindowOptions, 'width'); + formObj.popupheight.value = getOption(onClickWindowOptions, 'height'); + + formObj.popupleft.value = getOption(onClickWindowOptions, 'left'); + formObj.popuptop.value = getOption(onClickWindowOptions, 'top'); + + if (formObj.popupleft.value.indexOf('screen') != -1) + formObj.popupleft.value = "c"; + + if (formObj.popuptop.value.indexOf('screen') != -1) + formObj.popuptop.value = "c"; + + formObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == "yes"; + formObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == "yes"; + formObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == "yes"; + formObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == "yes"; + formObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == "yes"; + formObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == "yes"; + formObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == "yes"; + + buildOnClick(); + } +} + +function parseFunction(onclick) { + var formObj = document.forms[0]; + var onClickData = parseLink(onclick); + + // TODO: Add stuff here +} + +function getOption(opts, name) { + return typeof(opts[name]) == "undefined" ? "" : opts[name]; +} + +function setPopupControlsDisabled(state) { + var formObj = document.forms[0]; + + formObj.popupname.disabled = state; + formObj.popupurl.disabled = state; + formObj.popupwidth.disabled = state; + formObj.popupheight.disabled = state; + formObj.popupleft.disabled = state; + formObj.popuptop.disabled = state; + formObj.popuplocation.disabled = state; + formObj.popupscrollbars.disabled = state; + formObj.popupmenubar.disabled = state; + formObj.popupresizable.disabled = state; + formObj.popuptoolbar.disabled = state; + formObj.popupstatus.disabled = state; + formObj.popupreturn.disabled = state; + formObj.popupdependent.disabled = state; + + setBrowserDisabled('popupurlbrowser', state); +} + +function parseLink(link) { + link = link.replace(new RegExp(''', 'g'), "'"); + + var fnName = link.replace(new RegExp("\\s*([A-Za-z0-9\.]*)\\s*\\(.*", "gi"), "$1"); + + // Is function name a template function + var template = templates[fnName]; + if (template) { + // Build regexp + var variableNames = template.match(new RegExp("'?\\$\\{[A-Za-z0-9\.]*\\}'?", "gi")); + var regExp = "\\s*[A-Za-z0-9\.]*\\s*\\("; + var replaceStr = ""; + for (var i=0; i'); + for (var i=0; i'; + html += ''; + + for (i=0; i' + name + ''; + } + + html += ''; + + return html; +} + +function insertAction() { + var inst = tinyMCEPopup.editor; + var elm, elementArray, i; + + elm = inst.selection.getNode(); + checkPrefix(document.forms[0].href); + + elm = inst.dom.getParent(elm, "A"); + + // Remove element if there is no href + if (!document.forms[0].href.value) { + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + i = inst.selection.getBookmark(); + inst.dom.remove(elm, 1); + inst.selection.moveToBookmark(i); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + return; + } + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + + // Create new anchor elements + if (elm == null) { + inst.getDoc().execCommand("unlink", false, null); + tinyMCEPopup.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1}); + + elementArray = tinymce.grep(inst.dom.select("a"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';}); + for (i=0; i' + tinyMCELinkList[i][0] + ''; + + html += ''; + + return html; + + // tinyMCE.debug('-- image list start --', html, '-- image list end --'); +} + +function getTargetListHTML(elm_id, target_form_element) { + var targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';'); + var html = ''; + + html += ''; + + return html; +} + +// While loading +preinit(); +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/all-wcprops new file mode 100644 index 0000000..3095cad --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js +END +fr_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/fr_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/entries new file mode 100644 index 0000000..b2495f5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:45.558988Z +38dca13d848c8074b38e20b2a33e6eaf +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1673 + +fr_dlg.js +file + + + + +2010-06-04T12:51:45.558988Z +2a0b153cf8e20cf2bfb5521f41d07cb0 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2119 + +de_dlg.js +file + + + + +2010-06-04T12:51:45.558988Z +86626d7c5386b126d0be9f300319bc66 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1953 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..eb58236 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,52 @@ +tinyMCE.addI18n('de.advlink_dlg',{ +title:"Link einf\u00FCgen/bearbeiten", +url:"Adresse", +target:"Fenster", +titlefield:"Titel", +is_email:"Diese Adresse scheint eine E-Mail-Adresse zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte mailto: voranstellen?", +is_external:"Diese Adresse scheint ein externer Link zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte http:// voranstellen?", +list:"Linkliste", +general_tab:"Allgemein", +popup_tab:"Popup", +events_tab:"Ereignisse", +advanced_tab:"Erweitert", +general_props:"Allemeine Eigenschaften", +popup_props:"Popup-Eigenschaften", +event_props:"Ereignisse", +advanced_props:"Erweiterte Eigenschaften", +popup_opts:"Optionen", +anchor_names:"Anker", +target_same:"Im selben Fenster/Frame \u00F6ffnen", +target_parent:"Im \u00FCbergeordneten Fenster/Frame \u00F6ffnen", +target_top:"Im obersten Frame \u00F6ffnen (sprengt das Frameset)", +target_blank:"In neuem Fenster \u00F6ffnen", +popup:"JavaScript-Popup", +popup_url:"Popup-Adresse", +popup_name:"Name des Fensters", +popup_return:"Link trotz Popup folgen", +popup_scrollbars:"Scrollbalken anzeigen", +popup_statusbar:"Statusleiste anzeigen", +popup_toolbar:"Werkzeugleisten anzeigen", +popup_menubar:"Browsermen\u00FC anzeigen", +popup_location:"Adressleiste anzeigen", +popup_resizable:"Vergr\u00F6\u00DFern des Fenster zulassen", +popup_dependent:"Vom Elternfenster abh\u00E4ngig
(nur Mozilla/Firefox) ", +popup_size:"Gr\u00F6\u00DFe", +popup_position:"Position (X/Y)", +id:"ID", +style:"Format", +classes:"Klassen", +target_name:"Name der Zielseite", +langdir:"Schriftrichtung", +target_langcode:"Sprache der Zielseite", +langcode:"Sprachcode", +encoding:"Zeichenkodierung der Zielseite", +mime:"MIME-Type der Zielseite", +rel:"Beziehung der Seite zum Linkziel", +rev:"Beziehung des Linkziels zur Seite", +tabindex:"Tabindex", +accesskey:"Tastenk\u00FCrzel", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +link_list:"Linkliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..c71ffbd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,52 @@ +tinyMCE.addI18n('en.advlink_dlg',{ +title:"Insert/edit link", +url:"Link URL", +target:"Target", +titlefield:"Title", +is_email:"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?", +is_external:"The URL you entered seems to external link, do you want to add the required http:// prefix?", +list:"Link list", +general_tab:"General", +popup_tab:"Popup", +events_tab:"Events", +advanced_tab:"Advanced", +general_props:"General properties", +popup_props:"Popup properties", +event_props:"Events", +advanced_props:"Advanced properties", +popup_opts:"Options", +anchor_names:"Anchors", +target_same:"Open in this window / frame", +target_parent:"Open in parent window / frame", +target_top:"Open in top frame (replaces all frames)", +target_blank:"Open in new window", +popup:"Javascript popup", +popup_url:"Popup URL", +popup_name:"Window name", +popup_return:"Insert 'return false'", +popup_scrollbars:"Show scrollbars", +popup_statusbar:"Show status bar", +popup_toolbar:"Show toolbars", +popup_menubar:"Show menu bar", +popup_location:"Show location bar", +popup_resizable:"Make window resizable", +popup_dependent:"Dependent (Mozilla/Firefox only)", +popup_size:"Size", +popup_position:"Position (X/Y)", +id:"Id", +style:"Style", +classes:"Classes", +target_name:"Target name", +langdir:"Language direction", +target_langcode:"Target language", +langcode:"Language code", +encoding:"Target character encoding", +mime:"Target MIME type", +rel:"Relationship page to target", +rev:"Relationship target to page", +tabindex:"Tabindex", +accesskey:"Accesskey", +ltr:"Left to right", +rtl:"Right to left", +link_list:"Link list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/fr_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/fr_dlg.js.svn-base new file mode 100644 index 0000000..a17db8f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/.svn/text-base/fr_dlg.js.svn-base @@ -0,0 +1,52 @@ +tinyMCE.addI18n('fr.advlink_dlg',{ +title:"Ins\u00E9rer / \u00E9diter un lien", +url:"URL du lien", +target:"Cible", +titlefield:"Titre", +is_email:"L'URL que vous avez saisie semble \u00EAtre une adresse e-mail, souhaitez-vous ajouter le pr\u00E9fixe \u00AB mailto: \u00BB ?", +is_external:"L'URL que vous avez saisie semble \u00EAtre une adresse web externe. Souhaitez-vous ajouter le pr\u00E9fixe \u00AB http:// \u00BB ?", +list:"Liste de liens", +general_tab:"G\u00E9n\u00E9ral", +popup_tab:"Popup", +events_tab:"\u00C9v\u00E8nements", +advanced_tab:"Avanc\u00E9", +general_props:"Propri\u00E9t\u00E9s g\u00E9n\u00E9rales", +popup_props:"Propri\u00E9t\u00E9s de la popup", +event_props:"\u00C9v\u00E8nements", +advanced_props:"Propri\u00E9t\u00E9s avanc\u00E9es", +popup_opts:"Options", +anchor_names:"Ancres", +target_same:"Ouvrir dans cette fen\u00EAtre / dans ce cadre", +target_parent:"Ouvrir dans la fen\u00EAtre / le cadre parent", +target_top:"Ouvrir dans le cadre principal (remplace tous les cadres)", +target_blank:"Ouvrir dans une nouvelle fen\u00EAtre", +popup:"Popup Javascript", +popup_url:"URL de la popup", +popup_name:"Nom de la fen\u00EAtre", +popup_return:"Ins\u00E9rer 'return false'", +popup_scrollbars:"Afficher les ascenseurs", +popup_statusbar:"Afficher la barre d'\u00E9tat", +popup_toolbar:"Afficher la barre d'outils", +popup_menubar:"Afficher la barre de menu", +popup_location:"Afficher la barre d'adresse", +popup_resizable:"Autoriser le redimensionnement de la fen\u00EAtre", +popup_dependent:"D\u00E9pendante (seulement sous Mozilla/Firefox)", +popup_size:"Taille", +popup_position:"Position (X/Y)", +id:"Id", +style:"Style", +classes:"Classes", +target_name:"Nom de la cible", +langdir:"Sens de lecture", +target_langcode:"Langue de la cible", +langcode:"Code de la langue", +encoding:"Encodage de la cible", +mime:"Type MIME de la cible", +rel:"Relation de la page \u00E0 la cible", +rev:"Relation de la cible \u00E0 la page", +tabindex:"Tabindex", +accesskey:"Touche d'acc\u00E8s rapide", +ltr:"Gauche \u00E0 droite", +rtl:"Droite \u00E0 gauche", +link_list:"Liste des liens" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/de_dlg.js new file mode 100644 index 0000000..eb58236 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/de_dlg.js @@ -0,0 +1,52 @@ +tinyMCE.addI18n('de.advlink_dlg',{ +title:"Link einf\u00FCgen/bearbeiten", +url:"Adresse", +target:"Fenster", +titlefield:"Titel", +is_email:"Diese Adresse scheint eine E-Mail-Adresse zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte mailto: voranstellen?", +is_external:"Diese Adresse scheint ein externer Link zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte http:// voranstellen?", +list:"Linkliste", +general_tab:"Allgemein", +popup_tab:"Popup", +events_tab:"Ereignisse", +advanced_tab:"Erweitert", +general_props:"Allemeine Eigenschaften", +popup_props:"Popup-Eigenschaften", +event_props:"Ereignisse", +advanced_props:"Erweiterte Eigenschaften", +popup_opts:"Optionen", +anchor_names:"Anker", +target_same:"Im selben Fenster/Frame \u00F6ffnen", +target_parent:"Im \u00FCbergeordneten Fenster/Frame \u00F6ffnen", +target_top:"Im obersten Frame \u00F6ffnen (sprengt das Frameset)", +target_blank:"In neuem Fenster \u00F6ffnen", +popup:"JavaScript-Popup", +popup_url:"Popup-Adresse", +popup_name:"Name des Fensters", +popup_return:"Link trotz Popup folgen", +popup_scrollbars:"Scrollbalken anzeigen", +popup_statusbar:"Statusleiste anzeigen", +popup_toolbar:"Werkzeugleisten anzeigen", +popup_menubar:"Browsermen\u00FC anzeigen", +popup_location:"Adressleiste anzeigen", +popup_resizable:"Vergr\u00F6\u00DFern des Fenster zulassen", +popup_dependent:"Vom Elternfenster abh\u00E4ngig
(nur Mozilla/Firefox) ", +popup_size:"Gr\u00F6\u00DFe", +popup_position:"Position (X/Y)", +id:"ID", +style:"Format", +classes:"Klassen", +target_name:"Name der Zielseite", +langdir:"Schriftrichtung", +target_langcode:"Sprache der Zielseite", +langcode:"Sprachcode", +encoding:"Zeichenkodierung der Zielseite", +mime:"MIME-Type der Zielseite", +rel:"Beziehung der Seite zum Linkziel", +rev:"Beziehung des Linkziels zur Seite", +tabindex:"Tabindex", +accesskey:"Tastenk\u00FCrzel", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +link_list:"Linkliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js new file mode 100644 index 0000000..c71ffbd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js @@ -0,0 +1,52 @@ +tinyMCE.addI18n('en.advlink_dlg',{ +title:"Insert/edit link", +url:"Link URL", +target:"Target", +titlefield:"Title", +is_email:"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?", +is_external:"The URL you entered seems to external link, do you want to add the required http:// prefix?", +list:"Link list", +general_tab:"General", +popup_tab:"Popup", +events_tab:"Events", +advanced_tab:"Advanced", +general_props:"General properties", +popup_props:"Popup properties", +event_props:"Events", +advanced_props:"Advanced properties", +popup_opts:"Options", +anchor_names:"Anchors", +target_same:"Open in this window / frame", +target_parent:"Open in parent window / frame", +target_top:"Open in top frame (replaces all frames)", +target_blank:"Open in new window", +popup:"Javascript popup", +popup_url:"Popup URL", +popup_name:"Window name", +popup_return:"Insert 'return false'", +popup_scrollbars:"Show scrollbars", +popup_statusbar:"Show status bar", +popup_toolbar:"Show toolbars", +popup_menubar:"Show menu bar", +popup_location:"Show location bar", +popup_resizable:"Make window resizable", +popup_dependent:"Dependent (Mozilla/Firefox only)", +popup_size:"Size", +popup_position:"Position (X/Y)", +id:"Id", +style:"Style", +classes:"Classes", +target_name:"Target name", +langdir:"Language direction", +target_langcode:"Target language", +langcode:"Language code", +encoding:"Target character encoding", +mime:"Target MIME type", +rel:"Relationship page to target", +rev:"Relationship target to page", +tabindex:"Tabindex", +accesskey:"Accesskey", +ltr:"Left to right", +rtl:"Right to left", +link_list:"Link list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/fr_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/fr_dlg.js new file mode 100644 index 0000000..a17db8f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/fr_dlg.js @@ -0,0 +1,52 @@ +tinyMCE.addI18n('fr.advlink_dlg',{ +title:"Ins\u00E9rer / \u00E9diter un lien", +url:"URL du lien", +target:"Cible", +titlefield:"Titre", +is_email:"L'URL que vous avez saisie semble \u00EAtre une adresse e-mail, souhaitez-vous ajouter le pr\u00E9fixe \u00AB mailto: \u00BB ?", +is_external:"L'URL que vous avez saisie semble \u00EAtre une adresse web externe. Souhaitez-vous ajouter le pr\u00E9fixe \u00AB http:// \u00BB ?", +list:"Liste de liens", +general_tab:"G\u00E9n\u00E9ral", +popup_tab:"Popup", +events_tab:"\u00C9v\u00E8nements", +advanced_tab:"Avanc\u00E9", +general_props:"Propri\u00E9t\u00E9s g\u00E9n\u00E9rales", +popup_props:"Propri\u00E9t\u00E9s de la popup", +event_props:"\u00C9v\u00E8nements", +advanced_props:"Propri\u00E9t\u00E9s avanc\u00E9es", +popup_opts:"Options", +anchor_names:"Ancres", +target_same:"Ouvrir dans cette fen\u00EAtre / dans ce cadre", +target_parent:"Ouvrir dans la fen\u00EAtre / le cadre parent", +target_top:"Ouvrir dans le cadre principal (remplace tous les cadres)", +target_blank:"Ouvrir dans une nouvelle fen\u00EAtre", +popup:"Popup Javascript", +popup_url:"URL de la popup", +popup_name:"Nom de la fen\u00EAtre", +popup_return:"Ins\u00E9rer 'return false'", +popup_scrollbars:"Afficher les ascenseurs", +popup_statusbar:"Afficher la barre d'\u00E9tat", +popup_toolbar:"Afficher la barre d'outils", +popup_menubar:"Afficher la barre de menu", +popup_location:"Afficher la barre d'adresse", +popup_resizable:"Autoriser le redimensionnement de la fen\u00EAtre", +popup_dependent:"D\u00E9pendante (seulement sous Mozilla/Firefox)", +popup_size:"Taille", +popup_position:"Position (X/Y)", +id:"Id", +style:"Style", +classes:"Classes", +target_name:"Nom de la cible", +langdir:"Sens de lecture", +target_langcode:"Langue de la cible", +langcode:"Code de la langue", +encoding:"Encodage de la cible", +mime:"Type MIME de la cible", +rel:"Relation de la page \u00E0 la cible", +rev:"Relation de la cible \u00E0 la page", +tabindex:"Tabindex", +accesskey:"Touche d'acc\u00E8s rapide", +ltr:"Gauche \u00E0 droite", +rtl:"Droite \u00E0 gauche", +link_list:"Liste des liens" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm new file mode 100644 index 0000000..876669c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm @@ -0,0 +1,333 @@ + + + + {#advlink_dlg.title} + + + + + + + + +
+ + +
+
+
+ {#advlink_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ +
+
+
+ + + +
+
+ {#advlink_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+
+
+
+ +
+
+ {#advlink_dlg.event_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/all-wcprops new file mode 100644 index 0000000..5f2536a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlist +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/entries new file mode 100644 index 0000000..a2ed993 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/advlist +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.435219Z +ee82521107bc8980b09527a1917e5ccd +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2039 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.438532Z +f6527ec1e7b0c8a9019de139e7650a2e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4101 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..02d1697 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.AdvListPlugin",{init:function(b,c){var d=this;d.editor=b;function e(g){var f=[];a(g.split(/,/),function(h){f.push({title:"advlist."+(h=="default"?"def":h.replace(/-/g,"_")),styles:{listStyleType:h=="default"?"":h}})});return f}d.numlist=b.getParam("advlist_number_styles")||e("default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman");d.bullist=b.getParam("advlist_bullet_styles")||e("default,circle,disc,square")},createControl:function(d,b){var f=this,e,h;if(d=="numlist"||d=="bullist"){if(f[d][0].title=="advlist.def"){h=f[d][0]}function c(i,k){var j=true;a(k.styles,function(m,l){if(f.editor.dom.getStyle(i,l)!=m){j=false;return false}});return j}function g(){var k,i=f.editor,l=i.dom,j=i.selection;k=l.getParent(j.getNode(),"ol,ul");if(!k||k.nodeName==(d=="bullist"?"OL":"UL")||c(k,h)){i.execCommand(d=="bullist"?"InsertUnorderedList":"InsertOrderedList")}if(h){k=l.getParent(j.getNode(),"ol,ul");if(k){l.setStyles(k,h.styles);k.removeAttribute("_mce_style")}}}e=b.createSplitButton(d,{title:"advanced."+d+"_desc","class":"mce_"+d,onclick:function(){g()}});e.onRenderMenu.add(function(i,j){j.onShowMenu.add(function(){var m=f.editor.dom,l=m.getParent(f.editor.selection.getNode(),"ol,ul"),k;if(l||h){k=f[d];a(j.items,function(n){var o=true;n.setSelected(0);if(l&&!n.isDisabled()){a(k,function(p){if(p.id==n.id){if(!c(l,p)){o=false;return false}}});if(o){n.setSelected(1)}}});if(!l){j.items[h.id].setSelected(1)}}});j.add({id:f.editor.dom.uniqueId(),title:"advlist.types","class":"mceMenuItemTitle"}).setDisabled(1);a(f[d],function(k){k.id=f.editor.dom.uniqueId();j.add({id:k.id,title:k.title,onclick:function(){h=k;g()}})})});return e}},getInfo:function(){return{longname:"Advanced lists",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advlist",tinymce.plugins.AdvListPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..a61887a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,154 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.AdvListPlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + function buildFormats(str) { + var formats = []; + + each(str.split(/,/), function(type) { + formats.push({ + title : 'advlist.' + (type == 'default' ? 'def' : type.replace(/-/g, '_')), + styles : { + listStyleType : type == 'default' ? '' : type + } + }); + }); + + return formats; + }; + + // Setup number formats from config or default + t.numlist = ed.getParam("advlist_number_styles") || buildFormats("default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman"); + t.bullist = ed.getParam("advlist_bullet_styles") || buildFormats("default,circle,disc,square"); + }, + + createControl: function(name, cm) { + var t = this, btn, format; + + if (name == 'numlist' || name == 'bullist') { + // Default to first item if it's a default item + if (t[name][0].title == 'advlist.def') + format = t[name][0]; + + function hasFormat(node, format) { + var state = true; + + each(format.styles, function(value, name) { + // Format doesn't match + if (t.editor.dom.getStyle(node, name) != value) { + state = false; + return false; + } + }); + + return state; + }; + + function applyListFormat() { + var list, ed = t.editor, dom = ed.dom, sel = ed.selection; + + // Check for existing list element + list = dom.getParent(sel.getNode(), 'ol,ul'); + + // Switch/add list type if needed + if (!list || list.nodeName == (name == 'bullist' ? 'OL' : 'UL') || hasFormat(list, format)) + ed.execCommand(name == 'bullist' ? 'InsertUnorderedList' : 'InsertOrderedList'); + + // Append styles to new list element + if (format) { + list = dom.getParent(sel.getNode(), 'ol,ul'); + + if (list) { + dom.setStyles(list, format.styles); + list.removeAttribute('_mce_style'); + } + } + }; + + btn = cm.createSplitButton(name, { + title : 'advanced.' + name + '_desc', + 'class' : 'mce_' + name, + onclick : function() { + applyListFormat(); + } + }); + + btn.onRenderMenu.add(function(btn, menu) { + menu.onShowMenu.add(function() { + var dom = t.editor.dom, list = dom.getParent(t.editor.selection.getNode(), 'ol,ul'), fmtList; + + if (list || format) { + fmtList = t[name]; + + // Unselect existing items + each(menu.items, function(item) { + var state = true; + + item.setSelected(0); + + if (list && !item.isDisabled()) { + each(fmtList, function(fmt) { + if (fmt.id == item.id) { + if (!hasFormat(list, fmt)) { + state = false; + return false; + } + } + }); + + if (state) + item.setSelected(1); + } + }); + + // Select the current format + if (!list) + menu.items[format.id].setSelected(1); + } + }); + + menu.add({id : t.editor.dom.uniqueId(), title : 'advlist.types', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + + each(t[name], function(item) { + item.id = t.editor.dom.uniqueId(); + + menu.add({id : item.id, title : item.title, onclick : function() { + format = item; + applyListFormat(); + }}); + }); + }); + + return btn; + } + }, + + getInfo : function() { + return { + longname : 'Advanced lists', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advlist', tinymce.plugins.AdvListPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js new file mode 100644 index 0000000..02d1697 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.AdvListPlugin",{init:function(b,c){var d=this;d.editor=b;function e(g){var f=[];a(g.split(/,/),function(h){f.push({title:"advlist."+(h=="default"?"def":h.replace(/-/g,"_")),styles:{listStyleType:h=="default"?"":h}})});return f}d.numlist=b.getParam("advlist_number_styles")||e("default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman");d.bullist=b.getParam("advlist_bullet_styles")||e("default,circle,disc,square")},createControl:function(d,b){var f=this,e,h;if(d=="numlist"||d=="bullist"){if(f[d][0].title=="advlist.def"){h=f[d][0]}function c(i,k){var j=true;a(k.styles,function(m,l){if(f.editor.dom.getStyle(i,l)!=m){j=false;return false}});return j}function g(){var k,i=f.editor,l=i.dom,j=i.selection;k=l.getParent(j.getNode(),"ol,ul");if(!k||k.nodeName==(d=="bullist"?"OL":"UL")||c(k,h)){i.execCommand(d=="bullist"?"InsertUnorderedList":"InsertOrderedList")}if(h){k=l.getParent(j.getNode(),"ol,ul");if(k){l.setStyles(k,h.styles);k.removeAttribute("_mce_style")}}}e=b.createSplitButton(d,{title:"advanced."+d+"_desc","class":"mce_"+d,onclick:function(){g()}});e.onRenderMenu.add(function(i,j){j.onShowMenu.add(function(){var m=f.editor.dom,l=m.getParent(f.editor.selection.getNode(),"ol,ul"),k;if(l||h){k=f[d];a(j.items,function(n){var o=true;n.setSelected(0);if(l&&!n.isDisabled()){a(k,function(p){if(p.id==n.id){if(!c(l,p)){o=false;return false}}});if(o){n.setSelected(1)}}});if(!l){j.items[h.id].setSelected(1)}}});j.add({id:f.editor.dom.uniqueId(),title:"advlist.types","class":"mceMenuItemTitle"}).setDisabled(1);a(f[d],function(k){k.id=f.editor.dom.uniqueId();j.add({id:k.id,title:k.title,onclick:function(){h=k;g()}})})});return e}},getInfo:function(){return{longname:"Advanced lists",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advlist",tinymce.plugins.AdvListPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js new file mode 100644 index 0000000..a61887a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js @@ -0,0 +1,154 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.AdvListPlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + function buildFormats(str) { + var formats = []; + + each(str.split(/,/), function(type) { + formats.push({ + title : 'advlist.' + (type == 'default' ? 'def' : type.replace(/-/g, '_')), + styles : { + listStyleType : type == 'default' ? '' : type + } + }); + }); + + return formats; + }; + + // Setup number formats from config or default + t.numlist = ed.getParam("advlist_number_styles") || buildFormats("default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman"); + t.bullist = ed.getParam("advlist_bullet_styles") || buildFormats("default,circle,disc,square"); + }, + + createControl: function(name, cm) { + var t = this, btn, format; + + if (name == 'numlist' || name == 'bullist') { + // Default to first item if it's a default item + if (t[name][0].title == 'advlist.def') + format = t[name][0]; + + function hasFormat(node, format) { + var state = true; + + each(format.styles, function(value, name) { + // Format doesn't match + if (t.editor.dom.getStyle(node, name) != value) { + state = false; + return false; + } + }); + + return state; + }; + + function applyListFormat() { + var list, ed = t.editor, dom = ed.dom, sel = ed.selection; + + // Check for existing list element + list = dom.getParent(sel.getNode(), 'ol,ul'); + + // Switch/add list type if needed + if (!list || list.nodeName == (name == 'bullist' ? 'OL' : 'UL') || hasFormat(list, format)) + ed.execCommand(name == 'bullist' ? 'InsertUnorderedList' : 'InsertOrderedList'); + + // Append styles to new list element + if (format) { + list = dom.getParent(sel.getNode(), 'ol,ul'); + + if (list) { + dom.setStyles(list, format.styles); + list.removeAttribute('_mce_style'); + } + } + }; + + btn = cm.createSplitButton(name, { + title : 'advanced.' + name + '_desc', + 'class' : 'mce_' + name, + onclick : function() { + applyListFormat(); + } + }); + + btn.onRenderMenu.add(function(btn, menu) { + menu.onShowMenu.add(function() { + var dom = t.editor.dom, list = dom.getParent(t.editor.selection.getNode(), 'ol,ul'), fmtList; + + if (list || format) { + fmtList = t[name]; + + // Unselect existing items + each(menu.items, function(item) { + var state = true; + + item.setSelected(0); + + if (list && !item.isDisabled()) { + each(fmtList, function(fmt) { + if (fmt.id == item.id) { + if (!hasFormat(list, fmt)) { + state = false; + return false; + } + } + }); + + if (state) + item.setSelected(1); + } + }); + + // Select the current format + if (!list) + menu.items[format.id].setSelected(1); + } + }); + + menu.add({id : t.editor.dom.uniqueId(), title : 'advlist.types', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + + each(t[name], function(item) { + item.id = t.editor.dom.uniqueId(); + + menu.add({id : item.id, title : item.title, onclick : function() { + format = item; + applyListFormat(); + }}); + }); + }); + + return btn; + } + }, + + getInfo : function() { + return { + longname : 'Advanced lists', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('advlist', tinymce.plugins.AdvListPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/all-wcprops new file mode 100644 index 0000000..c5e9c8c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 85 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autoresize +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/entries new file mode 100644 index 0000000..eb4b66b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autoresize +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.828957Z +c3ad307bdcc33f35517e923bbe924ee7 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1180 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.828957Z +dddcb195e54ce2a4a365487302396be2 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +3581 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..220b84a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AutoResizePlugin",{init:function(a,c){var d=this;if(a.getParam("fullscreen_is_enabled")){return}function b(){var h=a.getDoc(),e=h.body,j=h.documentElement,g=tinymce.DOM,i=d.autoresize_min_height,f;f=tinymce.isIE?e.scrollHeight:j.offsetHeight;if(f>d.autoresize_min_height){i=f}g.setStyle(g.get(a.id+"_ifr"),"height",i+"px");if(d.throbbing){a.setProgressState(false);a.setProgressState(true)}}d.editor=a;d.autoresize_min_height=a.getElement().offsetHeight;a.onInit.add(function(f,e){f.setProgressState(true);d.throbbing=true;f.getBody().style.overflowY="hidden"});a.onChange.add(b);a.onSetContent.add(b);a.onPaste.add(b);a.onKeyUp.add(b);a.onPostRender.add(b);a.onLoadContent.add(function(f,e){b();setTimeout(function(){b();f.setProgressState(false);d.throbbing=false},1250)});a.addCommand("mceAutoResize",b)},getInfo:function(){return{longname:"Auto Resize",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autoresize",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("autoresize",tinymce.plugins.AutoResizePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..37709f5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,117 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + /** + * Auto Resize + * + * This plugin automatically resizes the content area to fit its content height. + * It will retain a minimum height, which is the height of the content area when + * it's initialized. + */ + tinymce.create('tinymce.plugins.AutoResizePlugin', { + /** + * Initializes the plugin, this will be executed after the plugin has been created. + * This call is done before the editor instance has finished it's initialization so use the onInit event + * of the editor instance to intercept that event. + * + * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in. + * @param {string} url Absolute URL to where the plugin is located. + */ + init : function(ed, url) { + var t = this; + + if (ed.getParam('fullscreen_is_enabled')) + return; + + /** + * This method gets executed each time the editor needs to resize. + */ + function resize() { + var d = ed.getDoc(), b = d.body, de = d.documentElement, DOM = tinymce.DOM, resizeHeight = t.autoresize_min_height, myHeight; + + // Get height differently depending on the browser used + myHeight = tinymce.isIE ? b.scrollHeight : de.offsetHeight; + + // Don't make it smaller than the minimum height + if (myHeight > t.autoresize_min_height) + resizeHeight = myHeight; + + // Resize content element + DOM.setStyle(DOM.get(ed.id + '_ifr'), 'height', resizeHeight + 'px'); + + // if we're throbbing, we'll re-throb to match the new size + if (t.throbbing) { + ed.setProgressState(false); + ed.setProgressState(true); + } + }; + + t.editor = ed; + + // Define minimum height + t.autoresize_min_height = ed.getElement().offsetHeight; + + // Things to do when the editor is ready + ed.onInit.add(function(ed, l) { + // Show throbber until content area is resized properly + ed.setProgressState(true); + t.throbbing = true; + + // Hide scrollbars + ed.getBody().style.overflowY = "hidden"; + }); + + // Add appropriate listeners for resizing content area + ed.onChange.add(resize); + ed.onSetContent.add(resize); + ed.onPaste.add(resize); + ed.onKeyUp.add(resize); + ed.onPostRender.add(resize); + + ed.onLoadContent.add(function(ed, l) { + resize(); + + // Because the content area resizes when its content CSS loads, + // and we can't easily add a listener to its onload event, + // we'll just trigger a resize after a short loading period + setTimeout(function() { + resize(); + + // Disable throbber + ed.setProgressState(false); + t.throbbing = false; + }, 1250); + }); + + // Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample'); + ed.addCommand('mceAutoResize', resize); + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Auto Resize', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autoresize', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('autoresize', tinymce.plugins.AutoResizePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js new file mode 100644 index 0000000..220b84a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.AutoResizePlugin",{init:function(a,c){var d=this;if(a.getParam("fullscreen_is_enabled")){return}function b(){var h=a.getDoc(),e=h.body,j=h.documentElement,g=tinymce.DOM,i=d.autoresize_min_height,f;f=tinymce.isIE?e.scrollHeight:j.offsetHeight;if(f>d.autoresize_min_height){i=f}g.setStyle(g.get(a.id+"_ifr"),"height",i+"px");if(d.throbbing){a.setProgressState(false);a.setProgressState(true)}}d.editor=a;d.autoresize_min_height=a.getElement().offsetHeight;a.onInit.add(function(f,e){f.setProgressState(true);d.throbbing=true;f.getBody().style.overflowY="hidden"});a.onChange.add(b);a.onSetContent.add(b);a.onPaste.add(b);a.onKeyUp.add(b);a.onPostRender.add(b);a.onLoadContent.add(function(f,e){b();setTimeout(function(){b();f.setProgressState(false);d.throbbing=false},1250)});a.addCommand("mceAutoResize",b)},getInfo:function(){return{longname:"Auto Resize",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autoresize",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("autoresize",tinymce.plugins.AutoResizePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js new file mode 100644 index 0000000..37709f5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js @@ -0,0 +1,117 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + /** + * Auto Resize + * + * This plugin automatically resizes the content area to fit its content height. + * It will retain a minimum height, which is the height of the content area when + * it's initialized. + */ + tinymce.create('tinymce.plugins.AutoResizePlugin', { + /** + * Initializes the plugin, this will be executed after the plugin has been created. + * This call is done before the editor instance has finished it's initialization so use the onInit event + * of the editor instance to intercept that event. + * + * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in. + * @param {string} url Absolute URL to where the plugin is located. + */ + init : function(ed, url) { + var t = this; + + if (ed.getParam('fullscreen_is_enabled')) + return; + + /** + * This method gets executed each time the editor needs to resize. + */ + function resize() { + var d = ed.getDoc(), b = d.body, de = d.documentElement, DOM = tinymce.DOM, resizeHeight = t.autoresize_min_height, myHeight; + + // Get height differently depending on the browser used + myHeight = tinymce.isIE ? b.scrollHeight : de.offsetHeight; + + // Don't make it smaller than the minimum height + if (myHeight > t.autoresize_min_height) + resizeHeight = myHeight; + + // Resize content element + DOM.setStyle(DOM.get(ed.id + '_ifr'), 'height', resizeHeight + 'px'); + + // if we're throbbing, we'll re-throb to match the new size + if (t.throbbing) { + ed.setProgressState(false); + ed.setProgressState(true); + } + }; + + t.editor = ed; + + // Define minimum height + t.autoresize_min_height = ed.getElement().offsetHeight; + + // Things to do when the editor is ready + ed.onInit.add(function(ed, l) { + // Show throbber until content area is resized properly + ed.setProgressState(true); + t.throbbing = true; + + // Hide scrollbars + ed.getBody().style.overflowY = "hidden"; + }); + + // Add appropriate listeners for resizing content area + ed.onChange.add(resize); + ed.onSetContent.add(resize); + ed.onPaste.add(resize); + ed.onKeyUp.add(resize); + ed.onPostRender.add(resize); + + ed.onLoadContent.add(function(ed, l) { + resize(); + + // Because the content area resizes when its content CSS loads, + // and we can't easily add a listener to its onload event, + // we'll just trigger a resize after a short loading period + setTimeout(function() { + resize(); + + // Disable throbber + ed.setProgressState(false); + t.throbbing = false; + }, 1250); + }); + + // Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample'); + ed.addCommand('mceAutoResize', resize); + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Auto Resize', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autoresize', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('autoresize', tinymce.plugins.AutoResizePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/all-wcprops new file mode 100644 index 0000000..d546c91 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/entries new file mode 100644 index 0000000..d416e44 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/entries @@ -0,0 +1,102 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.852281Z +cac731283c908dc1dd2bda64424d964c +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +3525 + +langs +dir + +images +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.852281Z +7540f06776c6f3e5ca7d6f88b2f0ab35 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +13403 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..b33ebfb --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(e){var c="autosave",g="restoredraft",b=true,f,d,a=e.util.Dispatcher;e.create("tinymce.plugins.AutoSave",{init:function(i,j){var h=this,l=i.settings;h.editor=i;function k(n){var m={s:1000,m:60000};n=/^(\d+)([ms]?)$/.exec(""+n);return(n[2]?m[n[2]]:1)*parseInt(n)}e.each({ask_before_unload:b,interval:"30s",retention:"20m",minlength:50},function(n,m){m=c+"_"+m;if(l[m]===f){l[m]=n}});l.autosave_interval=k(l.autosave_interval);l.autosave_retention=k(l.autosave_retention);i.addButton(g,{title:c+".restore_content",onclick:function(){if(i.getContent().replace(/\s| |<\/?p[^>]*>|]*>/gi,"").length>0){i.windowManager.confirm(c+".warning_message",function(m){if(m){h.restoreDraft()}})}else{h.restoreDraft()}}});i.onNodeChange.add(function(){var m=i.controlManager;if(m.get(g)){m.setDisabled(g,!h.hasDraft())}});i.onInit.add(function(){if(i.controlManager.get(g)){h.setupStorage(i);setInterval(function(){h.storeDraft();i.nodeChanged()},l.autosave_interval)}});h.onStoreDraft=new a(h);h.onRestoreDraft=new a(h);h.onRemoveDraft=new a(h);if(!d){window.onbeforeunload=e.plugins.AutoSave._beforeUnloadHandler;d=b}},getInfo:function(){return{longname:"Auto save",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave",version:e.majorVersion+"."+e.minorVersion}},getExpDate:function(){return new Date(new Date().getTime()+this.editor.settings.autosave_retention).toUTCString()},setupStorage:function(i){var h=this,k=c+"_test",j="OK";h.key=c+i.id;e.each([function(){if(localStorage){localStorage.setItem(k,j);if(localStorage.getItem(k)===j){localStorage.removeItem(k);return localStorage}}},function(){if(sessionStorage){sessionStorage.setItem(k,j);if(sessionStorage.getItem(k)===j){sessionStorage.removeItem(k);return sessionStorage}}},function(){if(e.isIE){i.getElement().style.behavior="url('#default#userData')";return{autoExpires:b,setItem:function(l,n){var m=i.getElement();m.setAttribute(l,n);m.expires=h.getExpDate();m.save("TinyMCE")},getItem:function(l){var m=i.getElement();m.load("TinyMCE");return m.getAttribute(l)},removeItem:function(l){i.getElement().removeAttribute(l)}}}},],function(l){try{h.storage=l();if(h.storage){return false}}catch(m){}})},storeDraft:function(){var i=this,l=i.storage,j=i.editor,h,k;if(l){if(!l.getItem(i.key)&&!j.isDirty()){return}k=j.getContent();if(k.length>j.settings.autosave_minlength){h=i.getExpDate();if(!i.storage.autoExpires){i.storage.setItem(i.key+"_expires",h)}i.storage.setItem(i.key,k);i.onStoreDraft.dispatch(i,{expires:h,content:k})}}},restoreDraft:function(){var h=this,i=h.storage;if(i){content=i.getItem(h.key);if(content){h.editor.setContent(content);h.onRestoreDraft.dispatch(h,{content:content})}}},hasDraft:function(){var h=this,k=h.storage,i,j;if(k){j=!!k.getItem(h.key);if(j){if(!h.storage.autoExpires){i=new Date(k.getItem(h.key+"_expires"));if(new Date().getTime()]*>|]*>/gi, "").length > 0) { + // Show confirm dialog if the editor isn't empty + ed.windowManager.confirm( + PLUGIN_NAME + ".warning_message", + function(ok) { + if (ok) + self.restoreDraft(); + } + ); + } else + self.restoreDraft(); + } + }); + + // Enable/disable restoredraft button depending on if there is a draft stored or not + ed.onNodeChange.add(function() { + var controlManager = ed.controlManager; + + if (controlManager.get(RESTORE_DRAFT)) + controlManager.setDisabled(RESTORE_DRAFT, !self.hasDraft()); + }); + + ed.onInit.add(function() { + // Check if the user added the restore button, then setup auto storage logic + if (ed.controlManager.get(RESTORE_DRAFT)) { + // Setup storage engine + self.setupStorage(ed); + + // Auto save contents each interval time + setInterval(function() { + self.storeDraft(); + ed.nodeChanged(); + }, settings.autosave_interval); + } + }); + + /** + * This event gets fired when a draft is stored to local storage. + * + * @event onStoreDraft + * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event. + * @param {Object} draft Draft object containing the HTML contents of the editor. + */ + self.onStoreDraft = new Dispatcher(self); + + /** + * This event gets fired when a draft is restored from local storage. + * + * @event onStoreDraft + * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event. + * @param {Object} draft Draft object containing the HTML contents of the editor. + */ + self.onRestoreDraft = new Dispatcher(self); + + /** + * This event gets fired when a draft removed/expired. + * + * @event onRemoveDraft + * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event. + * @param {Object} draft Draft object containing the HTML contents of the editor. + */ + self.onRemoveDraft = new Dispatcher(self); + + // Add ask before unload dialog only add one unload handler + if (!unloadHandlerAdded) { + window.onbeforeunload = tinymce.plugins.AutoSave._beforeUnloadHandler; + unloadHandlerAdded = TRUE; + } + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @method getInfo + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Auto save', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + /** + * Returns an expiration date UTC string. + * + * @method getExpDate + * @return {String} Expiration date UTC string. + */ + getExpDate : function() { + return new Date( + new Date().getTime() + this.editor.settings.autosave_retention + ).toUTCString(); + }, + + /** + * This method will setup the storage engine. If the browser has support for it. + * + * @method setupStorage + */ + setupStorage : function(ed) { + var self = this, testKey = PLUGIN_NAME + '_test', testVal = "OK"; + + self.key = PLUGIN_NAME + ed.id; + + // Loop though each storage engine type until we find one that works + tinymce.each([ + function() { + // Try HTML5 Local Storage + if (localStorage) { + localStorage.setItem(testKey, testVal); + + if (localStorage.getItem(testKey) === testVal) { + localStorage.removeItem(testKey); + + return localStorage; + } + } + }, + + function() { + // Try HTML5 Session Storage + if (sessionStorage) { + sessionStorage.setItem(testKey, testVal); + + if (sessionStorage.getItem(testKey) === testVal) { + sessionStorage.removeItem(testKey); + + return sessionStorage; + } + } + }, + + function() { + // Try IE userData + if (tinymce.isIE) { + ed.getElement().style.behavior = "url('#default#userData')"; + + // Fake localStorage on old IE + return { + autoExpires : TRUE, + + setItem : function(key, value) { + var userDataElement = ed.getElement(); + + userDataElement.setAttribute(key, value); + userDataElement.expires = self.getExpDate(); + userDataElement.save("TinyMCE"); + }, + + getItem : function(key) { + var userDataElement = ed.getElement(); + + userDataElement.load("TinyMCE"); + + return userDataElement.getAttribute(key); + }, + + removeItem : function(key) { + ed.getElement().removeAttribute(key); + } + }; + } + }, + ], function(setup) { + // Try executing each function to find a suitable storage engine + try { + self.storage = setup(); + + if (self.storage) + return false; + } catch (e) { + // Ignore + } + }); + }, + + /** + * This method will store the current contents in the the storage engine. + * + * @method storeDraft + */ + storeDraft : function() { + var self = this, storage = self.storage, editor = self.editor, expires, content; + + // Is the contents dirty + if (storage) { + // If there is no existing key and the contents hasn't been changed since + // it's original value then there is no point in saving a draft + if (!storage.getItem(self.key) && !editor.isDirty()) + return; + + // Store contents if the contents if longer than the minlength of characters + content = editor.getContent(); + if (content.length > editor.settings.autosave_minlength) { + expires = self.getExpDate(); + + // Store expiration date if needed IE userData has auto expire built in + if (!self.storage.autoExpires) + self.storage.setItem(self.key + "_expires", expires); + + self.storage.setItem(self.key, content); + self.onStoreDraft.dispatch(self, { + expires : expires, + content : content + }); + } + } + }, + + /** + * This method will restore the contents from the storage engine back to the editor. + * + * @method restoreDraft + */ + restoreDraft : function() { + var self = this, storage = self.storage; + + if (storage) { + content = storage.getItem(self.key); + + if (content) { + self.editor.setContent(content); + self.onRestoreDraft.dispatch(self, { + content : content + }); + } + } + }, + + /** + * This method will return true/false if there is a local storage draft available. + * + * @method hasDraft + * @return {boolean} true/false state if there is a local draft. + */ + hasDraft : function() { + var self = this, storage = self.storage, expDate, exists; + + if (storage) { + // Does the item exist at all + exists = !!storage.getItem(self.key); + if (exists) { + // Storage needs autoexpire + if (!self.storage.autoExpires) { + expDate = new Date(storage.getItem(self.key + "_expires")); + + // Contents hasn't expired + if (new Date().getTime() < expDate.getTime()) + return TRUE; + + // Remove it if it has + self.removeDraft(); + } else + return TRUE; + } + } + + return false; + }, + + /** + * Removes the currently stored draft. + * + * @method removeDraft + */ + removeDraft : function() { + var self = this, storage = self.storage, key = self.key, content; + + if (storage) { + // Get current contents and remove the existing draft + content = storage.getItem(key); + storage.removeItem(key); + storage.removeItem(key + "_expires"); + + // Dispatch remove event if we had any contents + if (content) { + self.onRemoveDraft.dispatch(self, { + content : content + }); + } + } + }, + + "static" : { + // Internal unload handler will be called before the page is unloaded + _beforeUnloadHandler : function(e) { + var msg; + + tinymce.each(tinyMCE.editors, function(ed) { + // Store a draft for each editor instance + if (ed.plugins.autosave) + ed.plugins.autosave.storeDraft(); + + // Never ask in fullscreen mode + if (ed.getParam("fullscreen_is_enabled")) + return; + + // Setup a return message if the editor is dirty + if (!msg && ed.isDirty() && ed.getParam("autosave_ask_before_unload")) + msg = ed.getLang("autosave.unload_msg"); + }); + + return msg; + } + } + }); + + tinymce.PluginManager.add('autosave', tinymce.plugins.AutoSave); +})(tinymce); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js new file mode 100644 index 0000000..b33ebfb --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js @@ -0,0 +1 @@ +(function(e){var c="autosave",g="restoredraft",b=true,f,d,a=e.util.Dispatcher;e.create("tinymce.plugins.AutoSave",{init:function(i,j){var h=this,l=i.settings;h.editor=i;function k(n){var m={s:1000,m:60000};n=/^(\d+)([ms]?)$/.exec(""+n);return(n[2]?m[n[2]]:1)*parseInt(n)}e.each({ask_before_unload:b,interval:"30s",retention:"20m",minlength:50},function(n,m){m=c+"_"+m;if(l[m]===f){l[m]=n}});l.autosave_interval=k(l.autosave_interval);l.autosave_retention=k(l.autosave_retention);i.addButton(g,{title:c+".restore_content",onclick:function(){if(i.getContent().replace(/\s| |<\/?p[^>]*>|]*>/gi,"").length>0){i.windowManager.confirm(c+".warning_message",function(m){if(m){h.restoreDraft()}})}else{h.restoreDraft()}}});i.onNodeChange.add(function(){var m=i.controlManager;if(m.get(g)){m.setDisabled(g,!h.hasDraft())}});i.onInit.add(function(){if(i.controlManager.get(g)){h.setupStorage(i);setInterval(function(){h.storeDraft();i.nodeChanged()},l.autosave_interval)}});h.onStoreDraft=new a(h);h.onRestoreDraft=new a(h);h.onRemoveDraft=new a(h);if(!d){window.onbeforeunload=e.plugins.AutoSave._beforeUnloadHandler;d=b}},getInfo:function(){return{longname:"Auto save",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave",version:e.majorVersion+"."+e.minorVersion}},getExpDate:function(){return new Date(new Date().getTime()+this.editor.settings.autosave_retention).toUTCString()},setupStorage:function(i){var h=this,k=c+"_test",j="OK";h.key=c+i.id;e.each([function(){if(localStorage){localStorage.setItem(k,j);if(localStorage.getItem(k)===j){localStorage.removeItem(k);return localStorage}}},function(){if(sessionStorage){sessionStorage.setItem(k,j);if(sessionStorage.getItem(k)===j){sessionStorage.removeItem(k);return sessionStorage}}},function(){if(e.isIE){i.getElement().style.behavior="url('#default#userData')";return{autoExpires:b,setItem:function(l,n){var m=i.getElement();m.setAttribute(l,n);m.expires=h.getExpDate();m.save("TinyMCE")},getItem:function(l){var m=i.getElement();m.load("TinyMCE");return m.getAttribute(l)},removeItem:function(l){i.getElement().removeAttribute(l)}}}},],function(l){try{h.storage=l();if(h.storage){return false}}catch(m){}})},storeDraft:function(){var i=this,l=i.storage,j=i.editor,h,k;if(l){if(!l.getItem(i.key)&&!j.isDirty()){return}k=j.getContent();if(k.length>j.settings.autosave_minlength){h=i.getExpDate();if(!i.storage.autoExpires){i.storage.setItem(i.key+"_expires",h)}i.storage.setItem(i.key,k);i.onStoreDraft.dispatch(i,{expires:h,content:k})}}},restoreDraft:function(){var h=this,i=h.storage;if(i){content=i.getItem(h.key);if(content){h.editor.setContent(content);h.onRestoreDraft.dispatch(h,{content:content})}}},hasDraft:function(){var h=this,k=h.storage,i,j;if(k){j=!!k.getItem(h.key);if(j){if(!h.storage.autoExpires){i=new Date(k.getItem(h.key+"_expires"));if(new Date().getTime()]*>|]*>/gi, "").length > 0) { + // Show confirm dialog if the editor isn't empty + ed.windowManager.confirm( + PLUGIN_NAME + ".warning_message", + function(ok) { + if (ok) + self.restoreDraft(); + } + ); + } else + self.restoreDraft(); + } + }); + + // Enable/disable restoredraft button depending on if there is a draft stored or not + ed.onNodeChange.add(function() { + var controlManager = ed.controlManager; + + if (controlManager.get(RESTORE_DRAFT)) + controlManager.setDisabled(RESTORE_DRAFT, !self.hasDraft()); + }); + + ed.onInit.add(function() { + // Check if the user added the restore button, then setup auto storage logic + if (ed.controlManager.get(RESTORE_DRAFT)) { + // Setup storage engine + self.setupStorage(ed); + + // Auto save contents each interval time + setInterval(function() { + self.storeDraft(); + ed.nodeChanged(); + }, settings.autosave_interval); + } + }); + + /** + * This event gets fired when a draft is stored to local storage. + * + * @event onStoreDraft + * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event. + * @param {Object} draft Draft object containing the HTML contents of the editor. + */ + self.onStoreDraft = new Dispatcher(self); + + /** + * This event gets fired when a draft is restored from local storage. + * + * @event onStoreDraft + * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event. + * @param {Object} draft Draft object containing the HTML contents of the editor. + */ + self.onRestoreDraft = new Dispatcher(self); + + /** + * This event gets fired when a draft removed/expired. + * + * @event onRemoveDraft + * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event. + * @param {Object} draft Draft object containing the HTML contents of the editor. + */ + self.onRemoveDraft = new Dispatcher(self); + + // Add ask before unload dialog only add one unload handler + if (!unloadHandlerAdded) { + window.onbeforeunload = tinymce.plugins.AutoSave._beforeUnloadHandler; + unloadHandlerAdded = TRUE; + } + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @method getInfo + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Auto save', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + /** + * Returns an expiration date UTC string. + * + * @method getExpDate + * @return {String} Expiration date UTC string. + */ + getExpDate : function() { + return new Date( + new Date().getTime() + this.editor.settings.autosave_retention + ).toUTCString(); + }, + + /** + * This method will setup the storage engine. If the browser has support for it. + * + * @method setupStorage + */ + setupStorage : function(ed) { + var self = this, testKey = PLUGIN_NAME + '_test', testVal = "OK"; + + self.key = PLUGIN_NAME + ed.id; + + // Loop though each storage engine type until we find one that works + tinymce.each([ + function() { + // Try HTML5 Local Storage + if (localStorage) { + localStorage.setItem(testKey, testVal); + + if (localStorage.getItem(testKey) === testVal) { + localStorage.removeItem(testKey); + + return localStorage; + } + } + }, + + function() { + // Try HTML5 Session Storage + if (sessionStorage) { + sessionStorage.setItem(testKey, testVal); + + if (sessionStorage.getItem(testKey) === testVal) { + sessionStorage.removeItem(testKey); + + return sessionStorage; + } + } + }, + + function() { + // Try IE userData + if (tinymce.isIE) { + ed.getElement().style.behavior = "url('#default#userData')"; + + // Fake localStorage on old IE + return { + autoExpires : TRUE, + + setItem : function(key, value) { + var userDataElement = ed.getElement(); + + userDataElement.setAttribute(key, value); + userDataElement.expires = self.getExpDate(); + userDataElement.save("TinyMCE"); + }, + + getItem : function(key) { + var userDataElement = ed.getElement(); + + userDataElement.load("TinyMCE"); + + return userDataElement.getAttribute(key); + }, + + removeItem : function(key) { + ed.getElement().removeAttribute(key); + } + }; + } + }, + ], function(setup) { + // Try executing each function to find a suitable storage engine + try { + self.storage = setup(); + + if (self.storage) + return false; + } catch (e) { + // Ignore + } + }); + }, + + /** + * This method will store the current contents in the the storage engine. + * + * @method storeDraft + */ + storeDraft : function() { + var self = this, storage = self.storage, editor = self.editor, expires, content; + + // Is the contents dirty + if (storage) { + // If there is no existing key and the contents hasn't been changed since + // it's original value then there is no point in saving a draft + if (!storage.getItem(self.key) && !editor.isDirty()) + return; + + // Store contents if the contents if longer than the minlength of characters + content = editor.getContent(); + if (content.length > editor.settings.autosave_minlength) { + expires = self.getExpDate(); + + // Store expiration date if needed IE userData has auto expire built in + if (!self.storage.autoExpires) + self.storage.setItem(self.key + "_expires", expires); + + self.storage.setItem(self.key, content); + self.onStoreDraft.dispatch(self, { + expires : expires, + content : content + }); + } + } + }, + + /** + * This method will restore the contents from the storage engine back to the editor. + * + * @method restoreDraft + */ + restoreDraft : function() { + var self = this, storage = self.storage; + + if (storage) { + content = storage.getItem(self.key); + + if (content) { + self.editor.setContent(content); + self.onRestoreDraft.dispatch(self, { + content : content + }); + } + } + }, + + /** + * This method will return true/false if there is a local storage draft available. + * + * @method hasDraft + * @return {boolean} true/false state if there is a local draft. + */ + hasDraft : function() { + var self = this, storage = self.storage, expDate, exists; + + if (storage) { + // Does the item exist at all + exists = !!storage.getItem(self.key); + if (exists) { + // Storage needs autoexpire + if (!self.storage.autoExpires) { + expDate = new Date(storage.getItem(self.key + "_expires")); + + // Contents hasn't expired + if (new Date().getTime() < expDate.getTime()) + return TRUE; + + // Remove it if it has + self.removeDraft(); + } else + return TRUE; + } + } + + return false; + }, + + /** + * Removes the currently stored draft. + * + * @method removeDraft + */ + removeDraft : function() { + var self = this, storage = self.storage, key = self.key, content; + + if (storage) { + // Get current contents and remove the existing draft + content = storage.getItem(key); + storage.removeItem(key); + storage.removeItem(key + "_expires"); + + // Dispatch remove event if we had any contents + if (content) { + self.onRemoveDraft.dispatch(self, { + content : content + }); + } + } + }, + + "static" : { + // Internal unload handler will be called before the page is unloaded + _beforeUnloadHandler : function(e) { + var msg; + + tinymce.each(tinyMCE.editors, function(ed) { + // Store a draft for each editor instance + if (ed.plugins.autosave) + ed.plugins.autosave.storeDraft(); + + // Never ask in fullscreen mode + if (ed.getParam("fullscreen_is_enabled")) + return; + + // Setup a return message if the editor is dirty + if (!msg && ed.isDirty() && ed.getParam("autosave_ask_before_unload")) + msg = ed.getLang("autosave.unload_msg"); + }); + + return msg; + } + } + }); + + tinymce.PluginManager.add('autosave', tinymce.plugins.AutoSave); +})(tinymce); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/all-wcprops new file mode 100644 index 0000000..b2503a7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave/images +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/entries new file mode 100644 index 0000000..b0b21c5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/images/.svn/entries @@ -0,0 +1,28 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave/images +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/all-wcprops new file mode 100644 index 0000000..6528ccc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave/langs +END +en.js +K 25 +svn:wc:ra_dav:version-url +V 95 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/entries new file mode 100644 index 0000000..27d963f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/autosave/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en.js +file + + + + +2010-06-04T12:51:45.842281Z +a33b0322c949a6d74bde7fa164396984 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +256 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/text-base/en.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/text-base/en.js.svn-base new file mode 100644 index 0000000..fce6bd3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/.svn/text-base/en.js.svn-base @@ -0,0 +1,4 @@ +tinyMCE.addI18n('en.autosave',{ +restore_content: "Restore auto-saved content", +warning_message: "If you restore the saved content, you will lose all the content that is currently in the editor.\n\nAre you sure you want to restore the saved content?" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js new file mode 100644 index 0000000..fce6bd3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js @@ -0,0 +1,4 @@ +tinyMCE.addI18n('en.autosave',{ +restore_content: "Restore auto-saved content", +warning_message: "If you restore the saved content, you will lose all the content that is currently in the editor.\n\nAre you sure you want to restore the saved content?" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/all-wcprops new file mode 100644 index 0000000..0dc5b13 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 81 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/bbcode +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/entries new file mode 100644 index 0000000..a49e487 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/bbcode +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.628948Z +0539055daa100b90540707c5eb5ea67b +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +3224 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.632281Z +5b9a03862f199c73456dbbea745bc29d +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4354 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..930fdff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.BBCodePlugin",{init:function(a,b){var d=this,c=a.getParam("bbcode_dialect","punbb").toLowerCase();a.onBeforeSetContent.add(function(e,f){f.content=d["_"+c+"_bbcode2html"](f.content)});a.onPostProcess.add(function(e,f){if(f.set){f.content=d["_"+c+"_bbcode2html"](f.content)}if(f.get){f.content=d["_"+c+"_html2bbcode"](f.content)}})},getInfo:function(){return{longname:"BBCode Plugin",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_punbb_html2bbcode:function(a){a=tinymce.trim(a);function b(c,d){a=a.replace(c,d)}b(/(.*?)<\/a>/gi,"[url=$1]$2[/url]");b(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");b(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");b(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");b(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");b(/(.*?)<\/span>/gi,"[color=$1]$2[/color]");b(/(.*?)<\/font>/gi,"[color=$1]$2[/color]");b(/(.*?)<\/span>/gi,"[size=$1]$2[/size]");b(/(.*?)<\/font>/gi,"$1");b(//gi,"[img]$1[/img]");b(/(.*?)<\/span>/gi,"[code]$1[/code]");b(/(.*?)<\/span>/gi,"[quote]$1[/quote]");b(/(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]");b(/(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]");b(/(.*?)<\/em>/gi,"[code][i]$1[/i][/code]");b(/(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]");b(/(.*?)<\/u>/gi,"[code][u]$1[/u][/code]");b(/(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]");b(/<\/(strong|b)>/gi,"[/b]");b(/<(strong|b)>/gi,"[b]");b(/<\/(em|i)>/gi,"[/i]");b(/<(em|i)>/gi,"[i]");b(/<\/u>/gi,"[/u]");b(/(.*?)<\/span>/gi,"[u]$1[/u]");b(//gi,"[u]");b(/]*>/gi,"[quote]");b(/<\/blockquote>/gi,"[/quote]");b(/
/gi,"\n");b(//gi,"\n");b(/
/gi,"\n");b(/

/gi,"");b(/<\/p>/gi,"\n");b(/ /gi," ");b(/"/gi,'"');b(/</gi,"<");b(/>/gi,">");b(/&/gi,"&");return a},_punbb_bbcode2html:function(a){a=tinymce.trim(a);function b(c,d){a=a.replace(c,d)}b(/\n/gi,"
");b(/\[b\]/gi,"");b(/\[\/b\]/gi,"");b(/\[i\]/gi,"");b(/\[\/i\]/gi,"");b(/\[u\]/gi,"");b(/\[\/u\]/gi,"");b(/\[url=([^\]]+)\](.*?)\[\/url\]/gi,'$2');b(/\[url\](.*?)\[\/url\]/gi,'$1');b(/\[img\](.*?)\[\/img\]/gi,'');b(/\[color=(.*?)\](.*?)\[\/color\]/gi,'$2');b(/\[code\](.*?)\[\/code\]/gi,'$1 ');b(/\[quote.*?\](.*?)\[\/quote\]/gi,'$1 ');return a}});tinymce.PluginManager.add("bbcode",tinymce.plugins.BBCodePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..5586637 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,120 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.BBCodePlugin', { + init : function(ed, url) { + var t = this, dialect = ed.getParam('bbcode_dialect', 'punbb').toLowerCase(); + + ed.onBeforeSetContent.add(function(ed, o) { + o.content = t['_' + dialect + '_bbcode2html'](o.content); + }); + + ed.onPostProcess.add(function(ed, o) { + if (o.set) + o.content = t['_' + dialect + '_bbcode2html'](o.content); + + if (o.get) + o.content = t['_' + dialect + '_html2bbcode'](o.content); + }); + }, + + getInfo : function() { + return { + longname : 'BBCode Plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + // HTML -> BBCode in PunBB dialect + _punbb_html2bbcode : function(s) { + s = tinymce.trim(s); + + function rep(re, str) { + s = s.replace(re, str); + }; + + // example: to [b] + rep(/(.*?)<\/a>/gi,"[url=$1]$2[/url]"); + rep(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"); + rep(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"); + rep(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"); + rep(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"); + rep(/(.*?)<\/span>/gi,"[color=$1]$2[/color]"); + rep(/(.*?)<\/font>/gi,"[color=$1]$2[/color]"); + rep(/(.*?)<\/span>/gi,"[size=$1]$2[/size]"); + rep(/(.*?)<\/font>/gi,"$1"); + rep(//gi,"[img]$1[/img]"); + rep(/(.*?)<\/span>/gi,"[code]$1[/code]"); + rep(/(.*?)<\/span>/gi,"[quote]$1[/quote]"); + rep(/(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]"); + rep(/(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]"); + rep(/(.*?)<\/em>/gi,"[code][i]$1[/i][/code]"); + rep(/(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]"); + rep(/(.*?)<\/u>/gi,"[code][u]$1[/u][/code]"); + rep(/(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]"); + rep(/<\/(strong|b)>/gi,"[/b]"); + rep(/<(strong|b)>/gi,"[b]"); + rep(/<\/(em|i)>/gi,"[/i]"); + rep(/<(em|i)>/gi,"[i]"); + rep(/<\/u>/gi,"[/u]"); + rep(/(.*?)<\/span>/gi,"[u]$1[/u]"); + rep(//gi,"[u]"); + rep(/]*>/gi,"[quote]"); + rep(/<\/blockquote>/gi,"[/quote]"); + rep(/
/gi,"\n"); + rep(//gi,"\n"); + rep(/
/gi,"\n"); + rep(/

/gi,""); + rep(/<\/p>/gi,"\n"); + rep(/ /gi," "); + rep(/"/gi,"\""); + rep(/</gi,"<"); + rep(/>/gi,">"); + rep(/&/gi,"&"); + + return s; + }, + + // BBCode -> HTML from PunBB dialect + _punbb_bbcode2html : function(s) { + s = tinymce.trim(s); + + function rep(re, str) { + s = s.replace(re, str); + }; + + // example: [b] to + rep(/\n/gi,"
"); + rep(/\[b\]/gi,""); + rep(/\[\/b\]/gi,""); + rep(/\[i\]/gi,""); + rep(/\[\/i\]/gi,""); + rep(/\[u\]/gi,""); + rep(/\[\/u\]/gi,""); + rep(/\[url=([^\]]+)\](.*?)\[\/url\]/gi,"$2"); + rep(/\[url\](.*?)\[\/url\]/gi,"$1"); + rep(/\[img\](.*?)\[\/img\]/gi,""); + rep(/\[color=(.*?)\](.*?)\[\/color\]/gi,"$2"); + rep(/\[code\](.*?)\[\/code\]/gi,"$1 "); + rep(/\[quote.*?\](.*?)\[\/quote\]/gi,"$1 "); + + return s; + } + }); + + // Register plugin + tinymce.PluginManager.add('bbcode', tinymce.plugins.BBCodePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js new file mode 100644 index 0000000..930fdff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.BBCodePlugin",{init:function(a,b){var d=this,c=a.getParam("bbcode_dialect","punbb").toLowerCase();a.onBeforeSetContent.add(function(e,f){f.content=d["_"+c+"_bbcode2html"](f.content)});a.onPostProcess.add(function(e,f){if(f.set){f.content=d["_"+c+"_bbcode2html"](f.content)}if(f.get){f.content=d["_"+c+"_html2bbcode"](f.content)}})},getInfo:function(){return{longname:"BBCode Plugin",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_punbb_html2bbcode:function(a){a=tinymce.trim(a);function b(c,d){a=a.replace(c,d)}b(/(.*?)<\/a>/gi,"[url=$1]$2[/url]");b(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");b(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");b(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");b(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");b(/(.*?)<\/span>/gi,"[color=$1]$2[/color]");b(/(.*?)<\/font>/gi,"[color=$1]$2[/color]");b(/(.*?)<\/span>/gi,"[size=$1]$2[/size]");b(/(.*?)<\/font>/gi,"$1");b(//gi,"[img]$1[/img]");b(/(.*?)<\/span>/gi,"[code]$1[/code]");b(/(.*?)<\/span>/gi,"[quote]$1[/quote]");b(/(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]");b(/(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]");b(/(.*?)<\/em>/gi,"[code][i]$1[/i][/code]");b(/(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]");b(/(.*?)<\/u>/gi,"[code][u]$1[/u][/code]");b(/(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]");b(/<\/(strong|b)>/gi,"[/b]");b(/<(strong|b)>/gi,"[b]");b(/<\/(em|i)>/gi,"[/i]");b(/<(em|i)>/gi,"[i]");b(/<\/u>/gi,"[/u]");b(/(.*?)<\/span>/gi,"[u]$1[/u]");b(//gi,"[u]");b(/]*>/gi,"[quote]");b(/<\/blockquote>/gi,"[/quote]");b(/
/gi,"\n");b(//gi,"\n");b(/
/gi,"\n");b(/

/gi,"");b(/<\/p>/gi,"\n");b(/ /gi," ");b(/"/gi,'"');b(/</gi,"<");b(/>/gi,">");b(/&/gi,"&");return a},_punbb_bbcode2html:function(a){a=tinymce.trim(a);function b(c,d){a=a.replace(c,d)}b(/\n/gi,"
");b(/\[b\]/gi,"");b(/\[\/b\]/gi,"");b(/\[i\]/gi,"");b(/\[\/i\]/gi,"");b(/\[u\]/gi,"");b(/\[\/u\]/gi,"");b(/\[url=([^\]]+)\](.*?)\[\/url\]/gi,'$2');b(/\[url\](.*?)\[\/url\]/gi,'$1');b(/\[img\](.*?)\[\/img\]/gi,'');b(/\[color=(.*?)\](.*?)\[\/color\]/gi,'$2');b(/\[code\](.*?)\[\/code\]/gi,'$1 ');b(/\[quote.*?\](.*?)\[\/quote\]/gi,'$1 ');return a}});tinymce.PluginManager.add("bbcode",tinymce.plugins.BBCodePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js new file mode 100644 index 0000000..5586637 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js @@ -0,0 +1,120 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.BBCodePlugin', { + init : function(ed, url) { + var t = this, dialect = ed.getParam('bbcode_dialect', 'punbb').toLowerCase(); + + ed.onBeforeSetContent.add(function(ed, o) { + o.content = t['_' + dialect + '_bbcode2html'](o.content); + }); + + ed.onPostProcess.add(function(ed, o) { + if (o.set) + o.content = t['_' + dialect + '_bbcode2html'](o.content); + + if (o.get) + o.content = t['_' + dialect + '_html2bbcode'](o.content); + }); + }, + + getInfo : function() { + return { + longname : 'BBCode Plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + // HTML -> BBCode in PunBB dialect + _punbb_html2bbcode : function(s) { + s = tinymce.trim(s); + + function rep(re, str) { + s = s.replace(re, str); + }; + + // example: to [b] + rep(/(.*?)<\/a>/gi,"[url=$1]$2[/url]"); + rep(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"); + rep(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"); + rep(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"); + rep(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"); + rep(/(.*?)<\/span>/gi,"[color=$1]$2[/color]"); + rep(/(.*?)<\/font>/gi,"[color=$1]$2[/color]"); + rep(/(.*?)<\/span>/gi,"[size=$1]$2[/size]"); + rep(/(.*?)<\/font>/gi,"$1"); + rep(//gi,"[img]$1[/img]"); + rep(/(.*?)<\/span>/gi,"[code]$1[/code]"); + rep(/(.*?)<\/span>/gi,"[quote]$1[/quote]"); + rep(/(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]"); + rep(/(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]"); + rep(/(.*?)<\/em>/gi,"[code][i]$1[/i][/code]"); + rep(/(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]"); + rep(/(.*?)<\/u>/gi,"[code][u]$1[/u][/code]"); + rep(/(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]"); + rep(/<\/(strong|b)>/gi,"[/b]"); + rep(/<(strong|b)>/gi,"[b]"); + rep(/<\/(em|i)>/gi,"[/i]"); + rep(/<(em|i)>/gi,"[i]"); + rep(/<\/u>/gi,"[/u]"); + rep(/(.*?)<\/span>/gi,"[u]$1[/u]"); + rep(//gi,"[u]"); + rep(/]*>/gi,"[quote]"); + rep(/<\/blockquote>/gi,"[/quote]"); + rep(/
/gi,"\n"); + rep(//gi,"\n"); + rep(/
/gi,"\n"); + rep(/

/gi,""); + rep(/<\/p>/gi,"\n"); + rep(/ /gi," "); + rep(/"/gi,"\""); + rep(/</gi,"<"); + rep(/>/gi,">"); + rep(/&/gi,"&"); + + return s; + }, + + // BBCode -> HTML from PunBB dialect + _punbb_bbcode2html : function(s) { + s = tinymce.trim(s); + + function rep(re, str) { + s = s.replace(re, str); + }; + + // example: [b] to + rep(/\n/gi,"
"); + rep(/\[b\]/gi,""); + rep(/\[\/b\]/gi,""); + rep(/\[i\]/gi,""); + rep(/\[\/i\]/gi,""); + rep(/\[u\]/gi,""); + rep(/\[\/u\]/gi,""); + rep(/\[url=([^\]]+)\](.*?)\[\/url\]/gi,"$2"); + rep(/\[url\](.*?)\[\/url\]/gi,"$1"); + rep(/\[img\](.*?)\[\/img\]/gi,""); + rep(/\[color=(.*?)\](.*?)\[\/color\]/gi,"$2"); + rep(/\[code\](.*?)\[\/code\]/gi,"$1 "); + rep(/\[quote.*?\](.*?)\[\/quote\]/gi,"$1 "); + + return s; + } + }); + + // Register plugin + tinymce.PluginManager.add('bbcode', tinymce.plugins.BBCodePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/all-wcprops new file mode 100644 index 0000000..4c282e6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/contextmenu +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/entries new file mode 100644 index 0000000..192a94f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/contextmenu +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.475614Z +615aede93687b7373e0518026a69d65f +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2140 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.475614Z +6c7789414ef4748c876d8c6d5f205562 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4199 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..24ee2eb --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var a=tinymce.dom.Event,c=tinymce.each,b=tinymce.DOM;tinymce.create("tinymce.plugins.ContextMenu",{init:function(d){var f=this;f.editor=d;f.onContextMenu=new tinymce.util.Dispatcher(this);d.onContextMenu.add(function(g,h){if(!h.ctrlKey){f._getMenu(g).showMenu(h.clientX,h.clientY);a.add(g.getDoc(),"click",e);a.cancel(h)}});function e(){if(f._menu){f._menu.removeAll();f._menu.destroy();a.remove(d.getDoc(),"click",e)}}d.onMouseDown.add(e);d.onKeyDown.add(e)},getInfo:function(){return{longname:"Contextmenu",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_getMenu:function(h){var l=this,f=l._menu,i=h.selection,e=i.isCollapsed(),d=i.getNode()||h.getBody(),g,k,j;if(f){f.removeAll();f.destroy()}k=b.getPos(h.getContentAreaContainer());j=b.getPos(h.getContainer());f=h.controlManager.createDropMenu("contextmenu",{offset_x:k.x+h.getParam("contextmenu_offset_x",0),offset_y:k.y+h.getParam("contextmenu_offset_y",0),constrain:1});l._menu=f;f.add({title:"advanced.cut_desc",icon:"cut",cmd:"Cut"}).setDisabled(e);f.add({title:"advanced.copy_desc",icon:"copy",cmd:"Copy"}).setDisabled(e);f.add({title:"advanced.paste_desc",icon:"paste",cmd:"Paste"});if((d.nodeName=="A"&&!h.dom.getAttrib(d,"name"))||!e){f.addSeparator();f.add({title:"advanced.link_desc",icon:"link",cmd:h.plugins.advlink?"mceAdvLink":"mceLink",ui:true});f.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"})}f.addSeparator();f.add({title:"advanced.image_desc",icon:"image",cmd:h.plugins.advimage?"mceAdvImage":"mceImage",ui:true});f.addSeparator();g=f.addMenu({title:"contextmenu.align"});g.add({title:"contextmenu.left",icon:"justifyleft",cmd:"JustifyLeft"});g.add({title:"contextmenu.center",icon:"justifycenter",cmd:"JustifyCenter"});g.add({title:"contextmenu.right",icon:"justifyright",cmd:"JustifyRight"});g.add({title:"contextmenu.full",icon:"justifyfull",cmd:"JustifyFull"});l.onContextMenu.dispatch(l,f,d,e);return f}});tinymce.PluginManager.add("contextmenu",tinymce.plugins.ContextMenu)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..26e9ce2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,127 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var Event = tinymce.dom.Event, each = tinymce.each, DOM = tinymce.DOM; + + /** + * This plugin a context menu to TinyMCE editor instances. + * + * @class tinymce.plugins.ContextMenu + */ + tinymce.create('tinymce.plugins.ContextMenu', { + /** + * Initializes the plugin, this will be executed after the plugin has been created. + * This call is done before the editor instance has finished it's initialization so use the onInit event + * of the editor instance to intercept that event. + * + * @method init + * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in. + * @param {string} url Absolute URL to where the plugin is located. + */ + init : function(ed) { + var t = this; + + t.editor = ed; + + /** + * This event gets fired when the context menu is shown. + * + * @event onContextMenu + * @param {tinymce.plugins.ContextMenu} sender Plugin instance sending the event. + * @param {tinymce.ui.DropMenu} menu Drop down menu to fill with more items if needed. + */ + t.onContextMenu = new tinymce.util.Dispatcher(this); + + ed.onContextMenu.add(function(ed, e) { + if (!e.ctrlKey) { + t._getMenu(ed).showMenu(e.clientX, e.clientY); + Event.add(ed.getDoc(), 'click', hide); + Event.cancel(e); + } + }); + + function hide() { + if (t._menu) { + t._menu.removeAll(); + t._menu.destroy(); + Event.remove(ed.getDoc(), 'click', hide); + } + }; + + ed.onMouseDown.add(hide); + ed.onKeyDown.add(hide); + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @method getInfo + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Contextmenu', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _getMenu : function(ed) { + var t = this, m = t._menu, se = ed.selection, col = se.isCollapsed(), el = se.getNode() || ed.getBody(), am, p1, p2; + + if (m) { + m.removeAll(); + m.destroy(); + } + + p1 = DOM.getPos(ed.getContentAreaContainer()); + p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('contextmenu', { + offset_x : p1.x + ed.getParam('contextmenu_offset_x', 0), + offset_y : p1.y + ed.getParam('contextmenu_offset_y', 0), + constrain : 1 + }); + + t._menu = m; + + m.add({title : 'advanced.cut_desc', icon : 'cut', cmd : 'Cut'}).setDisabled(col); + m.add({title : 'advanced.copy_desc', icon : 'copy', cmd : 'Copy'}).setDisabled(col); + m.add({title : 'advanced.paste_desc', icon : 'paste', cmd : 'Paste'}); + + if ((el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) || !col) { + m.addSeparator(); + m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true}); + m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'}); + } + + m.addSeparator(); + m.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true}); + + m.addSeparator(); + am = m.addMenu({title : 'contextmenu.align'}); + am.add({title : 'contextmenu.left', icon : 'justifyleft', cmd : 'JustifyLeft'}); + am.add({title : 'contextmenu.center', icon : 'justifycenter', cmd : 'JustifyCenter'}); + am.add({title : 'contextmenu.right', icon : 'justifyright', cmd : 'JustifyRight'}); + am.add({title : 'contextmenu.full', icon : 'justifyfull', cmd : 'JustifyFull'}); + + t.onContextMenu.dispatch(t, m, el, col); + + return m; + } + }); + + // Register plugin + tinymce.PluginManager.add('contextmenu', tinymce.plugins.ContextMenu); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js new file mode 100644 index 0000000..24ee2eb --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.dom.Event,c=tinymce.each,b=tinymce.DOM;tinymce.create("tinymce.plugins.ContextMenu",{init:function(d){var f=this;f.editor=d;f.onContextMenu=new tinymce.util.Dispatcher(this);d.onContextMenu.add(function(g,h){if(!h.ctrlKey){f._getMenu(g).showMenu(h.clientX,h.clientY);a.add(g.getDoc(),"click",e);a.cancel(h)}});function e(){if(f._menu){f._menu.removeAll();f._menu.destroy();a.remove(d.getDoc(),"click",e)}}d.onMouseDown.add(e);d.onKeyDown.add(e)},getInfo:function(){return{longname:"Contextmenu",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_getMenu:function(h){var l=this,f=l._menu,i=h.selection,e=i.isCollapsed(),d=i.getNode()||h.getBody(),g,k,j;if(f){f.removeAll();f.destroy()}k=b.getPos(h.getContentAreaContainer());j=b.getPos(h.getContainer());f=h.controlManager.createDropMenu("contextmenu",{offset_x:k.x+h.getParam("contextmenu_offset_x",0),offset_y:k.y+h.getParam("contextmenu_offset_y",0),constrain:1});l._menu=f;f.add({title:"advanced.cut_desc",icon:"cut",cmd:"Cut"}).setDisabled(e);f.add({title:"advanced.copy_desc",icon:"copy",cmd:"Copy"}).setDisabled(e);f.add({title:"advanced.paste_desc",icon:"paste",cmd:"Paste"});if((d.nodeName=="A"&&!h.dom.getAttrib(d,"name"))||!e){f.addSeparator();f.add({title:"advanced.link_desc",icon:"link",cmd:h.plugins.advlink?"mceAdvLink":"mceLink",ui:true});f.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"})}f.addSeparator();f.add({title:"advanced.image_desc",icon:"image",cmd:h.plugins.advimage?"mceAdvImage":"mceImage",ui:true});f.addSeparator();g=f.addMenu({title:"contextmenu.align"});g.add({title:"contextmenu.left",icon:"justifyleft",cmd:"JustifyLeft"});g.add({title:"contextmenu.center",icon:"justifycenter",cmd:"JustifyCenter"});g.add({title:"contextmenu.right",icon:"justifyright",cmd:"JustifyRight"});g.add({title:"contextmenu.full",icon:"justifyfull",cmd:"JustifyFull"});l.onContextMenu.dispatch(l,f,d,e);return f}});tinymce.PluginManager.add("contextmenu",tinymce.plugins.ContextMenu)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js new file mode 100644 index 0000000..26e9ce2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js @@ -0,0 +1,127 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var Event = tinymce.dom.Event, each = tinymce.each, DOM = tinymce.DOM; + + /** + * This plugin a context menu to TinyMCE editor instances. + * + * @class tinymce.plugins.ContextMenu + */ + tinymce.create('tinymce.plugins.ContextMenu', { + /** + * Initializes the plugin, this will be executed after the plugin has been created. + * This call is done before the editor instance has finished it's initialization so use the onInit event + * of the editor instance to intercept that event. + * + * @method init + * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in. + * @param {string} url Absolute URL to where the plugin is located. + */ + init : function(ed) { + var t = this; + + t.editor = ed; + + /** + * This event gets fired when the context menu is shown. + * + * @event onContextMenu + * @param {tinymce.plugins.ContextMenu} sender Plugin instance sending the event. + * @param {tinymce.ui.DropMenu} menu Drop down menu to fill with more items if needed. + */ + t.onContextMenu = new tinymce.util.Dispatcher(this); + + ed.onContextMenu.add(function(ed, e) { + if (!e.ctrlKey) { + t._getMenu(ed).showMenu(e.clientX, e.clientY); + Event.add(ed.getDoc(), 'click', hide); + Event.cancel(e); + } + }); + + function hide() { + if (t._menu) { + t._menu.removeAll(); + t._menu.destroy(); + Event.remove(ed.getDoc(), 'click', hide); + } + }; + + ed.onMouseDown.add(hide); + ed.onKeyDown.add(hide); + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @method getInfo + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Contextmenu', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _getMenu : function(ed) { + var t = this, m = t._menu, se = ed.selection, col = se.isCollapsed(), el = se.getNode() || ed.getBody(), am, p1, p2; + + if (m) { + m.removeAll(); + m.destroy(); + } + + p1 = DOM.getPos(ed.getContentAreaContainer()); + p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('contextmenu', { + offset_x : p1.x + ed.getParam('contextmenu_offset_x', 0), + offset_y : p1.y + ed.getParam('contextmenu_offset_y', 0), + constrain : 1 + }); + + t._menu = m; + + m.add({title : 'advanced.cut_desc', icon : 'cut', cmd : 'Cut'}).setDisabled(col); + m.add({title : 'advanced.copy_desc', icon : 'copy', cmd : 'Copy'}).setDisabled(col); + m.add({title : 'advanced.paste_desc', icon : 'paste', cmd : 'Paste'}); + + if ((el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) || !col) { + m.addSeparator(); + m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true}); + m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'}); + } + + m.addSeparator(); + m.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true}); + + m.addSeparator(); + am = m.addMenu({title : 'contextmenu.align'}); + am.add({title : 'contextmenu.left', icon : 'justifyleft', cmd : 'JustifyLeft'}); + am.add({title : 'contextmenu.center', icon : 'justifycenter', cmd : 'JustifyCenter'}); + am.add({title : 'contextmenu.right', icon : 'justifyright', cmd : 'JustifyRight'}); + am.add({title : 'contextmenu.full', icon : 'justifyfull', cmd : 'JustifyFull'}); + + t.onContextMenu.dispatch(t, m, el, col); + + return m; + } + }); + + // Register plugin + tinymce.PluginManager.add('contextmenu', tinymce.plugins.ContextMenu); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/all-wcprops new file mode 100644 index 0000000..dcc1f1e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/directionality +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/entries new file mode 100644 index 0000000..b854051 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/directionality +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.808949Z +653c3a89058b610fd12242faf4f01cdf +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1333 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.808949Z +f55b4200e9f8ffb2ffb7c7c17e19b30a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2075 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..bce8e73 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Directionality",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceDirectionLTR",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,"dir")!="ltr"){a.dom.setAttrib(d,"dir","ltr")}else{a.dom.setAttrib(d,"dir","")}}a.nodeChanged()});a.addCommand("mceDirectionRTL",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,"dir")!="rtl"){a.dom.setAttrib(d,"dir","rtl")}else{a.dom.setAttrib(d,"dir","")}}a.nodeChanged()});a.addButton("ltr",{title:"directionality.ltr_desc",cmd:"mceDirectionLTR"});a.addButton("rtl",{title:"directionality.rtl_desc",cmd:"mceDirectionRTL"});a.onNodeChange.add(c._nodeChange,c)},getInfo:function(){return{longname:"Directionality",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,e){var d=b.dom,c;e=d.getParent(e,d.isBlock);if(!e){a.setDisabled("ltr",1);a.setDisabled("rtl",1);return}c=d.getAttrib(e,"dir");a.setActive("ltr",c=="ltr");a.setDisabled("ltr",0);a.setActive("rtl",c=="rtl");a.setDisabled("rtl",0)}});tinymce.PluginManager.add("directionality",tinymce.plugins.Directionality)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..4444959 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,82 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Directionality', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + ed.addCommand('mceDirectionLTR', function() { + var e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock); + + if (e) { + if (ed.dom.getAttrib(e, "dir") != "ltr") + ed.dom.setAttrib(e, "dir", "ltr"); + else + ed.dom.setAttrib(e, "dir", ""); + } + + ed.nodeChanged(); + }); + + ed.addCommand('mceDirectionRTL', function() { + var e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock); + + if (e) { + if (ed.dom.getAttrib(e, "dir") != "rtl") + ed.dom.setAttrib(e, "dir", "rtl"); + else + ed.dom.setAttrib(e, "dir", ""); + } + + ed.nodeChanged(); + }); + + ed.addButton('ltr', {title : 'directionality.ltr_desc', cmd : 'mceDirectionLTR'}); + ed.addButton('rtl', {title : 'directionality.rtl_desc', cmd : 'mceDirectionRTL'}); + + ed.onNodeChange.add(t._nodeChange, t); + }, + + getInfo : function() { + return { + longname : 'Directionality', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + _nodeChange : function(ed, cm, n) { + var dom = ed.dom, dir; + + n = dom.getParent(n, dom.isBlock); + if (!n) { + cm.setDisabled('ltr', 1); + cm.setDisabled('rtl', 1); + return; + } + + dir = dom.getAttrib(n, 'dir'); + cm.setActive('ltr', dir == "ltr"); + cm.setDisabled('ltr', 0); + cm.setActive('rtl', dir == "rtl"); + cm.setDisabled('rtl', 0); + } + }); + + // Register plugin + tinymce.PluginManager.add('directionality', tinymce.plugins.Directionality); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js new file mode 100644 index 0000000..bce8e73 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Directionality",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceDirectionLTR",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,"dir")!="ltr"){a.dom.setAttrib(d,"dir","ltr")}else{a.dom.setAttrib(d,"dir","")}}a.nodeChanged()});a.addCommand("mceDirectionRTL",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,"dir")!="rtl"){a.dom.setAttrib(d,"dir","rtl")}else{a.dom.setAttrib(d,"dir","")}}a.nodeChanged()});a.addButton("ltr",{title:"directionality.ltr_desc",cmd:"mceDirectionLTR"});a.addButton("rtl",{title:"directionality.rtl_desc",cmd:"mceDirectionRTL"});a.onNodeChange.add(c._nodeChange,c)},getInfo:function(){return{longname:"Directionality",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,e){var d=b.dom,c;e=d.getParent(e,d.isBlock);if(!e){a.setDisabled("ltr",1);a.setDisabled("rtl",1);return}c=d.getAttrib(e,"dir");a.setActive("ltr",c=="ltr");a.setDisabled("ltr",0);a.setActive("rtl",c=="rtl");a.setDisabled("rtl",0)}});tinymce.PluginManager.add("directionality",tinymce.plugins.Directionality)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js new file mode 100644 index 0000000..4444959 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js @@ -0,0 +1,82 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Directionality', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + ed.addCommand('mceDirectionLTR', function() { + var e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock); + + if (e) { + if (ed.dom.getAttrib(e, "dir") != "ltr") + ed.dom.setAttrib(e, "dir", "ltr"); + else + ed.dom.setAttrib(e, "dir", ""); + } + + ed.nodeChanged(); + }); + + ed.addCommand('mceDirectionRTL', function() { + var e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock); + + if (e) { + if (ed.dom.getAttrib(e, "dir") != "rtl") + ed.dom.setAttrib(e, "dir", "rtl"); + else + ed.dom.setAttrib(e, "dir", ""); + } + + ed.nodeChanged(); + }); + + ed.addButton('ltr', {title : 'directionality.ltr_desc', cmd : 'mceDirectionLTR'}); + ed.addButton('rtl', {title : 'directionality.rtl_desc', cmd : 'mceDirectionRTL'}); + + ed.onNodeChange.add(t._nodeChange, t); + }, + + getInfo : function() { + return { + longname : 'Directionality', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + _nodeChange : function(ed, cm, n) { + var dom = ed.dom, dir; + + n = dom.getParent(n, dom.isBlock); + if (!n) { + cm.setDisabled('ltr', 1); + cm.setDisabled('rtl', 1); + return; + } + + dir = dom.getAttrib(n, 'dir'); + cm.setActive('ltr', dir == "ltr"); + cm.setDisabled('ltr', 0); + cm.setActive('rtl', dir == "rtl"); + cm.setDisabled('rtl', 0); + } + }); + + // Register plugin + tinymce.PluginManager.add('directionality', tinymce.plugins.Directionality); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/all-wcprops new file mode 100644 index 0000000..9474147 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js +END +emotions.htm +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/entries new file mode 100644 index 0000000..cd7b301 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/entries @@ -0,0 +1,139 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.082283Z +98cba02e33fc108024f3e993be0b0b62 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +676 + +langs +dir + +emotions.htm +file + + + + +2010-06-04T12:51:45.082283Z +66948a60092333144d8095f194b1bdd7 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4485 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.082283Z +4cbc6e9b083a810ab0d3768af8f8f864 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1220 + +img +dir + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..dbdd8ff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(a){a.create("tinymce.plugins.EmotionsPlugin",{init:function(b,c){b.addCommand("mceEmotion",function(){b.windowManager.open({file:c+"/emotions.htm",width:250+parseInt(b.getLang("emotions.delta_width",0)),height:160+parseInt(b.getLang("emotions.delta_height",0)),inline:1},{plugin_url:c})});b.addButton("emotions",{title:"emotions.emotions_desc",cmd:"mceEmotion"})},getInfo:function(){return{longname:"Emotions",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions",version:a.majorVersion+"."+a.minorVersion}}});a.PluginManager.add("emotions",a.plugins.EmotionsPlugin)})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..71d5416 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,43 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function(tinymce) { + tinymce.create('tinymce.plugins.EmotionsPlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceEmotion', function() { + ed.windowManager.open({ + file : url + '/emotions.htm', + width : 250 + parseInt(ed.getLang('emotions.delta_width', 0)), + height : 160 + parseInt(ed.getLang('emotions.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('emotions', {title : 'emotions.emotions_desc', cmd : 'mceEmotion'}); + }, + + getInfo : function() { + return { + longname : 'Emotions', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('emotions', tinymce.plugins.EmotionsPlugin); +})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/emotions.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/emotions.htm.svn-base new file mode 100644 index 0000000..55a1d72 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/.svn/text-base/emotions.htm.svn-base @@ -0,0 +1,40 @@ + + + + {#emotions_dlg.title} + + + + +

+
{#emotions_dlg.title}:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
{#emotions_dlg.cool}{#emotions_dlg.cry}{#emotions_dlg.embarassed}{#emotions_dlg.foot_in_mouth}
{#emotions_dlg.frown}{#emotions_dlg.innocent}{#emotions_dlg.kiss}{#emotions_dlg.laughing}
{#emotions_dlg.money_mouth}{#emotions_dlg.sealed}{#emotions_dlg.smile}{#emotions_dlg.surprised}
{#emotions_dlg.tongue-out}{#emotions_dlg.undecided}{#emotions_dlg.wink}{#emotions_dlg.yell}
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js new file mode 100644 index 0000000..dbdd8ff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js @@ -0,0 +1 @@ +(function(a){a.create("tinymce.plugins.EmotionsPlugin",{init:function(b,c){b.addCommand("mceEmotion",function(){b.windowManager.open({file:c+"/emotions.htm",width:250+parseInt(b.getLang("emotions.delta_width",0)),height:160+parseInt(b.getLang("emotions.delta_height",0)),inline:1},{plugin_url:c})});b.addButton("emotions",{title:"emotions.emotions_desc",cmd:"mceEmotion"})},getInfo:function(){return{longname:"Emotions",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions",version:a.majorVersion+"."+a.minorVersion}}});a.PluginManager.add("emotions",a.plugins.EmotionsPlugin)})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js new file mode 100644 index 0000000..71d5416 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js @@ -0,0 +1,43 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function(tinymce) { + tinymce.create('tinymce.plugins.EmotionsPlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceEmotion', function() { + ed.windowManager.open({ + file : url + '/emotions.htm', + width : 250 + parseInt(ed.getLang('emotions.delta_width', 0)), + height : 160 + parseInt(ed.getLang('emotions.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('emotions', {title : 'emotions.emotions_desc', cmd : 'mceEmotion'}); + }, + + getInfo : function() { + return { + longname : 'Emotions', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('emotions', tinymce.plugins.EmotionsPlugin); +})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm new file mode 100644 index 0000000..55a1d72 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm @@ -0,0 +1,40 @@ + + + + {#emotions_dlg.title} + + + + +
+
{#emotions_dlg.title}:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
{#emotions_dlg.cool}{#emotions_dlg.cry}{#emotions_dlg.embarassed}{#emotions_dlg.foot_in_mouth}
{#emotions_dlg.frown}{#emotions_dlg.innocent}{#emotions_dlg.kiss}{#emotions_dlg.laughing}
{#emotions_dlg.money_mouth}{#emotions_dlg.sealed}{#emotions_dlg.smile}{#emotions_dlg.surprised}
{#emotions_dlg.tongue-out}{#emotions_dlg.undecided}{#emotions_dlg.wink}{#emotions_dlg.yell}
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/all-wcprops new file mode 100644 index 0000000..cc05e30 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/all-wcprops @@ -0,0 +1,101 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img +END +smiley-innocent.gif +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif +END +smiley-surprised.gif +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif +END +smiley-money-mouth.gif +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif +END +smiley-undecided.gif +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif +END +smiley-frown.gif +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif +END +smiley-cool.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif +END +smiley-cry.gif +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif +END +smiley-sealed.gif +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif +END +smiley-laughing.gif +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif +END +smiley-foot-in-mouth.gif +K 25 +svn:wc:ra_dav:version-url +V 112 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif +END +smiley-yell.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif +END +smiley-tongue-out.gif +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif +END +smiley-embarassed.gif +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif +END +smiley-wink.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif +END +smiley-smile.gif +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif +END +smiley-kiss.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/entries new file mode 100644 index 0000000..5ba2c57 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/entries @@ -0,0 +1,572 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/emotions/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +smiley-innocent.gif +file + + + + +2010-06-04T12:51:45.065614Z +ec0477c8a206ff250782e40f9bae4b4c +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +336 + +smiley-surprised.gif +file + + + + +2010-06-04T12:51:45.065614Z +eff5a6fbfb80ca2d3ae929b0a1c15638 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +342 + +smiley-money-mouth.gif +file + + + + +2010-06-04T12:51:45.065614Z +11c14bd1496afd0e21df115d25b68e96 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +321 + +smiley-undecided.gif +file + + + + +2010-06-04T12:51:45.065614Z +3c0c011d16b1a2331385ed97e160a42a +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +337 + +smiley-frown.gif +file + + + + +2010-06-04T12:51:45.068949Z +59930208822fe755f651a67ef4b70530 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +340 + +smiley-cool.gif +file + + + + +2010-06-04T12:51:45.068949Z +e26e97a318f82ec144b0818e5a8f8edb +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +354 + +smiley-cry.gif +file + + + + +2010-06-04T12:51:45.068949Z +e72bf995ceca9230273ed9909c5db9c8 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +329 + +smiley-sealed.gif +file + + + + +2010-06-04T12:51:45.068949Z +28b9401b59fb7ad10b96f57aaa2630c4 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +325 + +smiley-laughing.gif +file + + + + +2010-06-04T12:51:45.068949Z +b691cfd07d8181059f8a4b041d534cc4 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +344 + +smiley-foot-in-mouth.gif +file + + + + +2010-06-04T12:51:45.068949Z +905294088277f201be5a8e0285fb7998 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +344 + +smiley-yell.gif +file + + + + +2010-06-04T12:51:45.068949Z +19bb8ebfe3c2f5ef3ffb9aa4a027900d +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +336 + +smiley-tongue-out.gif +file + + + + +2010-06-04T12:51:45.072281Z +5ec3bb4781c8e43a51d3a1a948b98fc0 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +328 + +smiley-embarassed.gif +file + + + + +2010-06-04T12:51:45.072281Z +d59171236e6b0b96091eeda1f7b57ce3 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +331 + +smiley-wink.gif +file + + + + +2010-06-04T12:51:45.072281Z +4ae6aa98aa63363c16ea74f927696bd9 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +351 + +smiley-kiss.gif +file + + + + +2010-06-04T12:51:45.072281Z +4ae8945f3960751b5d294f18242e144d +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +338 + +smiley-smile.gif +file + + + + +2010-06-04T12:51:45.072281Z +c676407db519bdf42481870746f097d8 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +345 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cool.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cool.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cool.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cry.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cry.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-cry.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-embarassed.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-embarassed.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-embarassed.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-foot-in-mouth.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-foot-in-mouth.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-foot-in-mouth.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-frown.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-frown.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-frown.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-innocent.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-innocent.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-innocent.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-kiss.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-kiss.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-kiss.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-laughing.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-laughing.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-laughing.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-money-mouth.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-money-mouth.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-money-mouth.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-sealed.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-sealed.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-sealed.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-smile.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-smile.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-smile.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-surprised.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-surprised.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-surprised.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-tongue-out.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-tongue-out.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-tongue-out.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-undecided.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-undecided.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-undecided.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-wink.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-wink.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-wink.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-yell.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-yell.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/prop-base/smiley-yell.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-cool.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-cool.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..ba90cc36fb0415d0273d1cd206bff63fd9c91fde GIT binary patch literal 354 zcmV-o0iFIwNk%w1VG;lm0Mr!#3ke00dJfFY%i+lrhK7V(RutUQJhPY;?(XfrsZKgL z7WLQ^zPO&zzav{)SL^9nBOw~z(=orMEH5uC-P_gr`uhCnASMa|$-iRw?m_(dUwU8) zq>Kx}s1_F$4FCWDA^8LW0018VEC2ui01^Na000Hw;3tYzX_jM3Qpv$_M?zI9i5=0S zX-{-uv=l3%&P0s%m9Ox_a(m_c|u z01g3U0`Wll5)poVdma=N8y<3f0Sf~hXmTC}2oxMW4FdxUj+z4<0}lrX2nP=qkDRIt z9Ge*(qzMrj3jrIOjvI{`5eWzt3`G_T8yChG8w(a19SkK12@M(+799Zr9n=~PzBCmA z5)BU-)YKUd4H5!D9|!^o9kWIe9SH(WDHRk92}DZ?3})2$P@$55g90f0N)ZA8JID5J Aw*UYD literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-cry.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-cry.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..74d897a4f6d22e814e2b054e98b8a75fb464b4be GIT binary patch literal 329 zcmV-P0k-}}Nk%w1VG;lm0Mr-&E)xPSit@9T3%;vR+|V+?t0A(pllJjXrMl7n=_A_a za^B+Su$LjvyC3@TIQZNZa##w=!k(SO^P#bO*w(eU#;{U83XFCU_V)J5wrb+;g2vkN z#>U24qVoOvY5)KLA^8LW0018VEC2ui01^Na000HX;3tY$X_jM3QUfCh%s^o(nF++< zc?Th6v=oL>*by8K!mhvwelUXuuW&&U9iGO3hM@>Njw{l^#0q9mWpcefdI;O$;efnY zkd~@r-o$*74FCWI1%d((4+jDz0va0>69^fI6%`W{8w!gU1pyL>prH>E0R<%k6Aq%H z4ij+^9TEwM5P}eh2@)L<~6+>@EpxfA0YrcPNsSu literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-embarassed.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-embarassed.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..963a96b8a7593b1d8bcbab073abe5ee4e539dbf6 GIT binary patch literal 331 zcmV-R0kr-{Nk%w1VG;lm0MrryDh>j~yq&6%75dW~z^P39(NxsGDE{UkxtkIEq(S-a zRKlwv+S=Lr?>hbYY~sQ?c3T&ZcN_Nh_EU3s(>Io6B&>WW`@bsw**)Ocy1bht z{*G6|uwwqUQ2+n{A^8LW0018VEC2ui01^Na000HZ;3tYwX_jM3YQ!c88=*-m*&&bO zILd=`w3KAC;8hxpif*w9ek6oqV-Z0L77fROK$BSR@5BAv-%C>6y>>#+D4e#&nz^qMDItlpp zTG728+|V&?R13PIEBW(C`uh6d*t-1sZ^XQv;oDD}iYLOV7uVO;{`xl4#4tJ{0;h@! z>)kfFn;iS@Hvj+tA^8LW0018VEC2ui01^Na000Hm;3tYuX_jM3Mo7199TGt*Nf;R= zNmOPKwA8_2Q6MTDP6eT`I1VESVj-zGIG(JdB3U44kcdI@;AAq{Gv^^O%%ltj2GdB) z>vIL;d*~=0a|w1Bf^!cF9R~+vb94;_0}TxWlnMrlj2MuVoSYAreF`3(0|pHS8VLgr zi3bP_qZ;q#>Sw62=mns-On=0wransPVevT^YK{Dy(0YY zH)vE6x0?;Wqb>gZas1^OT0si>`ugD5y87}*#H$s=yq(wA*8cf7{`y+(+9J7|9QfT7 z`ROHiU=Y&6FaQ7mA^8LW0018VEC2ui01^Na000Hi;3tYvX_jM3N`@u~nju9hSuh^r zIEcp-wA7(NL0~2d#RP+(G!CPPA>o*KJjv_CkucCA5=K?AfF#RG2V*8BU@jL304|4P z2;PGRF@bj$et;Jf2pR_mVsIA<85|n}kQ*Bq42Ovqj*yy>6P0=h3X&9Z01yyk~2N4w%7#RW^55W%`0vQ+-6(y_*2pqz~90*;x9}yM}%$UI(7t#$D mK_3Se1{4HKM+6iG7EmeH6$V631{L5n)#CyC0qx-*Apkoyg?w!Q literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-innocent.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-innocent.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..334d49e0e60f2997c9ba24071764f95d9e08a5cc GIT binary patch literal 336 zcmV-W0k8f?Nk%w1VG;lm0MrryI4TI-%dP0m5~*+Y`T~ z7Rth){q{I_X%*S48uRZ|(b3V&wIKTX`u+WJzo<^$#wuY;3W|Cf{O29IkTAcaE&lpe z+P*^H)-tknA^-pYA^8LW0018VEC2ui01^Na000He;3tYwX_n)75QgVvNQ`6#5gcMm zEEG~blgXokptKAJgCU?%JT?yos!R6cPtcQWh2siHlNI2L}ifQhgX02^InZ2?-ktkqVRyZJY^Trk|lv zovp437?1~d46O)?2(1i+2NDYk8<+_Kil!K!3njA^!I#dL8x<729}*B65mC=m5gHH@ iDi9P3f*VjB3KS4HDb_qqRul{0DIT=Nk%w1VG;lm0Mrx!QauaC#>Vb6G=_5=^YB^9wrc376Sb5I-qJGf@9vZ# z5WlKU(!eVB+7tfnDXp0zyB`?BZ5IChalob*`uh6d*t+@dKGHcU+L|83yq*5~IoH?L zy`?Gp<{bX|SpWb4A^8LW0018VEC2ui01^Na000Hg;3tYyX_jM3R?Bl7&r(q;SsVx< zNd$5fv{ZsKA$SlL3&KN~a1tZRf*~1Ltkx9~2uL3&z-yb0WJDRY082|tP literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-laughing.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-laughing.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..1606c119e75678c4031f384e0d50849906e8f533 GIT binary patch literal 344 zcmV-e0jK^)Nk%w1VG;lm0MruzQauf>s;1-69HWK?p_PpF=Pd8~Ygtcnp*fHAL z**;z>w3iC}`fmL6IkKB1N;3zEa}&zKpsu1;_V)HocR5-{J~BcYvE`YXhBnc@CfU=! za(Ec zG>66zv=rqr;2j)}gKqE$ekcSD?}0=WLB?AWp85)qALd+P=4)6X4oXy{bw2>K^d$ z@6ERvva+(4ib~41YUkTEn1&#?rzrOHT>1I=Y*h`+%*@WtPUPg|!@EEI_d5LgZ>^Og z-qyCjsu$J9F8}}lA^8LW0018VEC2ui01^Na000HT;3tYxX_jM37RWXX8&XUv=@{Oj zX@_Sxw3H&!kzgQ?2LvPOL=>Y5VxieY9+_+eqFEql6OKWXd3Ze8Ggf2Zln@U|mI9d9 zGm^(wVUTA5cYs-V1`2#+a})^z6chrF5`~8k5e6@pmkW`GeGw<069yTQaGnH)s0suV zR|pCd0ZtRCsjM9VB^L+~7X%f*zyuc%2p3=#ycf#L%McYo9|{Z&5D^#_78qL%3{WW( X7Xb)FP6z?UH6ODVz!ev-DIowmgll^P literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-smile.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-smile.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..e6a9e60d5ddd1243fbbf2197b4dc6cd9c1b58b93 GIT binary patch literal 345 zcmV-f0jB;(Nk%w1VG;lm0MrlwCJF+^#>SR<4C>Dj%C>6W(lWoQPVevT^YB^Fy&h6M z4YZgH{O~qtR1(Ci8T;lQ`uh6d*t-7xar*K{#Jrulo-Wtd*44u?{`oh#n;gQXGXDEo z_}UVAU=FH^0ssI2A^8LW0018VEC2ui01^Na000Hn;3tYuX_jM3Mn>j&nGr!MNh}v4 zNyxPjwA7*EKx`%q#$Vl9SM>N9ReH-cn1&^4jYXf0KotqjT;UWC94U(4-NtX4#i!%9}pHA2?&dg3>XLr r8Wuqx2Nnhn1xrT-4h9xbDb^GQ8V(K`1{C5o)#U;I0p5-K5CQ-@9%ySnDDC*4*{OcpiwransPVevTQacIr@mkQp zCf(06s)_=>r7UYx48o@u`uh6d*t-7rH~ji<`P&oj;5Wp)o!8ga`SV6TA_BIW5#ZWV z{`*+__>9}pJ}3JDSl85wB_3Jn)Q o9|so(4+|I^92g4^1{Y8%(iR3pP6ig=HPPY$`~mLZA3^{CJDB=?L;wH) literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-tongue-out.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-tongue-out.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..2075dc16058f1f17912167675ce5cfb9986fc71d GIT binary patch literal 328 zcmV-O0k{4~Nk%w1VG;lm0Mrx!CJF+^#>SU@3-{U*rx+Q^wrc$ABfqLn@9*x?z8(4X zSW-O=@){bmmI~g|GQXoP);cvj3|f1M8e@{G*!tYaiCEujj1NGxRN#6#tiCETo+{x{Hkzt z5k-kPvcD=V2nbmjCgL6k{uF&2nP-t0s;w<385Nx2oxDb z9T5Pp7qJl?3Kkh9oe2sCr5F$p7zPSlsUH*@54w*83=9Or4;w)r2pcU95(FL|1Th;< aDaRQH4;Tal7#Y$v#?=Au0pHUfApkpvZg^t= literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-undecided.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-undecided.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..bef7e257303f8243c89787e7a7f9955dd1f112e2 GIT binary patch literal 337 zcmV-X0j~Z>Nk%w1VG;lm0MroxDi#99#>R?y8~4}{%C>6#>?OadPVevTr-=vi@LATn z4rERY-qJF+n+?CCE&B3D{{3Shh?>WT0o%`b%*Voqm`dL;(4F35y zc485^n;g!+Bme*aA^8LW0018VEC2ui01^Na000Hf;3tYvX_jM3N=AnuogqakNi<9X zK?&0kwA8^tNn{?C$|IAYI1ZzT!2>}iuMddFK#NEkRl!7%6brJAnUs;)XcnA}TNBSP zxQ9;SvEfwYeSaGd2^|LqU~(QF1qBxr3Ii7x84ZVt8wCTKoSYAqc?p`G2onnpk`IOl z1`HLGj}riN2p1K12N4z&8IBDc6tEWs859;JtRB6>lf+xO9}yT19toMv8wnl`7(pKg j7zPv!OGgY81{hE&(iR3pP6ig;HPPS!_yOwPA0Yrc)=Yf3 literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-wink.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-wink.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..9faf1aff8f4b28e02f4f414975fe1859c43b6b54 GIT binary patch literal 351 zcmV-l0igazNk%w1VG;lm0MrryC=CL}#>Sn03F^-g-qAA3wransPV?|t@9*x%vmQ`7 z4E*pcw3rOOq%3t@4*K#({N^40{c-yG`rz2Q!KfI-yq*61HrBop*VoqW<}&{JS@_x# zwwfH#!YTdnIsgCwA^8LW0018VEC2ui01^Na000Ht;3tYwX_jM3P6j6koH0o%Sun&A zMF+tYv=pL2IcOdp&qH&dG!P?+ArV0)J)O=Yk}%LD6Go&#@MJn3he8=)%%lWOM*#pN zEDD9iq9J$@90v~;83`GC4i0+{2OJ0pVtacF5E}yn8<`pmkCBv_pqZEtoPY-l0}P>= z3WE6cr`19U7DgF9{F}at6R35*Q5~ x2OgBy9tRx_7(pKh7zPvsOGgA01{hE&-4zBzP6id}HMp@0Krnzkbss_i06S`>cdh^c literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-yell.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/.svn/text-base/smiley-yell.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..648e6e879123fe49beebbc1f3635141864a79a9c GIT binary patch literal 336 zcmV-W0k8f?Nk%w1VG;lm0MrryG8O{K#>IbS7WCB_mWF$+hzY-{PWkp(?(Xf;zbH~P z3jOdj?W+^YwrakfE8fyG&5jTBz!3WS`fgM_;MltQ+c}4GO8)(E`S3`@yq&d~5!ct& z)v79NObo)O7XSbNA^8LW0018VEC2ui01^Na000He;3tYwX_jM3QifI(nn6h_*=Wyk zUB{y}v=qYOIUF#R3dZPhAVv~H;(|a2yN_5FH&J0|$eJ3kw4gj1Y?v5d#>LMV12^6BYy$1)ZKA zga!|m2?POz0R)f>4+aPl8KD{gz`+G_9vLMFQU?RU!8uyH9}*i52|cC+7S0YEK_3Vk i1|APfM-Ltb8&4_H83sg61{vHn(cc000qNZzApkpKx}s1_F$4FCWDA^8LW0018VEC2ui01^Na000Hw;3tYzX_jM3Qpv$_M?zI9i5=0S zX-{-uv=l3%&P0s%m9Ox_a(m_c|u z01g3U0`Wll5)poVdma=N8y<3f0Sf~hXmTC}2oxMW4FdxUj+z4<0}lrX2nP=qkDRIt z9Ge*(qzMrj3jrIOjvI{`5eWzt3`G_T8yChG8w(a19SkK12@M(+799Zr9n=~PzBCmA z5)BU-)YKUd4H5!D9|!^o9kWIe9SH(WDHRk92}DZ?3})2$P@$55g90f0N)ZA8JID5J Aw*UYD literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif new file mode 100644 index 0000000000000000000000000000000000000000..74d897a4f6d22e814e2b054e98b8a75fb464b4be GIT binary patch literal 329 zcmV-P0k-}}Nk%w1VG;lm0Mr-&E)xPSit@9T3%;vR+|V+?t0A(pllJjXrMl7n=_A_a za^B+Su$LjvyC3@TIQZNZa##w=!k(SO^P#bO*w(eU#;{U83XFCU_V)J5wrb+;g2vkN z#>U24qVoOvY5)KLA^8LW0018VEC2ui01^Na000HX;3tY$X_jM3QUfCh%s^o(nF++< zc?Th6v=oL>*by8K!mhvwelUXuuW&&U9iGO3hM@>Njw{l^#0q9mWpcefdI;O$;efnY zkd~@r-o$*74FCWI1%d((4+jDz0va0>69^fI6%`W{8w!gU1pyL>prH>E0R<%k6Aq%H z4ij+^9TEwM5P}eh2@)L<~6+>@EpxfA0YrcPNsSu literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif new file mode 100644 index 0000000000000000000000000000000000000000..963a96b8a7593b1d8bcbab073abe5ee4e539dbf6 GIT binary patch literal 331 zcmV-R0kr-{Nk%w1VG;lm0MrryDh>j~yq&6%75dW~z^P39(NxsGDE{UkxtkIEq(S-a zRKlwv+S=Lr?>hbYY~sQ?c3T&ZcN_Nh_EU3s(>Io6B&>WW`@bsw**)Ocy1bht z{*G6|uwwqUQ2+n{A^8LW0018VEC2ui01^Na000HZ;3tYwX_jM3YQ!c88=*-m*&&bO zILd=`w3KAC;8hxpif*w9ek6oqV-Z0L77fROK$BSR@5BAv-%C>6y>>#+D4e#&nz^qMDItlpp zTG728+|V&?R13PIEBW(C`uh6d*t-1sZ^XQv;oDD}iYLOV7uVO;{`xl4#4tJ{0;h@! z>)kfFn;iS@Hvj+tA^8LW0018VEC2ui01^Na000Hm;3tYuX_jM3Mo7199TGt*Nf;R= zNmOPKwA8_2Q6MTDP6eT`I1VESVj-zGIG(JdB3U44kcdI@;AAq{Gv^^O%%ltj2GdB) z>vIL;d*~=0a|w1Bf^!cF9R~+vb94;_0}TxWlnMrlj2MuVoSYAreF`3(0|pHS8VLgr zi3bP_qZ;q#>Sw62=mns-On=0wransPVevT^YK{Dy(0YY zH)vE6x0?;Wqb>gZas1^OT0si>`ugD5y87}*#H$s=yq(wA*8cf7{`y+(+9J7|9QfT7 z`ROHiU=Y&6FaQ7mA^8LW0018VEC2ui01^Na000Hi;3tYvX_jM3N`@u~nju9hSuh^r zIEcp-wA7(NL0~2d#RP+(G!CPPA>o*KJjv_CkucCA5=K?AfF#RG2V*8BU@jL304|4P z2;PGRF@bj$et;Jf2pR_mVsIA<85|n}kQ*Bq42Ovqj*yy>6P0=h3X&9Z01yyk~2N4w%7#RW^55W%`0vQ+-6(y_*2pqz~90*;x9}yM}%$UI(7t#$D mK_3Se1{4HKM+6iG7EmeH6$V631{L5n)#CyC0qx-*Apkoyg?w!Q literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif new file mode 100644 index 0000000000000000000000000000000000000000..334d49e0e60f2997c9ba24071764f95d9e08a5cc GIT binary patch literal 336 zcmV-W0k8f?Nk%w1VG;lm0MrryI4TI-%dP0m5~*+Y`T~ z7Rth){q{I_X%*S48uRZ|(b3V&wIKTX`u+WJzo<^$#wuY;3W|Cf{O29IkTAcaE&lpe z+P*^H)-tknA^-pYA^8LW0018VEC2ui01^Na000He;3tYwX_n)75QgVvNQ`6#5gcMm zEEG~blgXokptKAJgCU?%JT?yos!R6cPtcQWh2siHlNI2L}ifQhgX02^InZ2?-ktkqVRyZJY^Trk|lv zovp437?1~d46O)?2(1i+2NDYk8<+_Kil!K!3njA^!I#dL8x<729}*B65mC=m5gHH@ iDi9P3f*VjB3KS4HDb_qqRul{0DIT=Nk%w1VG;lm0Mrx!QauaC#>Vb6G=_5=^YB^9wrc376Sb5I-qJGf@9vZ# z5WlKU(!eVB+7tfnDXp0zyB`?BZ5IChalob*`uh6d*t+@dKGHcU+L|83yq*5~IoH?L zy`?Gp<{bX|SpWb4A^8LW0018VEC2ui01^Na000Hg;3tYyX_jM3R?Bl7&r(q;SsVx< zNd$5fv{ZsKA$SlL3&KN~a1tZRf*~1Ltkx9~2uL3&z-yb0WJDRY082|tP literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif new file mode 100644 index 0000000000000000000000000000000000000000..1606c119e75678c4031f384e0d50849906e8f533 GIT binary patch literal 344 zcmV-e0jK^)Nk%w1VG;lm0MruzQauf>s;1-69HWK?p_PpF=Pd8~Ygtcnp*fHAL z**;z>w3iC}`fmL6IkKB1N;3zEa}&zKpsu1;_V)HocR5-{J~BcYvE`YXhBnc@CfU=! za(Ec zG>66zv=rqr;2j)}gKqE$ekcSD?}0=WLB?AWp85)qALd+P=4)6X4oXy{bw2>K^d$ z@6ERvva+(4ib~41YUkTEn1&#?rzrOHT>1I=Y*h`+%*@WtPUPg|!@EEI_d5LgZ>^Og z-qyCjsu$J9F8}}lA^8LW0018VEC2ui01^Na000HT;3tYxX_jM37RWXX8&XUv=@{Oj zX@_Sxw3H&!kzgQ?2LvPOL=>Y5VxieY9+_+eqFEql6OKWXd3Ze8Ggf2Zln@U|mI9d9 zGm^(wVUTA5cYs-V1`2#+a})^z6chrF5`~8k5e6@pmkW`GeGw<069yTQaGnH)s0suV zR|pCd0ZtRCsjM9VB^L+~7X%f*zyuc%2p3=#ycf#L%McYo9|{Z&5D^#_78qL%3{WW( X7Xb)FP6z?UH6ODVz!ev-DIowmgll^P literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif new file mode 100644 index 0000000000000000000000000000000000000000..e6a9e60d5ddd1243fbbf2197b4dc6cd9c1b58b93 GIT binary patch literal 345 zcmV-f0jB;(Nk%w1VG;lm0MrlwCJF+^#>SR<4C>Dj%C>6W(lWoQPVevT^YB^Fy&h6M z4YZgH{O~qtR1(Ci8T;lQ`uh6d*t-7xar*K{#Jrulo-Wtd*44u?{`oh#n;gQXGXDEo z_}UVAU=FH^0ssI2A^8LW0018VEC2ui01^Na000Hn;3tYuX_jM3Mn>j&nGr!MNh}v4 zNyxPjwA7*EKx`%q#$Vl9SM>N9ReH-cn1&^4jYXf0KotqjT;UWC94U(4-NtX4#i!%9}pHA2?&dg3>XLr r8Wuqx2Nnhn1xrT-4h9xbDb^GQ8V(K`1{C5o)#U;I0p5-K5CQ-@9%ySnDDC*4*{OcpiwransPVevTQacIr@mkQp zCf(06s)_=>r7UYx48o@u`uh6d*t-7rH~ji<`P&oj;5Wp)o!8ga`SV6TA_BIW5#ZWV z{`*+__>9}pJ}3JDSl85wB_3Jn)Q o9|so(4+|I^92g4^1{Y8%(iR3pP6ig=HPPY$`~mLZA3^{CJDB=?L;wH) literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif new file mode 100644 index 0000000000000000000000000000000000000000..2075dc16058f1f17912167675ce5cfb9986fc71d GIT binary patch literal 328 zcmV-O0k{4~Nk%w1VG;lm0Mrx!CJF+^#>SU@3-{U*rx+Q^wrc$ABfqLn@9*x?z8(4X zSW-O=@){bmmI~g|GQXoP);cvj3|f1M8e@{G*!tYaiCEujj1NGxRN#6#tiCETo+{x{Hkzt z5k-kPvcD=V2nbmjCgL6k{uF&2nP-t0s;w<385Nx2oxDb z9T5Pp7qJl?3Kkh9oe2sCr5F$p7zPSlsUH*@54w*83=9Or4;w)r2pcU95(FL|1Th;< aDaRQH4;Tal7#Y$v#?=Au0pHUfApkpvZg^t= literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif new file mode 100644 index 0000000000000000000000000000000000000000..bef7e257303f8243c89787e7a7f9955dd1f112e2 GIT binary patch literal 337 zcmV-X0j~Z>Nk%w1VG;lm0MroxDi#99#>R?y8~4}{%C>6#>?OadPVevTr-=vi@LATn z4rERY-qJF+n+?CCE&B3D{{3Shh?>WT0o%`b%*Voqm`dL;(4F35y zc485^n;g!+Bme*aA^8LW0018VEC2ui01^Na000Hf;3tYvX_jM3N=AnuogqakNi<9X zK?&0kwA8^tNn{?C$|IAYI1ZzT!2>}iuMddFK#NEkRl!7%6brJAnUs;)XcnA}TNBSP zxQ9;SvEfwYeSaGd2^|LqU~(QF1qBxr3Ii7x84ZVt8wCTKoSYAqc?p`G2onnpk`IOl z1`HLGj}riN2p1K12N4z&8IBDc6tEWs859;JtRB6>lf+xO9}yT19toMv8wnl`7(pKg j7zPv!OGgY81{hE&(iR3pP6ig;HPPS!_yOwPA0Yrc)=Yf3 literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif new file mode 100644 index 0000000000000000000000000000000000000000..9faf1aff8f4b28e02f4f414975fe1859c43b6b54 GIT binary patch literal 351 zcmV-l0igazNk%w1VG;lm0MrryC=CL}#>Sn03F^-g-qAA3wransPV?|t@9*x%vmQ`7 z4E*pcw3rOOq%3t@4*K#({N^40{c-yG`rz2Q!KfI-yq*61HrBop*VoqW<}&{JS@_x# zwwfH#!YTdnIsgCwA^8LW0018VEC2ui01^Na000Ht;3tYwX_jM3P6j6koH0o%Sun&A zMF+tYv=pL2IcOdp&qH&dG!P?+ArV0)J)O=Yk}%LD6Go&#@MJn3he8=)%%lWOM*#pN zEDD9iq9J$@90v~;83`GC4i0+{2OJ0pVtacF5E}yn8<`pmkCBv_pqZEtoPY-l0}P>= z3WE6cr`19U7DgF9{F}at6R35*Q5~ x2OgBy9tRx_7(pKh7zPvsOGgA01{hE&-4zBzP6id}HMp@0Krnzkbss_i06S`>cdh^c literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif b/assets/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif new file mode 100644 index 0000000000000000000000000000000000000000..648e6e879123fe49beebbc1f3635141864a79a9c GIT binary patch literal 336 zcmV-W0k8f?Nk%w1VG;lm0MrryG8O{K#>IbS7WCB_mWF$+hzY-{PWkp(?(Xf;zbH~P z3jOdj?W+^YwrakfE8fyG&5jTBz!3WS`fgM_;MltQ+c}4GO8)(E`S3`@yq&d~5!ct& z)v79NObo)O7XSbNA^8LW0018VEC2ui01^Na000He;3tYwX_jM3QifI(nn6h_*=Wyk zUB{y}v=qYOIUF#R3dZPhAVv~H;(|a2yN_5FH&J0|$eJ3kw4gj1Y?v5d#>LMV12^6BYy$1)ZKA zga!|m2?POz0R)f>4+aPl8KD{gz`+G_9vLMFQU?RU!8uyH9}*i52|cC+7S0YEK_3Vk i1|APfM-Ltb8&4_H83sg61{vHn(cc000qNZzApkp + + + {#example_dlg.title} + + + + + +
+

Here is a example dialog.

+

Selected text:

+

Custom arg:

+ +
+ + +
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..ec1f81e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.PluginManager.requireLangPack("example");tinymce.create("tinymce.plugins.ExamplePlugin",{init:function(a,b){a.addCommand("mceExample",function(){a.windowManager.open({file:b+"/dialog.htm",width:320+parseInt(a.getLang("example.delta_width",0)),height:120+parseInt(a.getLang("example.delta_height",0)),inline:1},{plugin_url:b,some_custom_arg:"custom arg"})});a.addButton("example",{title:"example.desc",cmd:"mceExample",image:b+"/img/example.gif"});a.onNodeChange.add(function(d,c,e){c.setActive("example",e.nodeName=="IMG")})},createControl:function(b,a){return null},getInfo:function(){return{longname:"Example plugin",author:"Some author",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example",version:"1.0"}}});tinymce.PluginManager.add("example",tinymce.plugins.ExamplePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..9a0e7da --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,84 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + // Load plugin specific language pack + tinymce.PluginManager.requireLangPack('example'); + + tinymce.create('tinymce.plugins.ExamplePlugin', { + /** + * Initializes the plugin, this will be executed after the plugin has been created. + * This call is done before the editor instance has finished it's initialization so use the onInit event + * of the editor instance to intercept that event. + * + * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in. + * @param {string} url Absolute URL to where the plugin is located. + */ + init : function(ed, url) { + // Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample'); + ed.addCommand('mceExample', function() { + ed.windowManager.open({ + file : url + '/dialog.htm', + width : 320 + parseInt(ed.getLang('example.delta_width', 0)), + height : 120 + parseInt(ed.getLang('example.delta_height', 0)), + inline : 1 + }, { + plugin_url : url, // Plugin absolute URL + some_custom_arg : 'custom arg' // Custom argument + }); + }); + + // Register example button + ed.addButton('example', { + title : 'example.desc', + cmd : 'mceExample', + image : url + '/img/example.gif' + }); + + // Add a node change handler, selects the button in the UI when a image is selected + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('example', n.nodeName == 'IMG'); + }); + }, + + /** + * Creates control instances based in the incomming name. This method is normally not + * needed since the addButton method of the tinymce.Editor class is a more easy way of adding buttons + * but you sometimes need to create more complex controls like listboxes, split buttons etc then this + * method can be used to create those. + * + * @param {String} n Name of the control to create. + * @param {tinymce.ControlManager} cm Control manager to use inorder to create new control. + * @return {tinymce.ui.Control} New control instance or null if no control was created. + */ + createControl : function(n, cm) { + return null; + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Example plugin', + author : 'Some author', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example', + version : "1.0" + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('example', tinymce.plugins.ExamplePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm b/assets/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm new file mode 100644 index 0000000..50b2b34 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm @@ -0,0 +1,22 @@ + + + + {#example_dlg.title} + + + + + +
+

Here is a example dialog.

+

Selected text:

+

Custom arg:

+ +
+ + +
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js new file mode 100644 index 0000000..ec1f81e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.PluginManager.requireLangPack("example");tinymce.create("tinymce.plugins.ExamplePlugin",{init:function(a,b){a.addCommand("mceExample",function(){a.windowManager.open({file:b+"/dialog.htm",width:320+parseInt(a.getLang("example.delta_width",0)),height:120+parseInt(a.getLang("example.delta_height",0)),inline:1},{plugin_url:b,some_custom_arg:"custom arg"})});a.addButton("example",{title:"example.desc",cmd:"mceExample",image:b+"/img/example.gif"});a.onNodeChange.add(function(d,c,e){c.setActive("example",e.nodeName=="IMG")})},createControl:function(b,a){return null},getInfo:function(){return{longname:"Example plugin",author:"Some author",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example",version:"1.0"}}});tinymce.PluginManager.add("example",tinymce.plugins.ExamplePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js new file mode 100644 index 0000000..9a0e7da --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js @@ -0,0 +1,84 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + // Load plugin specific language pack + tinymce.PluginManager.requireLangPack('example'); + + tinymce.create('tinymce.plugins.ExamplePlugin', { + /** + * Initializes the plugin, this will be executed after the plugin has been created. + * This call is done before the editor instance has finished it's initialization so use the onInit event + * of the editor instance to intercept that event. + * + * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in. + * @param {string} url Absolute URL to where the plugin is located. + */ + init : function(ed, url) { + // Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample'); + ed.addCommand('mceExample', function() { + ed.windowManager.open({ + file : url + '/dialog.htm', + width : 320 + parseInt(ed.getLang('example.delta_width', 0)), + height : 120 + parseInt(ed.getLang('example.delta_height', 0)), + inline : 1 + }, { + plugin_url : url, // Plugin absolute URL + some_custom_arg : 'custom arg' // Custom argument + }); + }); + + // Register example button + ed.addButton('example', { + title : 'example.desc', + cmd : 'mceExample', + image : url + '/img/example.gif' + }); + + // Add a node change handler, selects the button in the UI when a image is selected + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('example', n.nodeName == 'IMG'); + }); + }, + + /** + * Creates control instances based in the incomming name. This method is normally not + * needed since the addButton method of the tinymce.Editor class is a more easy way of adding buttons + * but you sometimes need to create more complex controls like listboxes, split buttons etc then this + * method can be used to create those. + * + * @param {String} n Name of the control to create. + * @param {tinymce.ControlManager} cm Control manager to use inorder to create new control. + * @return {tinymce.ui.Control} New control instance or null if no control was created. + */ + createControl : function(n, cm) { + return null; + }, + + /** + * Returns information about the plugin as a name/value array. + * The current keys are longname, author, authorurl, infourl and version. + * + * @return {Object} Name/value array containing information about the plugin. + */ + getInfo : function() { + return { + longname : 'Example plugin', + author : 'Some author', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example', + version : "1.0" + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('example', tinymce.plugins.ExamplePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/all-wcprops new file mode 100644 index 0000000..3f1ce5e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/example/img +END +example.gif +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/entries new file mode 100644 index 0000000..b31e58e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/example/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +example.gif +file + + + + +2010-06-04T12:51:44.885615Z +6036655a01df362267183a8b23fead10 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +87 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/prop-base/example.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/prop-base/example.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/prop-base/example.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/text-base/example.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/example/img/.svn/text-base/example.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..1ab5da4461113d2af579898528246fdbe52ecd00 GIT binary patch literal 87 zcmZ?wbhEHb6k!lyn83&Y1dNP~ia%L^OhyJB5FaGNz@*pGzw+SQ`#f{}FJ-?!v#V)e mtsGNfpJeCKSAiOz**>0`XR2{OVa>-G_df0vaY0`XR2{OVa>-G_df0vaY/i);if(f&&f[1]){l=f[1].match(/\s*(\w+\s*=\s*".*?"|\w+\s*=\s*'.*?'|\w+\s*=\s*\w+|\w+)\s*/g);if(l){for(c=0,e=l.length;c",a);h.head=f.substring(0,a+1);j=f.indexOf("\n'}h.head+=d.getParam("fullpage_default_doctype",'');h.head+="\n\n\n"+d.getParam("fullpage_default_title","Untitled document")+"\n";if(g=d.getParam("fullpage_default_encoding")){h.head+='\n'}if(g=d.getParam("fullpage_default_font_family")){i+="font-family: "+g+";"}if(g=d.getParam("fullpage_default_font_size")){i+="font-size: "+g+";"}if(g=d.getParam("fullpage_default_text_color")){i+="color: "+g+";"}h.head+="\n\n";h.foot="\n\n"}},_getContent:function(a,c){var b=this;if(!c.source_view||!a.getParam("fullpage_hide_in_source_view")){c.content=tinymce.trim(b.head)+"\n"+tinymce.trim(c.content)+"\n"+tinymce.trim(b.foot)}}});tinymce.PluginManager.add("fullpage",tinymce.plugins.FullPagePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..b7d51d5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,149 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.FullPagePlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceFullPageProperties', function() { + ed.windowManager.open({ + file : url + '/fullpage.htm', + width : 430 + parseInt(ed.getLang('fullpage.delta_width', 0)), + height : 495 + parseInt(ed.getLang('fullpage.delta_height', 0)), + inline : 1 + }, { + plugin_url : url, + head_html : t.head + }); + }); + + // Register buttons + ed.addButton('fullpage', {title : 'fullpage.desc', cmd : 'mceFullPageProperties'}); + + ed.onBeforeSetContent.add(t._setContent, t); + ed.onSetContent.add(t._setBodyAttribs, t); + ed.onGetContent.add(t._getContent, t); + }, + + getInfo : function() { + return { + longname : 'Fullpage', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private plugin internal methods + + _setBodyAttribs : function(ed, o) { + var bdattr, i, len, kv, k, v, t, attr = this.head.match(/body(.*?)>/i); + + if (attr && attr[1]) { + bdattr = attr[1].match(/\s*(\w+\s*=\s*".*?"|\w+\s*=\s*'.*?'|\w+\s*=\s*\w+|\w+)\s*/g); + + if (bdattr) { + for(i = 0, len = bdattr.length; i < len; i++) { + kv = bdattr[i].split('='); + k = kv[0].replace(/\s/,''); + v = kv[1]; + + if (v) { + v = v.replace(/^\s+/,'').replace(/\s+$/,''); + t = v.match(/^["'](.*)["']$/); + + if (t) + v = t[1]; + } else + v = k; + + ed.dom.setAttrib(ed.getBody(), 'style', v); + } + } + } + }, + + _createSerializer : function() { + return new tinymce.dom.Serializer({ + dom : this.editor.dom, + apply_source_formatting : true + }); + }, + + _setContent : function(ed, o) { + var t = this, sp, ep, c = o.content, v, st = ''; + + if (o.source_view && ed.getParam('fullpage_hide_in_source_view')) + return; + + // Parse out head, body and footer + c = c.replace(/<(\/?)BODY/gi, '<$1body'); + sp = c.indexOf('', sp); + t.head = c.substring(0, sp + 1); + + ep = c.indexOf('\n'; + + t.head += ed.getParam('fullpage_default_doctype', ''); + t.head += '\n\n\n' + ed.getParam('fullpage_default_title', 'Untitled document') + '\n'; + + if (v = ed.getParam('fullpage_default_encoding')) + t.head += '\n'; + + if (v = ed.getParam('fullpage_default_font_family')) + st += 'font-family: ' + v + ';'; + + if (v = ed.getParam('fullpage_default_font_size')) + st += 'font-size: ' + v + ';'; + + if (v = ed.getParam('fullpage_default_text_color')) + st += 'color: ' + v + ';'; + + t.head += '\n\n'; + t.foot = '\n\n'; + } + }, + + _getContent : function(ed, o) { + var t = this; + + if (!o.source_view || !ed.getParam('fullpage_hide_in_source_view')) + o.content = tinymce.trim(t.head) + '\n' + tinymce.trim(o.content) + '\n' + tinymce.trim(t.foot); + } + }); + + // Register plugin + tinymce.PluginManager.add('fullpage', tinymce.plugins.FullPagePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/fullpage.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/fullpage.htm.svn-base new file mode 100644 index 0000000..c32afaf --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/.svn/text-base/fullpage.htm.svn-base @@ -0,0 +1,571 @@ + + + + {#fullpage_dlg.title} + + + + + + + +
+ + +
+
+
+ {#fullpage_dlg.meta_props} + + + + + + + + + + + + + + + + + + + + + + + + + + +
 
 
 
 
 
  + +
+
+ +
+ {#fullpage_dlg.langprops} + + + + + + + + + + + + + + + + + + + + + + +
+ +
  + +
 
+ +
 
+
+
+ +
+
+ {#fullpage_dlg.appearance_textprops} + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + +
 
+
+
+ +
+ {#fullpage_dlg.appearance_bgprops} + + + + + + + + + + +
+ + + + + +
 
+
+ + + + + +
 
+
+
+ +
+ {#fullpage_dlg.appearance_marginprops} + + + + + + + + + + + + + + +
+
+ +
+ {#fullpage_dlg.appearance_linkprops} + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
 
+
+ + + + + +
 
+
  
+
+ +
+ {#fullpage_dlg.appearance_style} + + + + + + + + + + +
+ + + + +
 
+
+
+ +
+ + +
+ {#fullpage_dlg.head_elements} + +
+
+
+ + +
+
+ + +
+
+
+ +
+
+ +
+ {#fullpage_dlg.meta_element} + + + + + + + + + + + + + + +
+ + +
+ +
+ {#fullpage_dlg.title_element} + + + + + + +
+ + +
+ +
+ {#fullpage_dlg.script_element} + + + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+ + + + +
 
+
+ +
+ +
+
+ + +
+ +
+ {#fullpage_dlg.style_element} + + + +
+ +
+
+ + + + + + + + + +
+
+ +
+ +
+
+ + +
+ +
+ {#fullpage_dlg.base_element} + + + + + + + + + + +
+ + +
+ + + +
+ {#fullpage_dlg.comment_element} + + + + +
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/all-wcprops new file mode 100644 index 0000000..8a1feab --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/fullpage/css +END +fullpage.css +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/entries new file mode 100644 index 0000000..4264f3f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/fullpage/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +fullpage.css +file + + + + +2010-06-04T12:51:46.285624Z +0a4e4c9cbbc258fbe124848de31e2ddf +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2987 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/text-base/fullpage.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/text-base/fullpage.css.svn-base new file mode 100644 index 0000000..7a3334f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/.svn/text-base/fullpage.css.svn-base @@ -0,0 +1,182 @@ +/* Hide the advanced tab */ +#advanced_tab { + display: none; +} + +#metatitle, #metakeywords, #metadescription, #metaauthor, #metacopyright { + width: 280px; +} + +#doctype, #docencoding { + width: 200px; +} + +#langcode { + width: 30px; +} + +#bgimage { + width: 220px; +} + +#fontface { + width: 240px; +} + +#leftmargin, #rightmargin, #topmargin, #bottommargin { + width: 50px; +} + +.panel_wrapper div.current { + height: 400px; +} + +#stylesheet, #style { + width: 240px; +} + +/* Head list classes */ + +.headlistwrapper { + width: 100%; +} + +.addbutton, .removebutton, .moveupbutton, .movedownbutton { + border-top: 1px solid; + border-left: 1px solid; + border-bottom: 1px solid; + border-right: 1px solid; + border-color: #F0F0EE; + cursor: default; + display: block; + width: 20px; + height: 20px; +} + +#doctypes { + width: 200px; +} + +.addbutton:hover, .removebutton:hover, .moveupbutton:hover, .movedownbutton:hover { + border: 1px solid #0A246A; + background-color: #B6BDD2; +} + +.addbutton { + background-image: url('../images/add.gif'); + float: left; + margin-right: 3px; +} + +.removebutton { + background-image: url('../images/remove.gif'); + float: left; +} + +.moveupbutton { + background-image: url('../images/move_up.gif'); + float: left; + margin-right: 3px; +} + +.movedownbutton { + background-image: url('../images/move_down.gif'); + float: left; +} + +.selected { + border: 1px solid #0A246A; + background-color: #B6BDD2; +} + +.toolbar { + width: 100%; +} + +#headlist { + width: 100%; + margin-top: 3px; + font-size: 11px; +} + +#info, #title_element, #meta_element, #script_element, #style_element, #base_element, #link_element, #comment_element, #unknown_element { + display: none; +} + +#addmenu { + position: absolute; + border: 1px solid gray; + display: none; + z-index: 100; + background-color: white; +} + +#addmenu a { + display: block; + width: 100%; + line-height: 20px; + text-decoration: none; + background-color: white; +} + +#addmenu a:hover { + background-color: #B6BDD2; + color: black; +} + +#addmenu span { + padding-left: 10px; + padding-right: 10px; +} + +#updateElementPanel { + display: none; +} + +#script_element .panel_wrapper div.current { + height: 108px; +} + +#style_element .panel_wrapper div.current { + height: 108px; +} + +#link_element .panel_wrapper div.current { + height: 140px; +} + +#element_script_value { + width: 100%; + height: 100px; +} + +#element_comment_value { + width: 100%; + height: 120px; +} + +#element_style_value { + width: 100%; + height: 100px; +} + +#element_title, #element_script_src, #element_meta_name, #element_meta_content, #element_base_href, #element_link_href, #element_link_title { + width: 250px; +} + +.updateElementButton { + margin-top: 3px; +} + +/* MSIE specific styles */ + +* html .addbutton, * html .removebutton, * html .moveupbutton, * html .movedownbutton { + width: 22px; + height: 22px; +} + +textarea { + height: 55px; +} + +.panel_wrapper div.current {height:420px;} \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css new file mode 100644 index 0000000..7a3334f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css @@ -0,0 +1,182 @@ +/* Hide the advanced tab */ +#advanced_tab { + display: none; +} + +#metatitle, #metakeywords, #metadescription, #metaauthor, #metacopyright { + width: 280px; +} + +#doctype, #docencoding { + width: 200px; +} + +#langcode { + width: 30px; +} + +#bgimage { + width: 220px; +} + +#fontface { + width: 240px; +} + +#leftmargin, #rightmargin, #topmargin, #bottommargin { + width: 50px; +} + +.panel_wrapper div.current { + height: 400px; +} + +#stylesheet, #style { + width: 240px; +} + +/* Head list classes */ + +.headlistwrapper { + width: 100%; +} + +.addbutton, .removebutton, .moveupbutton, .movedownbutton { + border-top: 1px solid; + border-left: 1px solid; + border-bottom: 1px solid; + border-right: 1px solid; + border-color: #F0F0EE; + cursor: default; + display: block; + width: 20px; + height: 20px; +} + +#doctypes { + width: 200px; +} + +.addbutton:hover, .removebutton:hover, .moveupbutton:hover, .movedownbutton:hover { + border: 1px solid #0A246A; + background-color: #B6BDD2; +} + +.addbutton { + background-image: url('../images/add.gif'); + float: left; + margin-right: 3px; +} + +.removebutton { + background-image: url('../images/remove.gif'); + float: left; +} + +.moveupbutton { + background-image: url('../images/move_up.gif'); + float: left; + margin-right: 3px; +} + +.movedownbutton { + background-image: url('../images/move_down.gif'); + float: left; +} + +.selected { + border: 1px solid #0A246A; + background-color: #B6BDD2; +} + +.toolbar { + width: 100%; +} + +#headlist { + width: 100%; + margin-top: 3px; + font-size: 11px; +} + +#info, #title_element, #meta_element, #script_element, #style_element, #base_element, #link_element, #comment_element, #unknown_element { + display: none; +} + +#addmenu { + position: absolute; + border: 1px solid gray; + display: none; + z-index: 100; + background-color: white; +} + +#addmenu a { + display: block; + width: 100%; + line-height: 20px; + text-decoration: none; + background-color: white; +} + +#addmenu a:hover { + background-color: #B6BDD2; + color: black; +} + +#addmenu span { + padding-left: 10px; + padding-right: 10px; +} + +#updateElementPanel { + display: none; +} + +#script_element .panel_wrapper div.current { + height: 108px; +} + +#style_element .panel_wrapper div.current { + height: 108px; +} + +#link_element .panel_wrapper div.current { + height: 140px; +} + +#element_script_value { + width: 100%; + height: 100px; +} + +#element_comment_value { + width: 100%; + height: 120px; +} + +#element_style_value { + width: 100%; + height: 100px; +} + +#element_title, #element_script_src, #element_meta_name, #element_meta_content, #element_base_href, #element_link_href, #element_link_title { + width: 250px; +} + +.updateElementButton { + margin-top: 3px; +} + +/* MSIE specific styles */ + +* html .addbutton, * html .removebutton, * html .moveupbutton, * html .movedownbutton { + width: 22px; + height: 22px; +} + +textarea { + height: 55px; +} + +.panel_wrapper div.current {height:420px;} \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js new file mode 100644 index 0000000..8e11bfc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.FullPagePlugin",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceFullPageProperties",function(){a.windowManager.open({file:b+"/fullpage.htm",width:430+parseInt(a.getLang("fullpage.delta_width",0)),height:495+parseInt(a.getLang("fullpage.delta_height",0)),inline:1},{plugin_url:b,head_html:c.head})});a.addButton("fullpage",{title:"fullpage.desc",cmd:"mceFullPageProperties"});a.onBeforeSetContent.add(c._setContent,c);a.onSetContent.add(c._setBodyAttribs,c);a.onGetContent.add(c._getContent,c)},getInfo:function(){return{longname:"Fullpage",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_setBodyAttribs:function(d,a){var l,c,e,g,b,h,j,f=this.head.match(/body(.*?)>/i);if(f&&f[1]){l=f[1].match(/\s*(\w+\s*=\s*".*?"|\w+\s*=\s*'.*?'|\w+\s*=\s*\w+|\w+)\s*/g);if(l){for(c=0,e=l.length;c",a);h.head=f.substring(0,a+1);j=f.indexOf("\n'}h.head+=d.getParam("fullpage_default_doctype",'');h.head+="\n\n\n"+d.getParam("fullpage_default_title","Untitled document")+"\n";if(g=d.getParam("fullpage_default_encoding")){h.head+='\n'}if(g=d.getParam("fullpage_default_font_family")){i+="font-family: "+g+";"}if(g=d.getParam("fullpage_default_font_size")){i+="font-size: "+g+";"}if(g=d.getParam("fullpage_default_text_color")){i+="color: "+g+";"}h.head+="\n\n";h.foot="\n\n"}},_getContent:function(a,c){var b=this;if(!c.source_view||!a.getParam("fullpage_hide_in_source_view")){c.content=tinymce.trim(b.head)+"\n"+tinymce.trim(c.content)+"\n"+tinymce.trim(b.foot)}}});tinymce.PluginManager.add("fullpage",tinymce.plugins.FullPagePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js new file mode 100644 index 0000000..b7d51d5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js @@ -0,0 +1,149 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.FullPagePlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceFullPageProperties', function() { + ed.windowManager.open({ + file : url + '/fullpage.htm', + width : 430 + parseInt(ed.getLang('fullpage.delta_width', 0)), + height : 495 + parseInt(ed.getLang('fullpage.delta_height', 0)), + inline : 1 + }, { + plugin_url : url, + head_html : t.head + }); + }); + + // Register buttons + ed.addButton('fullpage', {title : 'fullpage.desc', cmd : 'mceFullPageProperties'}); + + ed.onBeforeSetContent.add(t._setContent, t); + ed.onSetContent.add(t._setBodyAttribs, t); + ed.onGetContent.add(t._getContent, t); + }, + + getInfo : function() { + return { + longname : 'Fullpage', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private plugin internal methods + + _setBodyAttribs : function(ed, o) { + var bdattr, i, len, kv, k, v, t, attr = this.head.match(/body(.*?)>/i); + + if (attr && attr[1]) { + bdattr = attr[1].match(/\s*(\w+\s*=\s*".*?"|\w+\s*=\s*'.*?'|\w+\s*=\s*\w+|\w+)\s*/g); + + if (bdattr) { + for(i = 0, len = bdattr.length; i < len; i++) { + kv = bdattr[i].split('='); + k = kv[0].replace(/\s/,''); + v = kv[1]; + + if (v) { + v = v.replace(/^\s+/,'').replace(/\s+$/,''); + t = v.match(/^["'](.*)["']$/); + + if (t) + v = t[1]; + } else + v = k; + + ed.dom.setAttrib(ed.getBody(), 'style', v); + } + } + } + }, + + _createSerializer : function() { + return new tinymce.dom.Serializer({ + dom : this.editor.dom, + apply_source_formatting : true + }); + }, + + _setContent : function(ed, o) { + var t = this, sp, ep, c = o.content, v, st = ''; + + if (o.source_view && ed.getParam('fullpage_hide_in_source_view')) + return; + + // Parse out head, body and footer + c = c.replace(/<(\/?)BODY/gi, '<$1body'); + sp = c.indexOf('', sp); + t.head = c.substring(0, sp + 1); + + ep = c.indexOf('\n'; + + t.head += ed.getParam('fullpage_default_doctype', ''); + t.head += '\n\n\n' + ed.getParam('fullpage_default_title', 'Untitled document') + '\n'; + + if (v = ed.getParam('fullpage_default_encoding')) + t.head += '\n'; + + if (v = ed.getParam('fullpage_default_font_family')) + st += 'font-family: ' + v + ';'; + + if (v = ed.getParam('fullpage_default_font_size')) + st += 'font-size: ' + v + ';'; + + if (v = ed.getParam('fullpage_default_text_color')) + st += 'color: ' + v + ';'; + + t.head += '\n\n'; + t.foot = '\n\n'; + } + }, + + _getContent : function(ed, o) { + var t = this; + + if (!o.source_view || !ed.getParam('fullpage_hide_in_source_view')) + o.content = tinymce.trim(t.head) + '\n' + tinymce.trim(o.content) + '\n' + tinymce.trim(t.foot); + } + }); + + // Register plugin + tinymce.PluginManager.add('fullpage', tinymce.plugins.FullPagePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm new file mode 100644 index 0000000..c32afaf --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm @@ -0,0 +1,571 @@ + + + + {#fullpage_dlg.title} + + + + + + + +
+ + +
+
+
+ {#fullpage_dlg.meta_props} + + + + + + + + + + + + + + + + + + + + + + + + + + +
 
 
 
 
 
  + +
+
+ +
+ {#fullpage_dlg.langprops} + + + + + + + + + + + + + + + + + + + + + + +
+ +
  + +
 
+ +
 
+
+
+ +
+
+ {#fullpage_dlg.appearance_textprops} + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + +
 
+
+
+ +
+ {#fullpage_dlg.appearance_bgprops} + + + + + + + + + + +
+ + + + + +
 
+
+ + + + + +
 
+
+
+ +
+ {#fullpage_dlg.appearance_marginprops} + + + + + + + + + + + + + + +
+
+ +
+ {#fullpage_dlg.appearance_linkprops} + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
 
+
+ + + + + +
 
+
  
+
+ +
+ {#fullpage_dlg.appearance_style} + + + + + + + + + + +
+ + + + +
 
+
+
+ +
+ + +
+ {#fullpage_dlg.head_elements} + +
+
+
+ + +
+
+ + +
+
+
+ +
+
+ +
+ {#fullpage_dlg.meta_element} + + + + + + + + + + + + + + +
+ + +
+ +
+ {#fullpage_dlg.title_element} + + + + + + +
+ + +
+ +
+ {#fullpage_dlg.script_element} + + + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+ + + + +
 
+
+ +
+ +
+
+ + +
+ +
+ {#fullpage_dlg.style_element} + + + +
+ +
+
+ + + + + + + + + +
+
+ +
+ +
+
+ + +
+ +
+ {#fullpage_dlg.base_element} + + + + + + + + + + +
+ + +
+ + + +
+ {#fullpage_dlg.comment_element} + + + + +
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/all-wcprops new file mode 100644 index 0000000..dfe7a0c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/fullpage/js +END +fullpage.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/entries new file mode 100644 index 0000000..0448631 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/fullpage/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +fullpage.js +file + + + + +2010-06-04T12:51:46.345442Z +bf32a127219fc60b2755c7fab7042f75 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +15842 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/text-base/fullpage.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/text-base/fullpage.js.svn-base new file mode 100644 index 0000000..a1bb719 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullpage/js/.svn/text-base/fullpage.js.svn-base @@ -0,0 +1,471 @@ +/** + * fullpage.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +tinyMCEPopup.requireLangPack(); + +var doc; + +var defaultDocTypes = + 'XHTML 1.0 Transitional=,' + + 'XHTML 1.0 Frameset=,' + + 'XHTML 1.0 Strict=,' + + 'XHTML 1.1=,' + + 'HTML 4.01 Transitional=,' + + 'HTML 4.01 Strict=,' + + 'HTML 4.01 Frameset='; + +var defaultEncodings = + 'Western european (iso-8859-1)=iso-8859-1,' + + 'Central European (iso-8859-2)=iso-8859-2,' + + 'Unicode (UTF-8)=utf-8,' + + 'Chinese traditional (Big5)=big5,' + + 'Cyrillic (iso-8859-5)=iso-8859-5,' + + 'Japanese (iso-2022-jp)=iso-2022-jp,' + + 'Greek (iso-8859-7)=iso-8859-7,' + + 'Korean (iso-2022-kr)=iso-2022-kr,' + + 'ASCII (us-ascii)=us-ascii'; + +var defaultMediaTypes = + 'all=all,' + + 'screen=screen,' + + 'print=print,' + + 'tty=tty,' + + 'tv=tv,' + + 'projection=projection,' + + 'handheld=handheld,' + + 'braille=braille,' + + 'aural=aural'; + +var defaultFontNames = 'Arial=arial,helvetica,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,times new roman,times,serif;Tahoma=tahoma,arial,helvetica,sans-serif;Times New Roman=times new roman,times,serif;Verdana=verdana,arial,helvetica,sans-serif;Impact=impact;WingDings=wingdings'; +var defaultFontSizes = '10px,11px,12px,13px,14px,15px,16px'; + +function init() { + var f = document.forms['fullpage'], el = f.elements, e, i, p, doctypes, encodings, mediaTypes, fonts, ed = tinyMCEPopup.editor, dom = tinyMCEPopup.dom, style; + + // Setup doctype select box + doctypes = ed.getParam("fullpage_doctypes", defaultDocTypes).split(','); + for (i=0; i 1) + addSelectValue(f, 'doctypes', p[0], p[1]); + } + + // Setup fonts select box + fonts = ed.getParam("fullpage_fonts", defaultFontNames).split(';'); + for (i=0; i 1) + addSelectValue(f, 'fontface', p[0], p[1]); + } + + // Setup fontsize select box + fonts = ed.getParam("fullpage_fontsizes", defaultFontSizes).split(','); + for (i=0; i 1) { + addSelectValue(f, 'element_style_media', p[0], p[1]); + addSelectValue(f, 'element_link_media', p[0], p[1]); + } + } + + // Setup encodings select box + encodings = ed.getParam("fullpage_encodings", defaultEncodings).split(','); + for (i=0; i 1) { + addSelectValue(f, 'docencoding', p[0], p[1]); + addSelectValue(f, 'element_script_charset', p[0], p[1]); + addSelectValue(f, 'element_link_charset', p[0], p[1]); + } + } + + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor'); + document.getElementById('link_color_pickcontainer').innerHTML = getColorPickerHTML('link_color_pick','link_color'); + //document.getElementById('hover_color_pickcontainer').innerHTML = getColorPickerHTML('hover_color_pick','hover_color'); + document.getElementById('visited_color_pickcontainer').innerHTML = getColorPickerHTML('visited_color_pick','visited_color'); + document.getElementById('active_color_pickcontainer').innerHTML = getColorPickerHTML('active_color_pick','active_color'); + document.getElementById('textcolor_pickcontainer').innerHTML = getColorPickerHTML('textcolor_pick','textcolor'); + document.getElementById('stylesheet_browsercontainer').innerHTML = getBrowserHTML('stylesheetbrowser','stylesheet','file','fullpage'); + document.getElementById('link_href_pickcontainer').innerHTML = getBrowserHTML('link_href_browser','element_link_href','file','fullpage'); + document.getElementById('script_src_pickcontainer').innerHTML = getBrowserHTML('script_src_browser','element_script_src','file','fullpage'); + document.getElementById('bgimage_pickcontainer').innerHTML = getBrowserHTML('bgimage_browser','bgimage','image','fullpage'); + + // Resize some elements + if (isVisible('stylesheetbrowser')) + document.getElementById('stylesheet').style.width = '220px'; + + if (isVisible('link_href_browser')) + document.getElementById('element_link_href').style.width = '230px'; + + if (isVisible('bgimage_browser')) + document.getElementById('bgimage').style.width = '210px'; + + // Add iframe + dom.add(document.body, 'iframe', {id : 'documentIframe', src : 'javascript:""', style : {display : 'none'}}); + doc = dom.get('documentIframe').contentWindow.document; + h = tinyMCEPopup.getWindowArg('head_html'); + + // Preprocess the HTML disable scripts and urls + h = h.replace(/ + + + +
+ +
+ + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js new file mode 100644 index 0000000..dfb3f16 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(c,d){var e=this,f={},b;e.editor=c;c.addCommand("mceFullScreen",function(){var h,i=a.doc.documentElement;if(c.getParam("fullscreen_is_enabled")){if(c.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",e.resizeFunc);tinyMCE.get(c.getParam("fullscreen_editor_id")).setContent(c.getContent({format:"raw"}),{format:"raw"});tinyMCE.remove(c);a.remove("mce_fullscreen_container");i.style.overflow=c.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",c.getParam("fullscreen_overflow"));a.win.scrollTo(c.getParam("fullscreen_scrollx"),c.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(c.getParam("fullscreen_new_window")){h=a.win.open(d+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{h.resizeTo(screen.availWidth,screen.availHeight)}catch(g){}}else{tinyMCE.oldSettings=tinyMCE.settings;f.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";f.fullscreen_html_overflow=a.getStyle(i,"overflow",1);b=a.getViewPort();f.fullscreen_scrollx=b.x;f.fullscreen_scrolly=b.y;if(tinymce.isOpera&&f.fullscreen_overflow=="visible"){f.fullscreen_overflow="auto"}if(tinymce.isIE&&f.fullscreen_overflow=="scroll"){f.fullscreen_overflow="auto"}if(tinymce.isIE&&(f.fullscreen_html_overflow=="visible"||f.fullscreen_html_overflow=="scroll")){f.fullscreen_html_overflow="auto"}if(f.fullscreen_overflow=="0px"){f.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");i.style.overflow="hidden";b=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){b.h-=1}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+(tinymce.isIE6||(tinymce.isIE&&!a.boxModel)?"absolute":"fixed")+";top:0;left:0;width:"+b.w+"px;height:"+b.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(c.settings,function(j,k){f[k]=j});f.id="mce_fullscreen";f.width=n.clientWidth;f.height=n.clientHeight-15;f.fullscreen_is_enabled=true;f.fullscreen_editor_id=c.id;f.theme_advanced_resizing=false;f.save_onsavecallback=function(){c.setContent(tinyMCE.get(f.id).getContent({format:"raw"}),{format:"raw"});c.execCommand("mceSave")};tinymce.each(c.getParam("fullscreen_settings"),function(l,j){f[j]=l});if(f.theme_advanced_toolbar_location==="external"){f.theme_advanced_toolbar_location="top"}e.fullscreenEditor=new tinymce.Editor("mce_fullscreen",f);e.fullscreenEditor.onInit.add(function(){e.fullscreenEditor.setContent(c.getContent());e.fullscreenEditor.focus()});e.fullscreenEditor.render();tinyMCE.add(e.fullscreenEditor);e.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");e.fullscreenElement.update();e.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var j=tinymce.DOM.getViewPort();e.fullscreenEditor.theme.resizeTo(j.w,j.h)})}});c.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});c.onNodeChange.add(function(h,g){g.setActive("fullscreen",h.getParam("fullscreen_is_enabled"))})},getInfo:function(){return{longname:"Fullscreen",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("fullscreen",tinymce.plugins.FullScreenPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js new file mode 100644 index 0000000..7429fff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js @@ -0,0 +1,148 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var DOM = tinymce.DOM; + + tinymce.create('tinymce.plugins.FullScreenPlugin', { + init : function(ed, url) { + var t = this, s = {}, vp; + + t.editor = ed; + + // Register commands + ed.addCommand('mceFullScreen', function() { + var win, de = DOM.doc.documentElement; + + if (ed.getParam('fullscreen_is_enabled')) { + if (ed.getParam('fullscreen_new_window')) + closeFullscreen(); // Call to close in new window + else { + DOM.win.setTimeout(function() { + tinymce.dom.Event.remove(DOM.win, 'resize', t.resizeFunc); + tinyMCE.get(ed.getParam('fullscreen_editor_id')).setContent(ed.getContent({format : 'raw'}), {format : 'raw'}); + tinyMCE.remove(ed); + DOM.remove('mce_fullscreen_container'); + de.style.overflow = ed.getParam('fullscreen_html_overflow'); + DOM.setStyle(DOM.doc.body, 'overflow', ed.getParam('fullscreen_overflow')); + DOM.win.scrollTo(ed.getParam('fullscreen_scrollx'), ed.getParam('fullscreen_scrolly')); + tinyMCE.settings = tinyMCE.oldSettings; // Restore old settings + }, 10); + } + + return; + } + + if (ed.getParam('fullscreen_new_window')) { + win = DOM.win.open(url + "/fullscreen.htm", "mceFullScreenPopup", "fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width=" + screen.availWidth + ",height=" + screen.availHeight); + try { + win.resizeTo(screen.availWidth, screen.availHeight); + } catch (e) { + // Ignore + } + } else { + tinyMCE.oldSettings = tinyMCE.settings; // Store old settings + s.fullscreen_overflow = DOM.getStyle(DOM.doc.body, 'overflow', 1) || 'auto'; + s.fullscreen_html_overflow = DOM.getStyle(de, 'overflow', 1); + vp = DOM.getViewPort(); + s.fullscreen_scrollx = vp.x; + s.fullscreen_scrolly = vp.y; + + // Fixes an Opera bug where the scrollbars doesn't reappear + if (tinymce.isOpera && s.fullscreen_overflow == 'visible') + s.fullscreen_overflow = 'auto'; + + // Fixes an IE bug where horizontal scrollbars would appear + if (tinymce.isIE && s.fullscreen_overflow == 'scroll') + s.fullscreen_overflow = 'auto'; + + // Fixes an IE bug where the scrollbars doesn't reappear + if (tinymce.isIE && (s.fullscreen_html_overflow == 'visible' || s.fullscreen_html_overflow == 'scroll')) + s.fullscreen_html_overflow = 'auto'; + + if (s.fullscreen_overflow == '0px') + s.fullscreen_overflow = ''; + + DOM.setStyle(DOM.doc.body, 'overflow', 'hidden'); + de.style.overflow = 'hidden'; //Fix for IE6/7 + vp = DOM.getViewPort(); + DOM.win.scrollTo(0, 0); + + if (tinymce.isIE) + vp.h -= 1; + + n = DOM.add(DOM.doc.body, 'div', {id : 'mce_fullscreen_container', style : 'position:' + (tinymce.isIE6 || (tinymce.isIE && !DOM.boxModel) ? 'absolute' : 'fixed') + ';top:0;left:0;width:' + vp.w + 'px;height:' + vp.h + 'px;z-index:200000;'}); + DOM.add(n, 'div', {id : 'mce_fullscreen'}); + + tinymce.each(ed.settings, function(v, n) { + s[n] = v; + }); + + s.id = 'mce_fullscreen'; + s.width = n.clientWidth; + s.height = n.clientHeight - 15; + s.fullscreen_is_enabled = true; + s.fullscreen_editor_id = ed.id; + s.theme_advanced_resizing = false; + s.save_onsavecallback = function() { + ed.setContent(tinyMCE.get(s.id).getContent({format : 'raw'}), {format : 'raw'}); + ed.execCommand('mceSave'); + }; + + tinymce.each(ed.getParam('fullscreen_settings'), function(v, k) { + s[k] = v; + }); + + if (s.theme_advanced_toolbar_location === 'external') + s.theme_advanced_toolbar_location = 'top'; + + t.fullscreenEditor = new tinymce.Editor('mce_fullscreen', s); + t.fullscreenEditor.onInit.add(function() { + t.fullscreenEditor.setContent(ed.getContent()); + t.fullscreenEditor.focus(); + }); + + t.fullscreenEditor.render(); + tinyMCE.add(t.fullscreenEditor); + + t.fullscreenElement = new tinymce.dom.Element('mce_fullscreen_container'); + t.fullscreenElement.update(); + //document.body.overflow = 'hidden'; + + t.resizeFunc = tinymce.dom.Event.add(DOM.win, 'resize', function() { + var vp = tinymce.DOM.getViewPort(); + + t.fullscreenEditor.theme.resizeTo(vp.w, vp.h); + }); + } + }); + + // Register buttons + ed.addButton('fullscreen', {title : 'fullscreen.desc', cmd : 'mceFullScreen'}); + + ed.onNodeChange.add(function(ed, cm) { + cm.setActive('fullscreen', ed.getParam('fullscreen_is_enabled')); + }); + }, + + getInfo : function() { + return { + longname : 'Fullscreen', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('fullscreen', tinymce.plugins.FullScreenPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm b/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm new file mode 100644 index 0000000..4c4f27e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm @@ -0,0 +1,109 @@ + + + + + + + + +
+ +
+ + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/all-wcprops new file mode 100644 index 0000000..04b5f9b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/entries new file mode 100644 index 0000000..fb1e862 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/entries @@ -0,0 +1,102 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli +http://django-grappelli.googlecode.com/svn + + + +2010-05-27T09:43:10.160681Z +1036 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.778948Z +3a010234df22f7a5f2b4cde36d67307c +2010-05-27T09:43:10.160681Z +1036 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +8576 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.778948Z +b5fb46961db18c13962afc03c1a2b49b +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +2495 + +img +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..4812d11 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1,202 @@ +(function() { + + tinymce.PluginManager.requireLangPack('grappelli'); + var DOM = tinymce.DOM; + + tinymce.create("tinymce.plugins.Grappelli", { + init: function(ed, url) { + var t = this; + tb = ed.getParam("grappelli_adv_toolbar", "toolbar2"); + documentstructure_css = url + "../../../themes/advanced/skins/grappelli/content_documentstructure_" + ed.settings.language + ".css"; + cookie_date = new Date(); + var year = cookie_date.getFullYear(); + cookie_date.setYear(year + 1); + + // get/set cookie + cookie_grappelli_show_documentstructure = tinymce.util.Cookie.get('grappelli_show_documentstructure'); + if (cookie_grappelli_show_documentstructure != null) { + ed.settings.grappelli_show_documentstructure = cookie_grappelli_show_documentstructure; + } else { + tinymce.util.Cookie.set('grappelli_show_documentstructure', ed.settings.grappelli_show_documentstructure, cookie_date, '/'); + } + + ed.onInit.add(function() { + if ("mce_fullscreen" == ed.id) { + ed.dom.addClass(ed.dom.select('body'), 'fullscreen'); + } + if (ed.settings.grappelli_adv_hidden) { + t._hide_adv_menu(ed); + } else { + t._show_adv_menu(ed); + } + if (ed.settings.grappelli_show_documentstructure == "on") { + t._show_documentstructure(ed); + } else { + t._hide_documentstructure(ed); + } + }); + + // ADD COMMAND for SHOW/HIDE ADVANCED MENU + ed.addCommand("Grappelli_Adv", function() { + if (DOM.isHidden(ed.controlManager.get(tb).id)) { + t._show_adv_menu(ed); + } else { + t._hide_adv_menu(ed); + } + }); + + // ADD COMMAND for SHOW/HIDE DOCUMENTSTRUCTURE + ed.addCommand("Grappelli_DocumentStructure", function() { + i = ed.controlManager; + if (ed.settings.grappelli_show_documentstructure == "on") { + t._hide_documentstructure(ed); + } else { + t._show_documentstructure(ed); + } + }); + + // ADD BUTTON: ADVANCED MENU + ed.addButton("grappelli_adv", { + title: "grappelli.grappelli_adv_desc", + cmd: "Grappelli_Adv" + }); + + // ADD BUTTON: DOCUMENT STRUCTURE + ed.addButton("grappelli_documentstructure", { + title: "grappelli.grappelli_documentstructure_desc", + cmd: "Grappelli_DocumentStructure" + }); + + /// FULLSCREEN + ed.onBeforeExecCommand.add(function(ed, cmd, ui, val) { + if ("mceFullScreen" != cmd) { + return; + }; + if ("mce_fullscreen" == ed.id) { + base_ed = tinyMCE.get(ed.settings.fullscreen_editor_id); + + /// ADVANCED MENU + if (!ed.settings.grappelli_adv_hidden) { + t._show_adv_menu(base_ed); + } else { + t._hide_adv_menu(base_ed); + } + + /// DOCUMENT STRUCTURE + if (ed.settings.grappelli_show_documentstructure == "on") { + t._show_documentstructure(base_ed); + } else { + t._hide_documentstructure(base_ed); + } + + } + }); + + ed.addShortcut("alt+shift+z", ed.getLang("grappelli_adv_desc"), "Grappelli_Adv"); + + // CONTENT HAS TO BE WITHIN A BLOCK-LEVEL-ELEMENT + // ed.onNodeChange.add(function(ed, cm, e) { + // if (e.nodeName == "TD" || e.nodeName == "BODY") { + // cn = e.childNodes; + // for (i = cn.length - 1; i >= 0; i--) { + // c_cn = cn[i]; + // if (c_cn.nodeType == 3 || (!ed.dom.isBlock(c_cn) && c_cn.nodeType != 8)) { + // if (c_cn.nodeType != 3 || /[^\s]/g.test(c_cn.nodeValue)) { + // bl = ed.dom.create('p'); + // bl.appendChild(c_cn.cloneNode(1)); + // new_cn = c_cn.parentNode.replaceChild(bl, c_cn); + // // move caret + // r = ed.getDoc().createRange(); + // r.setStart(bl, bl.nodeValue ? bl.nodeValue.length : 0); + // r.setEnd(bl, bl.nodeValue ? bl.nodeValue.length : 0); + // ed.selection.setRng(r); + // } + // } + // } + // } + // }); + + }, + + // INTERNAL: RESIZE + _resizeIframe: function(ed, tb, b) { + var iframe = ed.getContentAreaContainer().firstChild; + DOM.setStyle(iframe, "height", iframe.clientHeight + b); + ed.theme.deltaHeight += b + }, + + // INTERNAL: SHOW/HIDE DOCUMENT STRUCTURE + _show_documentstructure: function(ed) { + head = ed.getBody().previousSibling; + var headChilds = head.childNodes; + + for (var i = 0; i < headChilds.length; i++) { + if (headChilds[i].nodeName == "LINK" + && headChilds[i].getAttribute('href') == documentstructure_css) { + // documentstructure_css is already set so... + return; + } + } + var vs_link = document.createElement("link"); + vs_link.rel="stylesheet"; + vs_link.mce_href = documentstructure_css; + vs_link.href = documentstructure_css; + head.appendChild(vs_link); + ed.settings.grappelli_show_documentstructure = 'on'; + tinymce.util.Cookie.set('grappelli_show_documentstructure', 'on', cookie_date, '/'); + ed.controlManager.setActive('grappelli_documentstructure', true); + }, + _hide_documentstructure: function(ed) { + head = ed.getBody().previousSibling; + vs_link = null; + + var headChilds = head.childNodes; + + for (var i = 0; i < headChilds.length; i++) { + if (headChilds[i].nodeName == "LINK" + && headChilds[i].getAttribute('href') == documentstructure_css) { + // found the node with documentstructure_css + vs_link = headChilds[i]; + break; + } + } + + if (vs_link !== null) { + // if we found the node with documentstructure_css, delete it + head.removeChild(vs_link); + ed.settings.grappelli_show_documentstructure = 'off'; + tinymce.util.Cookie.set('grappelli_show_documentstructure', 'off', cookie_date, '/'); + ed.controlManager.setActive('grappelli_documentstructure', false); + } + }, + + // INTERNAL: SHOW/HIDE ADVANCED MENU + _show_adv_menu: function(ed) { + ed.controlManager.setActive("grappelli_adv", 1); + DOM.show(ed.controlManager.get(tb).id); + this._resizeIframe(ed, tb, -28); + ed.settings.grappelli_adv_hidden = 0; + }, + _hide_adv_menu: function(ed) { + ed.controlManager.setActive("grappelli_adv", 0); + DOM.hide(ed.controlManager.get(tb).id); + this._resizeIframe(ed, tb, 28); + ed.settings.grappelli_adv_hidden = 1; + }, + + // GET INFO + getInfo: function() { + return { + longname: "Grappelli Plugin", + author: "vonautomatisch (patrick kranzlmueller)", + authorurl: "http://vonautomatisch.at", + infourl: "http://code.google.com/p/django-grappelli/", + version: "1.0" + } + } + + }); + + tinymce.PluginManager.add("grappelli", tinymce.plugins.Grappelli) + +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..6cf8c39 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,62 @@ +(function() { + var a = tinymce.DOM; + tinymce.create("tinymce.plugins.Grappelli", { + init: function(c, d) { + var e = this, + h = c.getParam("grappelli_adv_toolbar", "toolbar2"), + g = 0, + f, + b; + f = ''; + b = ''; + if (getUserSetting("hidetb", "0") == "1") { + c.settings.wordpress_adv_hidden = 0 + } + c.onPostRender.add(function() { + if (c.getParam("wordpress_adv_hidden", 1)) { + a.hide(c.controlManager.get(h).id); + e._resizeIframe(c, h, 28) + } + }); + c.addCommand("Grappelli_Adv", + function() { + var j = c.controlManager.get(h).id, + i = c.controlManager; + if (a.isHidden(j)) { + i.setActive("wp_adv", 1); + a.show(j); + e._resizeIframe(c, h, -28); + c.settings.wordpress_adv_hidden = 0; + setUserSetting("hidetb", "1") + } else { + i.setActive("wp_adv", 0); + a.hide(j); + e._resizeIframe(c, h, 28); + c.settings.wordpress_adv_hidden = 1; + setUserSetting("hidetb", "0") + } + }); + c.addButton("grappelli_adv", { + title: "grappelli.grappelli_adv_desc", + image: d + "/img/toolbars.gif", + cmd: "Grappelli_Adv" + }); + c.addShortcut("alt+shift+z", c.getLang("grappelli_adv_desc"), "Grappelli_Adv"); + + e.onNodeChange.add(function(ed, cm, e) { + alert(cm); + }); + + }, + getInfo: function() { + return { + longname: "Grappelli Plugin", + author: "vonautomatisch", + authorurl: "http://vonautomatisch.at", + infourl: "http://vonautomatisch.at", + version: "1.0" + } + } + }); + tinymce.PluginManager.add("grappelli", tinymce.plugins.Grappelli) +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js new file mode 100755 index 0000000..4812d11 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js @@ -0,0 +1,202 @@ +(function() { + + tinymce.PluginManager.requireLangPack('grappelli'); + var DOM = tinymce.DOM; + + tinymce.create("tinymce.plugins.Grappelli", { + init: function(ed, url) { + var t = this; + tb = ed.getParam("grappelli_adv_toolbar", "toolbar2"); + documentstructure_css = url + "../../../themes/advanced/skins/grappelli/content_documentstructure_" + ed.settings.language + ".css"; + cookie_date = new Date(); + var year = cookie_date.getFullYear(); + cookie_date.setYear(year + 1); + + // get/set cookie + cookie_grappelli_show_documentstructure = tinymce.util.Cookie.get('grappelli_show_documentstructure'); + if (cookie_grappelli_show_documentstructure != null) { + ed.settings.grappelli_show_documentstructure = cookie_grappelli_show_documentstructure; + } else { + tinymce.util.Cookie.set('grappelli_show_documentstructure', ed.settings.grappelli_show_documentstructure, cookie_date, '/'); + } + + ed.onInit.add(function() { + if ("mce_fullscreen" == ed.id) { + ed.dom.addClass(ed.dom.select('body'), 'fullscreen'); + } + if (ed.settings.grappelli_adv_hidden) { + t._hide_adv_menu(ed); + } else { + t._show_adv_menu(ed); + } + if (ed.settings.grappelli_show_documentstructure == "on") { + t._show_documentstructure(ed); + } else { + t._hide_documentstructure(ed); + } + }); + + // ADD COMMAND for SHOW/HIDE ADVANCED MENU + ed.addCommand("Grappelli_Adv", function() { + if (DOM.isHidden(ed.controlManager.get(tb).id)) { + t._show_adv_menu(ed); + } else { + t._hide_adv_menu(ed); + } + }); + + // ADD COMMAND for SHOW/HIDE DOCUMENTSTRUCTURE + ed.addCommand("Grappelli_DocumentStructure", function() { + i = ed.controlManager; + if (ed.settings.grappelli_show_documentstructure == "on") { + t._hide_documentstructure(ed); + } else { + t._show_documentstructure(ed); + } + }); + + // ADD BUTTON: ADVANCED MENU + ed.addButton("grappelli_adv", { + title: "grappelli.grappelli_adv_desc", + cmd: "Grappelli_Adv" + }); + + // ADD BUTTON: DOCUMENT STRUCTURE + ed.addButton("grappelli_documentstructure", { + title: "grappelli.grappelli_documentstructure_desc", + cmd: "Grappelli_DocumentStructure" + }); + + /// FULLSCREEN + ed.onBeforeExecCommand.add(function(ed, cmd, ui, val) { + if ("mceFullScreen" != cmd) { + return; + }; + if ("mce_fullscreen" == ed.id) { + base_ed = tinyMCE.get(ed.settings.fullscreen_editor_id); + + /// ADVANCED MENU + if (!ed.settings.grappelli_adv_hidden) { + t._show_adv_menu(base_ed); + } else { + t._hide_adv_menu(base_ed); + } + + /// DOCUMENT STRUCTURE + if (ed.settings.grappelli_show_documentstructure == "on") { + t._show_documentstructure(base_ed); + } else { + t._hide_documentstructure(base_ed); + } + + } + }); + + ed.addShortcut("alt+shift+z", ed.getLang("grappelli_adv_desc"), "Grappelli_Adv"); + + // CONTENT HAS TO BE WITHIN A BLOCK-LEVEL-ELEMENT + // ed.onNodeChange.add(function(ed, cm, e) { + // if (e.nodeName == "TD" || e.nodeName == "BODY") { + // cn = e.childNodes; + // for (i = cn.length - 1; i >= 0; i--) { + // c_cn = cn[i]; + // if (c_cn.nodeType == 3 || (!ed.dom.isBlock(c_cn) && c_cn.nodeType != 8)) { + // if (c_cn.nodeType != 3 || /[^\s]/g.test(c_cn.nodeValue)) { + // bl = ed.dom.create('p'); + // bl.appendChild(c_cn.cloneNode(1)); + // new_cn = c_cn.parentNode.replaceChild(bl, c_cn); + // // move caret + // r = ed.getDoc().createRange(); + // r.setStart(bl, bl.nodeValue ? bl.nodeValue.length : 0); + // r.setEnd(bl, bl.nodeValue ? bl.nodeValue.length : 0); + // ed.selection.setRng(r); + // } + // } + // } + // } + // }); + + }, + + // INTERNAL: RESIZE + _resizeIframe: function(ed, tb, b) { + var iframe = ed.getContentAreaContainer().firstChild; + DOM.setStyle(iframe, "height", iframe.clientHeight + b); + ed.theme.deltaHeight += b + }, + + // INTERNAL: SHOW/HIDE DOCUMENT STRUCTURE + _show_documentstructure: function(ed) { + head = ed.getBody().previousSibling; + var headChilds = head.childNodes; + + for (var i = 0; i < headChilds.length; i++) { + if (headChilds[i].nodeName == "LINK" + && headChilds[i].getAttribute('href') == documentstructure_css) { + // documentstructure_css is already set so... + return; + } + } + var vs_link = document.createElement("link"); + vs_link.rel="stylesheet"; + vs_link.mce_href = documentstructure_css; + vs_link.href = documentstructure_css; + head.appendChild(vs_link); + ed.settings.grappelli_show_documentstructure = 'on'; + tinymce.util.Cookie.set('grappelli_show_documentstructure', 'on', cookie_date, '/'); + ed.controlManager.setActive('grappelli_documentstructure', true); + }, + _hide_documentstructure: function(ed) { + head = ed.getBody().previousSibling; + vs_link = null; + + var headChilds = head.childNodes; + + for (var i = 0; i < headChilds.length; i++) { + if (headChilds[i].nodeName == "LINK" + && headChilds[i].getAttribute('href') == documentstructure_css) { + // found the node with documentstructure_css + vs_link = headChilds[i]; + break; + } + } + + if (vs_link !== null) { + // if we found the node with documentstructure_css, delete it + head.removeChild(vs_link); + ed.settings.grappelli_show_documentstructure = 'off'; + tinymce.util.Cookie.set('grappelli_show_documentstructure', 'off', cookie_date, '/'); + ed.controlManager.setActive('grappelli_documentstructure', false); + } + }, + + // INTERNAL: SHOW/HIDE ADVANCED MENU + _show_adv_menu: function(ed) { + ed.controlManager.setActive("grappelli_adv", 1); + DOM.show(ed.controlManager.get(tb).id); + this._resizeIframe(ed, tb, -28); + ed.settings.grappelli_adv_hidden = 0; + }, + _hide_adv_menu: function(ed) { + ed.controlManager.setActive("grappelli_adv", 0); + DOM.hide(ed.controlManager.get(tb).id); + this._resizeIframe(ed, tb, 28); + ed.settings.grappelli_adv_hidden = 1; + }, + + // GET INFO + getInfo: function() { + return { + longname: "Grappelli Plugin", + author: "vonautomatisch (patrick kranzlmueller)", + authorurl: "http://vonautomatisch.at", + infourl: "http://code.google.com/p/django-grappelli/", + version: "1.0" + } + } + + }); + + tinymce.PluginManager.add("grappelli", tinymce.plugins.Grappelli) + +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js new file mode 100755 index 0000000..6cf8c39 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js @@ -0,0 +1,62 @@ +(function() { + var a = tinymce.DOM; + tinymce.create("tinymce.plugins.Grappelli", { + init: function(c, d) { + var e = this, + h = c.getParam("grappelli_adv_toolbar", "toolbar2"), + g = 0, + f, + b; + f = ''; + b = ''; + if (getUserSetting("hidetb", "0") == "1") { + c.settings.wordpress_adv_hidden = 0 + } + c.onPostRender.add(function() { + if (c.getParam("wordpress_adv_hidden", 1)) { + a.hide(c.controlManager.get(h).id); + e._resizeIframe(c, h, 28) + } + }); + c.addCommand("Grappelli_Adv", + function() { + var j = c.controlManager.get(h).id, + i = c.controlManager; + if (a.isHidden(j)) { + i.setActive("wp_adv", 1); + a.show(j); + e._resizeIframe(c, h, -28); + c.settings.wordpress_adv_hidden = 0; + setUserSetting("hidetb", "1") + } else { + i.setActive("wp_adv", 0); + a.hide(j); + e._resizeIframe(c, h, 28); + c.settings.wordpress_adv_hidden = 1; + setUserSetting("hidetb", "0") + } + }); + c.addButton("grappelli_adv", { + title: "grappelli.grappelli_adv_desc", + image: d + "/img/toolbars.gif", + cmd: "Grappelli_Adv" + }); + c.addShortcut("alt+shift+z", c.getLang("grappelli_adv_desc"), "Grappelli_Adv"); + + e.onNodeChange.add(function(ed, cm, e) { + alert(cm); + }); + + }, + getInfo: function() { + return { + longname: "Grappelli Plugin", + author: "vonautomatisch", + authorurl: "http://vonautomatisch.at", + infourl: "http://vonautomatisch.at", + version: "1.0" + } + } + }); + tinymce.PluginManager.add("grappelli", tinymce.plugins.Grappelli) +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/all-wcprops new file mode 100644 index 0000000..bf3b342 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/img +END +visualchars.png +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png +END +show_advanced.png +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/entries new file mode 100644 index 0000000..088bb2d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +visualchars.png +file + + + + +2010-06-04T12:51:45.778948Z +e042f9289a75c37866e993e87da27b51 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +285 + +show_advanced.png +file + + + + +2010-06-04T12:51:45.778948Z +d2ca86dd63aee6fff1e0c119055a0296 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +320 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/show_advanced.png.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/show_advanced.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/show_advanced.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/visualchars.png.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/visualchars.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/prop-base/visualchars.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/text-base/show_advanced.png.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/text-base/show_advanced.png.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..466d68a3a3401cef514dac2115fdd614a548232c GIT binary patch literal 320 zcmeAS@N?(olHy`uVBq!ia0vp^;vmey1|%P7U0DF6SkfJR9T^y|-MHc(VFct$mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-%+CsY$<|P++!We>1 zH~iognEt@1K`>s8Nh*nB$u#DV%nE#ryFPFS^zfg!$8bc*L55Fcx6ibP0o*)0QC zc8Fm+QtPmW^T|*4aZ)E!<`4ay1F_YYUDeTJFgzLh>Gly@-t!JFkrY)v>@N1{@pa7 P?-)E?{an^LB{Ts5bNh8` literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/text-base/visualchars.png.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/.svn/text-base/visualchars.png.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..3a6e6a9fd352ac21c35d10276467346c9d6b983e GIT binary patch literal 285 zcmeAS@N?(olHy`uVBq!ia0vp^;vmey1|%P7U0DF6SkfJR9T^y|-MHc(VFct$mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-$x@9E+gQgJKk&;S4S%xf8hnRySc zcz8rIFDdEMd?6`GgG)wRHzXAQoN1gcu`q{O!BoD(u|z>&z5612hO3-Om)ngaE{J?_ z=Cxy3Dw$xi>0rc{hy2AF1q_lrS6*-&;r-FX5IsY<$ns)?%=G4_!;BhbavjVo-hOge z^1)2u>QkNtOFDXbdwc&c?p8d_SjcQGVw5+n!2dlSXbaR(CG}Gu6{1-oD!M<9XV;` literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png new file mode 100644 index 0000000000000000000000000000000000000000..466d68a3a3401cef514dac2115fdd614a548232c GIT binary patch literal 320 zcmeAS@N?(olHy`uVBq!ia0vp^;vmey1|%P7U0DF6SkfJR9T^y|-MHc(VFct$mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-%+CsY$<|P++!We>1 zH~iognEt@1K`>s8Nh*nB$u#DV%nE#ryFPFS^zfg!$8bc*L55Fcx6ibP0o*)0QC zc8Fm+QtPmW^T|*4aZ)E!<`4ay1F_YYUDeTJFgzLh>Gly@-t!JFkrY)v>@N1{@pa7 P?-)E?{an^LB{Ts5bNh8` literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png new file mode 100644 index 0000000000000000000000000000000000000000..3a6e6a9fd352ac21c35d10276467346c9d6b983e GIT binary patch literal 285 zcmeAS@N?(olHy`uVBq!ia0vp^;vmey1|%P7U0DF6SkfJR9T^y|-MHc(VFct$mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-$x@9E+gQgJKk&;S4S%xf8hnRySc zcz8rIFDdEMd?6`GgG)wRHzXAQoN1gcu`q{O!BoD(u|z>&z5612hO3-Om)ngaE{J?_ z=Cxy3Dw$xi>0rc{hy2AF1q_lrS6*-&;r-FX5IsY<$ns)?%=G4_!;BhbavjVo-hOge z^1)2u>QkNtOFDXbdwc&c?p8d_SjcQGVw5+n!2dlSXbaR(CG}Gu6{1-oD!M<9XV;` literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/all-wcprops new file mode 100644 index 0000000..45ce2bc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/langs +END +fr.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js +END +de.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js +END +en.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/entries new file mode 100644 index 0000000..ae4f022 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +fr.js +file + + + + +2010-06-04T12:51:45.765615Z +c2544301883a986b1010c0f07d83784d +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +158 + +de.js +file + + + + +2010-06-04T12:51:45.768947Z +f6aa505bbd6a38620ad7ff0f2d247b10 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +174 + +en.js +file + + + + +2010-06-04T12:51:45.768947Z +b0c7f8cb47a24c9a3545c85cabf830a0 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +150 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/de.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/de.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/de.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/en.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/en.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/en.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/fr.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/fr.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/prop-base/fr.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/de.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/de.js.svn-base new file mode 100644 index 0000000..b72068c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/de.js.svn-base @@ -0,0 +1,4 @@ +tinyMCE.addI18n("de.grappelli",{ +grappelli_adv_desc:"Erweitertes Menü anzeigen/verbergen", +grappelli_documentstructure_desc:"Dokumentenstruktur anzeigen/verbergen", +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/en.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/en.js.svn-base new file mode 100644 index 0000000..c264768 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/en.js.svn-base @@ -0,0 +1,4 @@ +tinyMCE.addI18n("en.grappelli",{ +grappelli_adv_desc:"Show/Hide Advanced Menu", +grappelli_documentstructure_desc:"Show/Hide Document Structure", +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/fr.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/fr.js.svn-base new file mode 100644 index 0000000..bbcccac --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/.svn/text-base/fr.js.svn-base @@ -0,0 +1,4 @@ +tinyMCE.addI18n("fr.grappelli",{ +grappelli_adv_desc:"Basculer le menu avancé", +grappelli_documentstructure_desc:"Basculé la structure de document", +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js new file mode 100755 index 0000000..b72068c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js @@ -0,0 +1,4 @@ +tinyMCE.addI18n("de.grappelli",{ +grappelli_adv_desc:"Erweitertes Menü anzeigen/verbergen", +grappelli_documentstructure_desc:"Dokumentenstruktur anzeigen/verbergen", +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js new file mode 100755 index 0000000..c264768 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js @@ -0,0 +1,4 @@ +tinyMCE.addI18n("en.grappelli",{ +grappelli_adv_desc:"Show/Hide Advanced Menu", +grappelli_documentstructure_desc:"Show/Hide Document Structure", +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js new file mode 100755 index 0000000..bbcccac --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js @@ -0,0 +1,4 @@ +tinyMCE.addI18n("fr.grappelli",{ +grappelli_adv_desc:"Basculer le menu avancé", +grappelli_documentstructure_desc:"Basculé la structure de document", +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js new file mode 100755 index 0000000..c264768 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js @@ -0,0 +1,4 @@ +tinyMCE.addI18n("en.grappelli",{ +grappelli_adv_desc:"Show/Hide Advanced Menu", +grappelli_documentstructure_desc:"Show/Hide Document Structure", +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/all-wcprops new file mode 100644 index 0000000..7a1a70c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 113 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 117 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/entries new file mode 100644 index 0000000..75d5264 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/entries @@ -0,0 +1,99 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.465634Z +730fa0092e985046fc03fc0d70ed4f29 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +11114 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.465634Z +3fbc16869bb24cfa8d4022286042f687 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +3036 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..87b81d6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1,250 @@ +(function() { + + tinymce.PluginManager.requireLangPack('grappelli_contextmenu'); + var Event = tinymce.dom.Event, each = tinymce.each, DOM = tinymce.DOM; + + tinymce.create('tinymce.plugins.ContextMenu', { + init : function(ed) { + var t = this; + + t.editor = ed; + t.onContextMenu = new tinymce.util.Dispatcher(this); + + ed.onContextMenu.add(function(ed, e) { + if (!e.ctrlKey) { + t._getMenu(ed).showMenu(e.clientX, e.clientY); + Event.add(ed.getDoc(), 'click', hide); + Event.cancel(e); + } + }); + + function hide() { + if (t._menu) { + t._menu.removeAll(); + t._menu.destroy(); + Event.remove(ed.getDoc(), 'click', hide); + } + }; + + ed.onMouseDown.add(hide); + ed.onKeyDown.add(hide); + + // Register commands + // INSERT ELEMENTS + ed.addCommand('mcePBefore', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + pe.parentNode.insertBefore(new_p, pe); + } + }); + ed.addCommand('mcePAfter', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + ed.dom.insertAfter(new_p, pe); + } + }); + + // INSERT ROOT ELEMENTS + ed.addCommand('mcePBeforeRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + pe.parentNode.insertBefore(new_p, pe); + } + }); + ed.addCommand('mcePAfterRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + ed.dom.insertAfter(new_p, pe); + } + }); + + // DELETE + ed.addCommand('mceDelete', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + ed.dom.remove(pe); + } + }); + + ed.addCommand('mceDeleteRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + ed.dom.remove(pe); + } + }); + + // MOVE + ed.addCommand('mceMoveUp', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + pre_prev = t._getPreviousSibling(pe); + if (pre_prev) { + pre_prev.parentNode.insertBefore(pe, pre_prev); + } + } + }); + ed.addCommand('mceMoveUpRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + pre_prev = t._getPreviousSibling(pe); + if (pre_prev) { + pre_prev.parentNode.insertBefore(pe, pre_prev); + } + } + }); + + }, + + getInfo : function() { + return { + longname : 'Grappelli (Contextmenu)', + author : 'Patrick Kranzlmueller', + authorurl : 'http://vonautomatisch.at', + infourl : 'http://code.google.com/p/django-grappelli/', + version : '0.1' + }; + }, + + _getMenu : function(ed) { + var t = this, m = t._menu, se = ed.selection, col = se.isCollapsed(), el = se.getNode() || ed.getBody(), am, p1, p2; + + if (m) { + m.removeAll(); + m.destroy(); + } + + p1 = DOM.getPos(ed.getContentAreaContainer()); + p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('contextmenu', { + offset_x : p1.x + ed.getParam('contextmenu_offset_x', 0), + offset_y : p1.y + ed.getParam('contextmenu_offset_y', 0), + constrain : 1 + }); + + t._menu = m; + + // parent element + pe = ed.dom.getParent(el, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + // root element + re = ed.dom.getParent(el, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE' && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + + title_prefix = pe.nodeName; + title_prefix_root = re.nodeName; + + title_b_before = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpbefore_desc'; + title_b_after = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpafter_desc'; + title_b_before_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpbeforeroot_desc'; + title_b_after_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpafterroot_desc'; + title_b_delete = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_delete_desc'; + title_b_delete_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_deleteroot_desc'; + title_b_moveup = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_moveup_desc'; + title_b_moveup_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_moveuproot_desc'; + + m.add({title : title_b_before, icon : '', cmd : 'mcePBefore'}); + m.add({title : title_b_after, icon : '', cmd : 'mcePAfter'}); + + if (pe.parentNode.nodeName != "BODY") { + m.addSeparator(); + m.add({title : title_b_before_root, icon : '', cmd : 'mcePBeforeRoot'}); + m.add({title : title_b_after_root, icon : '', cmd : 'mcePAfterRoot'}); + } + + m.addSeparator(); + m.add({title : title_b_delete, icon : '', cmd : 'mceDelete'}); + if (pe.parentNode.nodeName != "BODY") { + m.add({title : title_b_delete_root, icon : '', cmd : 'mceDeleteRoot'}); + } + + m.addSeparator(); + m.add({title : title_b_moveup, icon : '', cmd : 'mceMoveUp'}); + if (pe.parentNode.nodeName != "BODY") { + m.add({title : title_b_moveup_root, icon : '', cmd : 'mceMoveUpRoot'}); + } + + t.onContextMenu.dispatch(t, m, el, col); + + return m; + + }, + + _getPreviousSibling: function(obj) { + var prevNode = obj.previousSibling; + while(prevNode && (prevNode.nodeType == document.TEXT_NODE || prevNode.nodeType == document.CDATA_NODE) && prevNode.nodeValue.match(/^\s*$/)) { + prevNode = prevNode.previousSibling; + } + return prevNode; + } + + }); + + // Register plugin + tinymce.PluginManager.add('grappelli_contextmenu', tinymce.plugins.ContextMenu); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..1eb9a14 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,95 @@ +/** + * $Id: editor_plugin_src.js 848 2008-05-15 11:54:40Z spocke $ + * + * @author Moxiecode + * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + var Event = tinymce.dom.Event, each = tinymce.each, DOM = tinymce.DOM; + + tinymce.create('tinymce.plugins.ContextMenu', { + init : function(ed) { + var t = this; + + t.editor = ed; + t.onContextMenu = new tinymce.util.Dispatcher(this); + + ed.onContextMenu.add(function(ed, e) { + if (!e.ctrlKey) { + t._getMenu(ed).showMenu(e.clientX, e.clientY); + Event.add(ed.getDoc(), 'click', hide); + Event.cancel(e); + } + }); + + function hide() { + if (t._menu) { + t._menu.removeAll(); + t._menu.destroy(); + Event.remove(ed.getDoc(), 'click', hide); + } + }; + + ed.onMouseDown.add(hide); + ed.onKeyDown.add(hide); + }, + + getInfo : function() { + return { + longname : 'Contextmenu', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _getMenu : function(ed) { + var t = this, m = t._menu, se = ed.selection, col = se.isCollapsed(), el = se.getNode() || ed.getBody(), am, p1, p2; + + if (m) { + m.removeAll(); + m.destroy(); + } + + p1 = DOM.getPos(ed.getContentAreaContainer()); + p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('contextmenu', { + offset_x : p1.x + ed.getParam('contextmenu_offset_x', 0), + offset_y : p1.y + ed.getParam('contextmenu_offset_y', 0), + constrain : 1 + }); + + t._menu = m; + + m.add({title : 'advanced.cut_desc', icon : 'cut', cmd : 'Cut'}).setDisabled(col); + m.add({title : 'advanced.copy_desc', icon : 'copy', cmd : 'Copy'}).setDisabled(col); + m.add({title : 'advanced.paste_desc', icon : 'paste', cmd : 'Paste'}); + + if ((el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) || !col) { + m.addSeparator(); + m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true}); + m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'}); + } + + m.addSeparator(); + m.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true}); + + m.addSeparator(); + am = m.addMenu({title : 'contextmenu.align'}); + am.add({title : 'contextmenu.left', icon : 'justifyleft', cmd : 'JustifyLeft'}); + am.add({title : 'contextmenu.center', icon : 'justifycenter', cmd : 'JustifyCenter'}); + am.add({title : 'contextmenu.right', icon : 'justifyright', cmd : 'JustifyRight'}); + am.add({title : 'contextmenu.full', icon : 'justifyfull', cmd : 'JustifyFull'}); + + t.onContextMenu.dispatch(t, m, el, col); + + return m; + } + }); + + // Register plugin + tinymce.PluginManager.add('contextmenu', tinymce.plugins.ContextMenu); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js new file mode 100755 index 0000000..87b81d6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js @@ -0,0 +1,250 @@ +(function() { + + tinymce.PluginManager.requireLangPack('grappelli_contextmenu'); + var Event = tinymce.dom.Event, each = tinymce.each, DOM = tinymce.DOM; + + tinymce.create('tinymce.plugins.ContextMenu', { + init : function(ed) { + var t = this; + + t.editor = ed; + t.onContextMenu = new tinymce.util.Dispatcher(this); + + ed.onContextMenu.add(function(ed, e) { + if (!e.ctrlKey) { + t._getMenu(ed).showMenu(e.clientX, e.clientY); + Event.add(ed.getDoc(), 'click', hide); + Event.cancel(e); + } + }); + + function hide() { + if (t._menu) { + t._menu.removeAll(); + t._menu.destroy(); + Event.remove(ed.getDoc(), 'click', hide); + } + }; + + ed.onMouseDown.add(hide); + ed.onKeyDown.add(hide); + + // Register commands + // INSERT ELEMENTS + ed.addCommand('mcePBefore', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + pe.parentNode.insertBefore(new_p, pe); + } + }); + ed.addCommand('mcePAfter', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + ed.dom.insertAfter(new_p, pe); + } + }); + + // INSERT ROOT ELEMENTS + ed.addCommand('mcePBeforeRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + pe.parentNode.insertBefore(new_p, pe); + } + }); + ed.addCommand('mcePAfterRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + new_p = ed.dom.create('p', {}, '
'); + ed.dom.insertAfter(new_p, pe); + } + }); + + // DELETE + ed.addCommand('mceDelete', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + ed.dom.remove(pe); + } + }); + + ed.addCommand('mceDeleteRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + ed.dom.remove(pe); + } + }); + + // MOVE + ed.addCommand('mceMoveUp', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + pre_prev = t._getPreviousSibling(pe); + if (pre_prev) { + pre_prev.parentNode.insertBefore(pe, pre_prev); + } + } + }); + ed.addCommand('mceMoveUpRoot', function() { + ce = ed.selection.getNode(); + pe = ed.dom.getParent(ce, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if ((nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + if (pe) { + pre_prev = t._getPreviousSibling(pe); + if (pre_prev) { + pre_prev.parentNode.insertBefore(pe, pre_prev); + } + } + }); + + }, + + getInfo : function() { + return { + longname : 'Grappelli (Contextmenu)', + author : 'Patrick Kranzlmueller', + authorurl : 'http://vonautomatisch.at', + infourl : 'http://code.google.com/p/django-grappelli/', + version : '0.1' + }; + }, + + _getMenu : function(ed) { + var t = this, m = t._menu, se = ed.selection, col = se.isCollapsed(), el = se.getNode() || ed.getBody(), am, p1, p2; + + if (m) { + m.removeAll(); + m.destroy(); + } + + p1 = DOM.getPos(ed.getContentAreaContainer()); + p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('contextmenu', { + offset_x : p1.x + ed.getParam('contextmenu_offset_x', 0), + offset_y : p1.y + ed.getParam('contextmenu_offset_y', 0), + constrain : 1 + }); + + t._menu = m; + + // parent element + pe = ed.dom.getParent(el, function(n) { + nn = n.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE') { + return n; + } + }, ed.dom.getRoot()); + // root element + re = ed.dom.getParent(el, function(n) { + nn = n.nodeName; + nn_p = n.parentNode.nodeName; + if (nn == 'P' || nn == 'H1' || nn == 'H2' || nn == 'H3' || nn == 'H4' || nn == 'H5' || nn == 'H6' || nn == 'UL' || nn == 'OL' || nn == 'BLOCKQUOTE' && nn_p == 'BODY') { + return n; + } + }, ed.dom.getRoot()); + + title_prefix = pe.nodeName; + title_prefix_root = re.nodeName; + + title_b_before = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpbefore_desc'; + title_b_after = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpafter_desc'; + title_b_before_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpbeforeroot_desc'; + title_b_after_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_insertpafterroot_desc'; + title_b_delete = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_delete_desc'; + title_b_delete_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_deleteroot_desc'; + title_b_moveup = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_moveup_desc'; + title_b_moveup_root = 'grappelli_contextmenu.' + title_prefix + '_grappelli_contextmenu_moveuproot_desc'; + + m.add({title : title_b_before, icon : '', cmd : 'mcePBefore'}); + m.add({title : title_b_after, icon : '', cmd : 'mcePAfter'}); + + if (pe.parentNode.nodeName != "BODY") { + m.addSeparator(); + m.add({title : title_b_before_root, icon : '', cmd : 'mcePBeforeRoot'}); + m.add({title : title_b_after_root, icon : '', cmd : 'mcePAfterRoot'}); + } + + m.addSeparator(); + m.add({title : title_b_delete, icon : '', cmd : 'mceDelete'}); + if (pe.parentNode.nodeName != "BODY") { + m.add({title : title_b_delete_root, icon : '', cmd : 'mceDeleteRoot'}); + } + + m.addSeparator(); + m.add({title : title_b_moveup, icon : '', cmd : 'mceMoveUp'}); + if (pe.parentNode.nodeName != "BODY") { + m.add({title : title_b_moveup_root, icon : '', cmd : 'mceMoveUpRoot'}); + } + + t.onContextMenu.dispatch(t, m, el, col); + + return m; + + }, + + _getPreviousSibling: function(obj) { + var prevNode = obj.previousSibling; + while(prevNode && (prevNode.nodeType == document.TEXT_NODE || prevNode.nodeType == document.CDATA_NODE) && prevNode.nodeValue.match(/^\s*$/)) { + prevNode = prevNode.previousSibling; + } + return prevNode; + } + + }); + + // Register plugin + tinymce.PluginManager.add('grappelli_contextmenu', tinymce.plugins.ContextMenu); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js new file mode 100755 index 0000000..1eb9a14 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js @@ -0,0 +1,95 @@ +/** + * $Id: editor_plugin_src.js 848 2008-05-15 11:54:40Z spocke $ + * + * @author Moxiecode + * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + var Event = tinymce.dom.Event, each = tinymce.each, DOM = tinymce.DOM; + + tinymce.create('tinymce.plugins.ContextMenu', { + init : function(ed) { + var t = this; + + t.editor = ed; + t.onContextMenu = new tinymce.util.Dispatcher(this); + + ed.onContextMenu.add(function(ed, e) { + if (!e.ctrlKey) { + t._getMenu(ed).showMenu(e.clientX, e.clientY); + Event.add(ed.getDoc(), 'click', hide); + Event.cancel(e); + } + }); + + function hide() { + if (t._menu) { + t._menu.removeAll(); + t._menu.destroy(); + Event.remove(ed.getDoc(), 'click', hide); + } + }; + + ed.onMouseDown.add(hide); + ed.onKeyDown.add(hide); + }, + + getInfo : function() { + return { + longname : 'Contextmenu', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _getMenu : function(ed) { + var t = this, m = t._menu, se = ed.selection, col = se.isCollapsed(), el = se.getNode() || ed.getBody(), am, p1, p2; + + if (m) { + m.removeAll(); + m.destroy(); + } + + p1 = DOM.getPos(ed.getContentAreaContainer()); + p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('contextmenu', { + offset_x : p1.x + ed.getParam('contextmenu_offset_x', 0), + offset_y : p1.y + ed.getParam('contextmenu_offset_y', 0), + constrain : 1 + }); + + t._menu = m; + + m.add({title : 'advanced.cut_desc', icon : 'cut', cmd : 'Cut'}).setDisabled(col); + m.add({title : 'advanced.copy_desc', icon : 'copy', cmd : 'Copy'}).setDisabled(col); + m.add({title : 'advanced.paste_desc', icon : 'paste', cmd : 'Paste'}); + + if ((el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) || !col) { + m.addSeparator(); + m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true}); + m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'}); + } + + m.addSeparator(); + m.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true}); + + m.addSeparator(); + am = m.addMenu({title : 'contextmenu.align'}); + am.add({title : 'contextmenu.left', icon : 'justifyleft', cmd : 'JustifyLeft'}); + am.add({title : 'contextmenu.center', icon : 'justifycenter', cmd : 'JustifyCenter'}); + am.add({title : 'contextmenu.right', icon : 'justifyright', cmd : 'JustifyRight'}); + am.add({title : 'contextmenu.full', icon : 'justifyfull', cmd : 'JustifyFull'}); + + t.onContextMenu.dispatch(t, m, el, col); + + return m; + } + }); + + // Register plugin + tinymce.PluginManager.add('contextmenu', tinymce.plugins.ContextMenu); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/all-wcprops new file mode 100644 index 0000000..d12cc2b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs +END +fr.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js +END +de.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js +END +en.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/entries new file mode 100644 index 0000000..57dbb41 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +fr.js +file + + + + +2010-06-04T12:51:45.462282Z +672e0ac81391c2a81960baf575d77fd7 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +697 + +de.js +file + + + + +2010-06-04T12:51:45.462282Z +a43e9aa43be0ff6752a24dfa45a6605e +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +1287 + +en.js +file + + + + +2010-06-04T12:51:45.462282Z +ff45f04347b6abb2a6d352c65ac2fb0b +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +691 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/de.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/de.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/de.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/en.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/en.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/en.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/fr.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/fr.js.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/prop-base/fr.js.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/de.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/de.js.svn-base new file mode 100644 index 0000000..b4b6080 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/de.js.svn-base @@ -0,0 +1,20 @@ +tinyMCE.addI18n("de.grappelli_contextmenu",{ +grappelli_contextmenu_insertpbefore_desc:"Absatz VOR aktuellem ELEMENT einfügen", +grappelli_contextmenu_insertpafter_desc:"Absatz NACH aktuellen ELEMENT einfügen", +grappelli_contextmenu_insertpbeforeroot_desc:"Absatz VOR aktuellem HAUPTELEMENT einfügen", +grappelli_contextmenu_insertpafterroot_desc:"Absatz NACH aktuellen HAUPTELEMENT einfügen", +grappelli_contextmenu_delete_desc:"Aktuelles ELEMENT löschen", +grappelli_contextmenu_deleteroot_desc:"Aktuelles HAUPTELEMENT löschen", +grappelli_contextmenu_moveup_desc:"Aktuelles ELEMENT NACH OBEN verschieben", +grappelli_contextmenu_moveuproot_desc:"Aktuelles HAUPTELEMENT NACH OBEN verschieben", + +P_grappelli_contextmenu_insertpbefore_desc:"Absatz VOR Absatz einfügen", +P_grappelli_contextmenu_insertpafter_desc:"Absatz NACH Absatz einfügen", +P_grappelli_contextmenu_insertpbeforeroot_desc:"Absatz VOR Template einfügen", +P_grappelli_contextmenu_insertpafterroot_desc:"Absatz NACH Template einfügen", +P_grappelli_contextmenu_delete_desc:"Absatz löschen", +P_grappelli_contextmenu_deleteroot_desc:"Template löschen", +P_grappelli_contextmenu_moveup_desc:"Absatz NACH OBEN verschieben", +P_grappelli_contextmenu_moveuproot_desc:"Template NACH OBEN verschieben", + +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/en.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/en.js.svn-base new file mode 100644 index 0000000..c4d2c98 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/en.js.svn-base @@ -0,0 +1,10 @@ +tinyMCE.addI18n("en.grappelli_contextmenu",{ +grappelli_contextmenu_insertpbefore_desc:"Insert Paragraph BEFORE current element", +grappelli_contextmenu_insertpafter_desc:"Insert Paragraph AFTER current element", +grappelli_contextmenu_insertpbeforeroot_desc:"Insert Paragraph BEFORE current ROOT-LEVEL element", +grappelli_contextmenu_insertpafterroot_desc:"Insert Paragraph AFTER current ROOT-LEVEL element", +grappelli_contextmenu_delete_desc:"Delete current element", +grappelli_contextmenu_deleteroot_desc:"Delete current ROOT-LEVEL element", +grappelli_contextmenu_moveup_desc:"MOVE UP current ELEMENT", +grappelli_contextmenu_moveuproot_desc:"MOVE UP current ROOT-LEVEL element", +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/fr.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/fr.js.svn-base new file mode 100644 index 0000000..168e4b8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/.svn/text-base/fr.js.svn-base @@ -0,0 +1,10 @@ +tinyMCE.addI18n("fr.grappelli_contextmenu",{ +grappelli_contextmenu_insertpbefore_desc:"Insérer Paragraph AVANT la sélection", +grappelli_contextmenu_insertpafter_desc:"Insérer Paragraph APRÈS la sélection", +grappelli_contextmenu_insertpbeforeroot_desc:"Insérer Paragraph AVANT la racine de la sélection", +grappelli_contextmenu_insertpafterroot_desc:"Insérer Paragraph APRÈS la racine de la sélection", +grappelli_contextmenu_delete_desc:"Supprimer la sélection", +grappelli_contextmenu_deleteroot_desc:"Supprimer la racine de la sélection", +grappelli_contextmenu_moveup_desc:"Monter la sélection", +grappelli_contextmenu_moveuproot_desc:"Monter la racine de la sélection", +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js new file mode 100755 index 0000000..b4b6080 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js @@ -0,0 +1,20 @@ +tinyMCE.addI18n("de.grappelli_contextmenu",{ +grappelli_contextmenu_insertpbefore_desc:"Absatz VOR aktuellem ELEMENT einfügen", +grappelli_contextmenu_insertpafter_desc:"Absatz NACH aktuellen ELEMENT einfügen", +grappelli_contextmenu_insertpbeforeroot_desc:"Absatz VOR aktuellem HAUPTELEMENT einfügen", +grappelli_contextmenu_insertpafterroot_desc:"Absatz NACH aktuellen HAUPTELEMENT einfügen", +grappelli_contextmenu_delete_desc:"Aktuelles ELEMENT löschen", +grappelli_contextmenu_deleteroot_desc:"Aktuelles HAUPTELEMENT löschen", +grappelli_contextmenu_moveup_desc:"Aktuelles ELEMENT NACH OBEN verschieben", +grappelli_contextmenu_moveuproot_desc:"Aktuelles HAUPTELEMENT NACH OBEN verschieben", + +P_grappelli_contextmenu_insertpbefore_desc:"Absatz VOR Absatz einfügen", +P_grappelli_contextmenu_insertpafter_desc:"Absatz NACH Absatz einfügen", +P_grappelli_contextmenu_insertpbeforeroot_desc:"Absatz VOR Template einfügen", +P_grappelli_contextmenu_insertpafterroot_desc:"Absatz NACH Template einfügen", +P_grappelli_contextmenu_delete_desc:"Absatz löschen", +P_grappelli_contextmenu_deleteroot_desc:"Template löschen", +P_grappelli_contextmenu_moveup_desc:"Absatz NACH OBEN verschieben", +P_grappelli_contextmenu_moveuproot_desc:"Template NACH OBEN verschieben", + +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js new file mode 100755 index 0000000..c4d2c98 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js @@ -0,0 +1,10 @@ +tinyMCE.addI18n("en.grappelli_contextmenu",{ +grappelli_contextmenu_insertpbefore_desc:"Insert Paragraph BEFORE current element", +grappelli_contextmenu_insertpafter_desc:"Insert Paragraph AFTER current element", +grappelli_contextmenu_insertpbeforeroot_desc:"Insert Paragraph BEFORE current ROOT-LEVEL element", +grappelli_contextmenu_insertpafterroot_desc:"Insert Paragraph AFTER current ROOT-LEVEL element", +grappelli_contextmenu_delete_desc:"Delete current element", +grappelli_contextmenu_deleteroot_desc:"Delete current ROOT-LEVEL element", +grappelli_contextmenu_moveup_desc:"MOVE UP current ELEMENT", +grappelli_contextmenu_moveuproot_desc:"MOVE UP current ROOT-LEVEL element", +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js new file mode 100755 index 0000000..168e4b8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js @@ -0,0 +1,10 @@ +tinyMCE.addI18n("fr.grappelli_contextmenu",{ +grappelli_contextmenu_insertpbefore_desc:"Insérer Paragraph AVANT la sélection", +grappelli_contextmenu_insertpafter_desc:"Insérer Paragraph APRÈS la sélection", +grappelli_contextmenu_insertpbeforeroot_desc:"Insérer Paragraph AVANT la racine de la sélection", +grappelli_contextmenu_insertpafterroot_desc:"Insérer Paragraph APRÈS la racine de la sélection", +grappelli_contextmenu_delete_desc:"Supprimer la sélection", +grappelli_contextmenu_deleteroot_desc:"Supprimer la racine de la sélection", +grappelli_contextmenu_moveup_desc:"Monter la sélection", +grappelli_contextmenu_moveuproot_desc:"Monter la racine de la sélection", +}); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js new file mode 100755 index 0000000..c4d2c98 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js @@ -0,0 +1,10 @@ +tinyMCE.addI18n("en.grappelli_contextmenu",{ +grappelli_contextmenu_insertpbefore_desc:"Insert Paragraph BEFORE current element", +grappelli_contextmenu_insertpafter_desc:"Insert Paragraph AFTER current element", +grappelli_contextmenu_insertpbeforeroot_desc:"Insert Paragraph BEFORE current ROOT-LEVEL element", +grappelli_contextmenu_insertpafterroot_desc:"Insert Paragraph AFTER current ROOT-LEVEL element", +grappelli_contextmenu_delete_desc:"Delete current element", +grappelli_contextmenu_deleteroot_desc:"Delete current ROOT-LEVEL element", +grappelli_contextmenu_moveup_desc:"MOVE UP current ELEMENT", +grappelli_contextmenu_moveuproot_desc:"MOVE UP current ROOT-LEVEL element", +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/all-wcprops new file mode 100644 index 0000000..79466a7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/iespell +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/entries new file mode 100644 index 0000000..c76eb3b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/iespell +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.902281Z +22526393cacb6447a0e3bfff2fb47773 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +909 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.902281Z +311e13bcc85c06da43decc37dc1b4f83 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1484 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..e9cba10 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.IESpell",{init:function(a,b){var c=this,d;if(!tinymce.isIE){return}c.editor=a;a.addCommand("mceIESpell",function(){try{d=new ActiveXObject("ieSpell.ieSpellExtension");d.CheckDocumentNode(a.getDoc().documentElement)}catch(f){if(f.number==-2146827859){a.windowManager.confirm(a.getLang("iespell.download"),function(e){if(e){window.open("http://www.iespell.com/download.php","ieSpellDownload","")}})}else{a.windowManager.alert("Error Loading ieSpell: Exception "+f.number)}}});a.addButton("iespell",{title:"iespell.iespell_desc",cmd:"mceIESpell"})},getInfo:function(){return{longname:"IESpell (IE Only)",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("iespell",tinymce.plugins.IESpell)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..1b2bb98 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,54 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.IESpell', { + init : function(ed, url) { + var t = this, sp; + + if (!tinymce.isIE) + return; + + t.editor = ed; + + // Register commands + ed.addCommand('mceIESpell', function() { + try { + sp = new ActiveXObject("ieSpell.ieSpellExtension"); + sp.CheckDocumentNode(ed.getDoc().documentElement); + } catch (e) { + if (e.number == -2146827859) { + ed.windowManager.confirm(ed.getLang("iespell.download"), function(s) { + if (s) + window.open('http://www.iespell.com/download.php', 'ieSpellDownload', ''); + }); + } else + ed.windowManager.alert("Error Loading ieSpell: Exception " + e.number); + } + }); + + // Register buttons + ed.addButton('iespell', {title : 'iespell.iespell_desc', cmd : 'mceIESpell'}); + }, + + getInfo : function() { + return { + longname : 'IESpell (IE Only)', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('iespell', tinymce.plugins.IESpell); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js new file mode 100644 index 0000000..e9cba10 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.IESpell",{init:function(a,b){var c=this,d;if(!tinymce.isIE){return}c.editor=a;a.addCommand("mceIESpell",function(){try{d=new ActiveXObject("ieSpell.ieSpellExtension");d.CheckDocumentNode(a.getDoc().documentElement)}catch(f){if(f.number==-2146827859){a.windowManager.confirm(a.getLang("iespell.download"),function(e){if(e){window.open("http://www.iespell.com/download.php","ieSpellDownload","")}})}else{a.windowManager.alert("Error Loading ieSpell: Exception "+f.number)}}});a.addButton("iespell",{title:"iespell.iespell_desc",cmd:"mceIESpell"})},getInfo:function(){return{longname:"IESpell (IE Only)",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("iespell",tinymce.plugins.IESpell)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js new file mode 100644 index 0000000..1b2bb98 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js @@ -0,0 +1,54 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.IESpell', { + init : function(ed, url) { + var t = this, sp; + + if (!tinymce.isIE) + return; + + t.editor = ed; + + // Register commands + ed.addCommand('mceIESpell', function() { + try { + sp = new ActiveXObject("ieSpell.ieSpellExtension"); + sp.CheckDocumentNode(ed.getDoc().documentElement); + } catch (e) { + if (e.number == -2146827859) { + ed.windowManager.confirm(ed.getLang("iespell.download"), function(s) { + if (s) + window.open('http://www.iespell.com/download.php', 'ieSpellDownload', ''); + }); + } else + ed.windowManager.alert("Error Loading ieSpell: Exception " + e.number); + } + }); + + // Register buttons + ed.addButton('iespell', {title : 'iespell.iespell_desc', cmd : 'mceIESpell'}); + }, + + getInfo : function() { + return { + longname : 'IESpell (IE Only)', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('iespell', tinymce.plugins.IESpell); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/all-wcprops new file mode 100644 index 0000000..3b23233 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js +END +template.htm +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/entries new file mode 100644 index 0000000..36001c4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/entries @@ -0,0 +1,133 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.712282Z +bfaaa63c2867a7c1aa80783e423a9b87 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +10677 + +template.htm +file + + + + +2010-06-04T12:51:44.712282Z +3d7e3ae05511a9f64c5da924b9e971ba +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +12878 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.715615Z +d56834d4575ad417e587201164dda415 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +17454 + +skins +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..07ea477 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var d=tinymce.DOM,b=tinymce.dom.Element,a=tinymce.dom.Event,e=tinymce.each,c=tinymce.is;tinymce.create("tinymce.plugins.InlinePopups",{init:function(f,g){f.onBeforeRenderUI.add(function(){f.windowManager=new tinymce.InlineWindowManager(f);d.loadCSS(g+"/skins/"+(f.settings.inlinepopups_skin||"clearlooks2")+"/window.css")})},getInfo:function(){return{longname:"InlinePopups",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.create("tinymce.InlineWindowManager:tinymce.WindowManager",{InlineWindowManager:function(f){var g=this;g.parent(f);g.zIndex=300000;g.count=0;g.windows={}},open:function(r,j){var y=this,i,k="",q=y.editor,g=0,s=0,h,m,n,o,l,v,x;r=r||{};j=j||{};if(!r.inline){return y.parent(r,j)}if(!r.type){y.bookmark=q.selection.getBookmark(1)}i=d.uniqueId();h=d.getViewPort();r.width=parseInt(r.width||320);r.height=parseInt(r.height||240)+(tinymce.isIE?8:0);r.min_width=parseInt(r.min_width||150);r.min_height=parseInt(r.min_height||100);r.max_width=parseInt(r.max_width||2000);r.max_height=parseInt(r.max_height||2000);r.left=r.left||Math.round(Math.max(h.x,h.x+(h.w/2)-(r.width/2)));r.top=r.top||Math.round(Math.max(h.y,h.y+(h.h/2)-(r.height/2)));r.movable=r.resizable=true;j.mce_width=r.width;j.mce_height=r.height;j.mce_inline=true;j.mce_window_id=i;j.mce_auto_focus=r.auto_focus;y.features=r;y.params=j;y.onOpen.dispatch(y,r,j);if(r.type){k+=" mceModal";if(r.type){k+=" mce"+r.type.substring(0,1).toUpperCase()+r.type.substring(1)}r.resizable=false}if(r.statusbar){k+=" mceStatusbar"}if(r.resizable){k+=" mceResizable"}if(r.minimizable){k+=" mceMinimizable"}if(r.maximizable){k+=" mceMaximizable"}if(r.movable){k+=" mceMovable"}y._addAll(d.doc.body,["div",{id:i,"class":q.settings.inlinepopups_skin||"clearlooks2",style:"width:100px;height:100px"},["div",{id:i+"_wrapper","class":"mceWrapper"+k},["div",{id:i+"_top","class":"mceTop"},["div",{"class":"mceLeft"}],["div",{"class":"mceCenter"}],["div",{"class":"mceRight"}],["span",{id:i+"_title"},r.title||""]],["div",{id:i+"_middle","class":"mceMiddle"},["div",{id:i+"_left","class":"mceLeft"}],["span",{id:i+"_content"}],["div",{id:i+"_right","class":"mceRight"}]],["div",{id:i+"_bottom","class":"mceBottom"},["div",{"class":"mceLeft"}],["div",{"class":"mceCenter"}],["div",{"class":"mceRight"}],["span",{id:i+"_status"},"Content"]],["a",{"class":"mceMove",tabindex:"-1",href:"javascript:;"}],["a",{"class":"mceMin",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceMax",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceMed",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceClose",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{id:i+"_resize_n","class":"mceResize mceResizeN",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_s","class":"mceResize mceResizeS",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_w","class":"mceResize mceResizeW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_e","class":"mceResize mceResizeE",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_nw","class":"mceResize mceResizeNW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_ne","class":"mceResize mceResizeNE",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_sw","class":"mceResize mceResizeSW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_se","class":"mceResize mceResizeSE",tabindex:"-1",href:"javascript:;"}]]]);d.setStyles(i,{top:-10000,left:-10000});if(tinymce.isGecko){d.setStyle(i,"overflow","auto")}if(!r.type){g+=d.get(i+"_left").clientWidth;g+=d.get(i+"_right").clientWidth;s+=d.get(i+"_top").clientHeight;s+=d.get(i+"_bottom").clientHeight}d.setStyles(i,{top:r.top,left:r.left,width:r.width+g,height:r.height+s});x=r.url||r.file;if(x){if(tinymce.relaxedDomain){x+=(x.indexOf("?")==-1?"?":"&")+"mce_rdomain="+tinymce.relaxedDomain}x=tinymce._addVer(x)}if(!r.type){d.add(i+"_content","iframe",{id:i+"_ifr",src:'javascript:""',frameBorder:0,style:"border:0;width:10px;height:10px"});d.setStyles(i+"_ifr",{width:r.width,height:r.height});d.setAttrib(i+"_ifr","src",x)}else{d.add(i+"_wrapper","a",{id:i+"_ok","class":"mceButton mceOk",href:"javascript:;",onmousedown:"return false;"},"Ok");if(r.type=="confirm"){d.add(i+"_wrapper","a",{"class":"mceButton mceCancel",href:"javascript:;",onmousedown:"return false;"},"Cancel")}d.add(i+"_middle","div",{"class":"mceIcon"});d.setHTML(i+"_content",r.content.replace("\n","
"))}n=a.add(i,"mousedown",function(t){var u=t.target,f,p;f=y.windows[i];y.focus(i);if(u.nodeName=="A"||u.nodeName=="a"){if(u.className=="mceMax"){f.oldPos=f.element.getXY();f.oldSize=f.element.getSize();p=d.getViewPort();p.w-=2;p.h-=2;f.element.moveTo(p.x,p.y);f.element.resizeTo(p.w,p.h);d.setStyles(i+"_ifr",{width:p.w-f.deltaWidth,height:p.h-f.deltaHeight});d.addClass(i+"_wrapper","mceMaximized")}else{if(u.className=="mceMed"){f.element.moveTo(f.oldPos.x,f.oldPos.y);f.element.resizeTo(f.oldSize.w,f.oldSize.h);f.iframeElement.resizeTo(f.oldSize.w-f.deltaWidth,f.oldSize.h-f.deltaHeight);d.removeClass(i+"_wrapper","mceMaximized")}else{if(u.className=="mceMove"){return y._startDrag(i,t,u.className)}else{if(d.hasClass(u,"mceResize")){return y._startDrag(i,t,u.className.substring(13))}}}}}});o=a.add(i,"click",function(f){var p=f.target;y.focus(i);if(p.nodeName=="A"||p.nodeName=="a"){switch(p.className){case"mceClose":y.close(null,i);return a.cancel(f);case"mceButton mceOk":case"mceButton mceCancel":r.button_func(p.className=="mceButton mceOk");return a.cancel(f)}}});v=y.windows[i]={id:i,mousedown_func:n,click_func:o,element:new b(i,{blocker:1,container:q.getContainer()}),iframeElement:new b(i+"_ifr"),features:r,deltaWidth:g,deltaHeight:s};v.iframeElement.on("focus",function(){y.focus(i)});if(y.count==0&&y.editor.getParam("dialog_type","modal")=="modal"){d.add(d.doc.body,"div",{id:"mceModalBlocker","class":(y.editor.settings.inlinepopups_skin||"clearlooks2")+"_modalBlocker",style:{zIndex:y.zIndex-1}});d.show("mceModalBlocker")}else{d.setStyle("mceModalBlocker","z-index",y.zIndex-1)}if(tinymce.isIE6||/Firefox\/2\./.test(navigator.userAgent)||(tinymce.isIE&&!d.boxModel)){d.setStyles("mceModalBlocker",{position:"absolute",left:h.x,top:h.y,width:h.w-2,height:h.h-2})}y.focus(i);y._fixIELayout(i,1);if(d.get(i+"_ok")){d.get(i+"_ok").focus()}y.count++;return v},focus:function(h){var g=this,f;if(f=g.windows[h]){f.zIndex=this.zIndex++;f.element.setStyle("zIndex",f.zIndex);f.element.update();h=h+"_wrapper";d.removeClass(g.lastId,"mceFocus");d.addClass(h,"mceFocus");g.lastId=h}},_addAll:function(k,h){var g,l,f=this,j=tinymce.DOM;if(c(h,"string")){k.appendChild(j.doc.createTextNode(h))}else{if(h.length){k=k.appendChild(j.create(h[0],h[1]));for(g=2;gf){i=m;f=m.zIndex}});if(i){h.focus(i.id)}}},setTitle:function(f,g){var h;f=this._findId(f);if(h=d.get(f+"_title")){h.innerHTML=d.encode(g)}},alert:function(g,f,j){var i=this,h;h=i.open({title:i,type:"alert",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},confirm:function(g,f,j){var i=this,h;h=i.open({title:i,type:"confirm",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},_findId:function(f){var g=this;if(typeof(f)=="string"){return f}e(g.windows,function(h){var i=d.get(h.id+"_ifr");if(i&&f==i.contentWindow){f=h.id;return false}});return f},_fixIELayout:function(i,h){var f,g;if(!tinymce.isIE6){return}e(["n","s","w","e","nw","ne","sw","se"],function(j){var k=d.get(i+"_resize_"+j);d.setStyles(k,{width:h?k.clientWidth:"",height:h?k.clientHeight:"",cursor:d.getStyle(k,"cursor",1)});d.setStyle(i+"_bottom","bottom","-1px");k=0});if(f=this.windows[i]){f.element.hide();f.element.show();e(d.select("div,a",i),function(k,j){if(k.currentStyle.backgroundImage!="none"){g=new Image();g.src=k.currentStyle.backgroundImage.replace(/url\(\"(.+)\"\)/,"$1")}});d.get(i).style.filter=""}}});tinymce.PluginManager.add("inlinepopups",tinymce.plugins.InlinePopups)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..e991683 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,635 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var DOM = tinymce.DOM, Element = tinymce.dom.Element, Event = tinymce.dom.Event, each = tinymce.each, is = tinymce.is; + + tinymce.create('tinymce.plugins.InlinePopups', { + init : function(ed, url) { + // Replace window manager + ed.onBeforeRenderUI.add(function() { + ed.windowManager = new tinymce.InlineWindowManager(ed); + DOM.loadCSS(url + '/skins/' + (ed.settings.inlinepopups_skin || 'clearlooks2') + "/window.css"); + }); + }, + + getInfo : function() { + return { + longname : 'InlinePopups', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + tinymce.create('tinymce.InlineWindowManager:tinymce.WindowManager', { + InlineWindowManager : function(ed) { + var t = this; + + t.parent(ed); + t.zIndex = 300000; + t.count = 0; + t.windows = {}; + }, + + open : function(f, p) { + var t = this, id, opt = '', ed = t.editor, dw = 0, dh = 0, vp, po, mdf, clf, we, w, u; + + f = f || {}; + p = p || {}; + + // Run native windows + if (!f.inline) + return t.parent(f, p); + + // Only store selection if the type is a normal window + if (!f.type) + t.bookmark = ed.selection.getBookmark(1); + + id = DOM.uniqueId(); + vp = DOM.getViewPort(); + f.width = parseInt(f.width || 320); + f.height = parseInt(f.height || 240) + (tinymce.isIE ? 8 : 0); + f.min_width = parseInt(f.min_width || 150); + f.min_height = parseInt(f.min_height || 100); + f.max_width = parseInt(f.max_width || 2000); + f.max_height = parseInt(f.max_height || 2000); + f.left = f.left || Math.round(Math.max(vp.x, vp.x + (vp.w / 2.0) - (f.width / 2.0))); + f.top = f.top || Math.round(Math.max(vp.y, vp.y + (vp.h / 2.0) - (f.height / 2.0))); + f.movable = f.resizable = true; + p.mce_width = f.width; + p.mce_height = f.height; + p.mce_inline = true; + p.mce_window_id = id; + p.mce_auto_focus = f.auto_focus; + + // Transpose +// po = DOM.getPos(ed.getContainer()); +// f.left -= po.x; +// f.top -= po.y; + + t.features = f; + t.params = p; + t.onOpen.dispatch(t, f, p); + + if (f.type) { + opt += ' mceModal'; + + if (f.type) + opt += ' mce' + f.type.substring(0, 1).toUpperCase() + f.type.substring(1); + + f.resizable = false; + } + + if (f.statusbar) + opt += ' mceStatusbar'; + + if (f.resizable) + opt += ' mceResizable'; + + if (f.minimizable) + opt += ' mceMinimizable'; + + if (f.maximizable) + opt += ' mceMaximizable'; + + if (f.movable) + opt += ' mceMovable'; + + // Create DOM objects + t._addAll(DOM.doc.body, + ['div', {id : id, 'class' : ed.settings.inlinepopups_skin || 'clearlooks2', style : 'width:100px;height:100px'}, + ['div', {id : id + '_wrapper', 'class' : 'mceWrapper' + opt}, + ['div', {id : id + '_top', 'class' : 'mceTop'}, + ['div', {'class' : 'mceLeft'}], + ['div', {'class' : 'mceCenter'}], + ['div', {'class' : 'mceRight'}], + ['span', {id : id + '_title'}, f.title || ''] + ], + + ['div', {id : id + '_middle', 'class' : 'mceMiddle'}, + ['div', {id : id + '_left', 'class' : 'mceLeft'}], + ['span', {id : id + '_content'}], + ['div', {id : id + '_right', 'class' : 'mceRight'}] + ], + + ['div', {id : id + '_bottom', 'class' : 'mceBottom'}, + ['div', {'class' : 'mceLeft'}], + ['div', {'class' : 'mceCenter'}], + ['div', {'class' : 'mceRight'}], + ['span', {id : id + '_status'}, 'Content'] + ], + + ['a', {'class' : 'mceMove', tabindex : '-1', href : 'javascript:;'}], + ['a', {'class' : 'mceMin', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {'class' : 'mceMax', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {'class' : 'mceMed', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {'class' : 'mceClose', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {id : id + '_resize_n', 'class' : 'mceResize mceResizeN', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_s', 'class' : 'mceResize mceResizeS', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_w', 'class' : 'mceResize mceResizeW', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_e', 'class' : 'mceResize mceResizeE', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_nw', 'class' : 'mceResize mceResizeNW', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_ne', 'class' : 'mceResize mceResizeNE', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_sw', 'class' : 'mceResize mceResizeSW', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_se', 'class' : 'mceResize mceResizeSE', tabindex : '-1', href : 'javascript:;'}] + ] + ] + ); + + DOM.setStyles(id, {top : -10000, left : -10000}); + + // Fix gecko rendering bug, where the editors iframe messed with window contents + if (tinymce.isGecko) + DOM.setStyle(id, 'overflow', 'auto'); + + // Measure borders + if (!f.type) { + dw += DOM.get(id + '_left').clientWidth; + dw += DOM.get(id + '_right').clientWidth; + dh += DOM.get(id + '_top').clientHeight; + dh += DOM.get(id + '_bottom').clientHeight; + } + + // Resize window + DOM.setStyles(id, {top : f.top, left : f.left, width : f.width + dw, height : f.height + dh}); + + u = f.url || f.file; + if (u) { + if (tinymce.relaxedDomain) + u += (u.indexOf('?') == -1 ? '?' : '&') + 'mce_rdomain=' + tinymce.relaxedDomain; + + u = tinymce._addVer(u); + } + + if (!f.type) { + DOM.add(id + '_content', 'iframe', {id : id + '_ifr', src : 'javascript:""', frameBorder : 0, style : 'border:0;width:10px;height:10px'}); + DOM.setStyles(id + '_ifr', {width : f.width, height : f.height}); + DOM.setAttrib(id + '_ifr', 'src', u); + } else { + DOM.add(id + '_wrapper', 'a', {id : id + '_ok', 'class' : 'mceButton mceOk', href : 'javascript:;', onmousedown : 'return false;'}, 'Ok'); + + if (f.type == 'confirm') + DOM.add(id + '_wrapper', 'a', {'class' : 'mceButton mceCancel', href : 'javascript:;', onmousedown : 'return false;'}, 'Cancel'); + + DOM.add(id + '_middle', 'div', {'class' : 'mceIcon'}); + DOM.setHTML(id + '_content', f.content.replace('\n', '
')); + } + + // Register events + mdf = Event.add(id, 'mousedown', function(e) { + var n = e.target, w, vp; + + w = t.windows[id]; + t.focus(id); + + if (n.nodeName == 'A' || n.nodeName == 'a') { + if (n.className == 'mceMax') { + w.oldPos = w.element.getXY(); + w.oldSize = w.element.getSize(); + + vp = DOM.getViewPort(); + + // Reduce viewport size to avoid scrollbars + vp.w -= 2; + vp.h -= 2; + + w.element.moveTo(vp.x, vp.y); + w.element.resizeTo(vp.w, vp.h); + DOM.setStyles(id + '_ifr', {width : vp.w - w.deltaWidth, height : vp.h - w.deltaHeight}); + DOM.addClass(id + '_wrapper', 'mceMaximized'); + } else if (n.className == 'mceMed') { + // Reset to old size + w.element.moveTo(w.oldPos.x, w.oldPos.y); + w.element.resizeTo(w.oldSize.w, w.oldSize.h); + w.iframeElement.resizeTo(w.oldSize.w - w.deltaWidth, w.oldSize.h - w.deltaHeight); + + DOM.removeClass(id + '_wrapper', 'mceMaximized'); + } else if (n.className == 'mceMove') + return t._startDrag(id, e, n.className); + else if (DOM.hasClass(n, 'mceResize')) + return t._startDrag(id, e, n.className.substring(13)); + } + }); + + clf = Event.add(id, 'click', function(e) { + var n = e.target; + + t.focus(id); + + if (n.nodeName == 'A' || n.nodeName == 'a') { + switch (n.className) { + case 'mceClose': + t.close(null, id); + return Event.cancel(e); + + case 'mceButton mceOk': + case 'mceButton mceCancel': + f.button_func(n.className == 'mceButton mceOk'); + return Event.cancel(e); + } + } + }); + + // Add window + w = t.windows[id] = { + id : id, + mousedown_func : mdf, + click_func : clf, + element : new Element(id, {blocker : 1, container : ed.getContainer()}), + iframeElement : new Element(id + '_ifr'), + features : f, + deltaWidth : dw, + deltaHeight : dh + }; + + w.iframeElement.on('focus', function() { + t.focus(id); + }); + + // Setup blocker + if (t.count == 0 && t.editor.getParam('dialog_type', 'modal') == 'modal') { + DOM.add(DOM.doc.body, 'div', { + id : 'mceModalBlocker', + 'class' : (t.editor.settings.inlinepopups_skin || 'clearlooks2') + '_modalBlocker', + style : {zIndex : t.zIndex - 1} + }); + + DOM.show('mceModalBlocker'); // Reduces flicker in IE + } else + DOM.setStyle('mceModalBlocker', 'z-index', t.zIndex - 1); + + if (tinymce.isIE6 || /Firefox\/2\./.test(navigator.userAgent) || (tinymce.isIE && !DOM.boxModel)) + DOM.setStyles('mceModalBlocker', {position : 'absolute', left : vp.x, top : vp.y, width : vp.w - 2, height : vp.h - 2}); + + t.focus(id); + t._fixIELayout(id, 1); + + // Focus ok button + if (DOM.get(id + '_ok')) + DOM.get(id + '_ok').focus(); + + t.count++; + + return w; + }, + + focus : function(id) { + var t = this, w; + + if (w = t.windows[id]) { + w.zIndex = this.zIndex++; + w.element.setStyle('zIndex', w.zIndex); + w.element.update(); + + id = id + '_wrapper'; + DOM.removeClass(t.lastId, 'mceFocus'); + DOM.addClass(id, 'mceFocus'); + t.lastId = id; + } + }, + + _addAll : function(te, ne) { + var i, n, t = this, dom = tinymce.DOM; + + if (is(ne, 'string')) + te.appendChild(dom.doc.createTextNode(ne)); + else if (ne.length) { + te = te.appendChild(dom.create(ne[0], ne[1])); + + for (i=2; i ix) { + fw = w; + ix = w.zIndex; + } + }); + + if (fw) + t.focus(fw.id); + } + }, + + setTitle : function(w, ti) { + var e; + + w = this._findId(w); + + if (e = DOM.get(w + '_title')) + e.innerHTML = DOM.encode(ti); + }, + + alert : function(txt, cb, s) { + var t = this, w; + + w = t.open({ + title : t, + type : 'alert', + button_func : function(s) { + if (cb) + cb.call(s || t, s); + + t.close(null, w.id); + }, + content : DOM.encode(t.editor.getLang(txt, txt)), + inline : 1, + width : 400, + height : 130 + }); + }, + + confirm : function(txt, cb, s) { + var t = this, w; + + w = t.open({ + title : t, + type : 'confirm', + button_func : function(s) { + if (cb) + cb.call(s || t, s); + + t.close(null, w.id); + }, + content : DOM.encode(t.editor.getLang(txt, txt)), + inline : 1, + width : 400, + height : 130 + }); + }, + + // Internal functions + + _findId : function(w) { + var t = this; + + if (typeof(w) == 'string') + return w; + + each(t.windows, function(wo) { + var ifr = DOM.get(wo.id + '_ifr'); + + if (ifr && w == ifr.contentWindow) { + w = wo.id; + return false; + } + }); + + return w; + }, + + _fixIELayout : function(id, s) { + var w, img; + + if (!tinymce.isIE6) + return; + + // Fixes the bug where hover flickers and does odd things in IE6 + each(['n','s','w','e','nw','ne','sw','se'], function(v) { + var e = DOM.get(id + '_resize_' + v); + + DOM.setStyles(e, { + width : s ? e.clientWidth : '', + height : s ? e.clientHeight : '', + cursor : DOM.getStyle(e, 'cursor', 1) + }); + + DOM.setStyle(id + "_bottom", 'bottom', '-1px'); + + e = 0; + }); + + // Fixes graphics glitch + if (w = this.windows[id]) { + // Fixes rendering bug after resize + w.element.hide(); + w.element.show(); + + // Forced a repaint of the window + //DOM.get(id).style.filter = ''; + + // IE has a bug where images used in CSS won't get loaded + // sometimes when the cache in the browser is disabled + // This fix tries to solve it by loading the images using the image object + each(DOM.select('div,a', id), function(e, i) { + if (e.currentStyle.backgroundImage != 'none') { + img = new Image(); + img.src = e.currentStyle.backgroundImage.replace(/url\(\"(.+)\"\)/, '$1'); + } + }); + + DOM.get(id).style.filter = ''; + } + } + }); + + // Register plugin + tinymce.PluginManager.add('inlinepopups', tinymce.plugins.InlinePopups); +})(); + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/template.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/template.htm.svn-base new file mode 100644 index 0000000..f9ec642 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/.svn/text-base/template.htm.svn-base @@ -0,0 +1,387 @@ + + + +Template for dialogs + + + + +
+
+
+
+
+
+
+ Blured +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Focused +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Statusbar +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Statusbar, Resizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Resizable, Maximizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Blurred, Maximizable, Statusbar, Resizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Maximized, Maximizable, Minimizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Blured +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Alert +
+ +
+
+ + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + +
+
+
+ +
+
+
+
+
+ + + Ok + +
+
+ +
+
+
+
+
+
+ Confirm +
+ +
+
+ + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + +
+
+
+ +
+
+
+
+
+ + + Ok + Cancel + +
+
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js new file mode 100644 index 0000000..07ea477 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js @@ -0,0 +1 @@ +(function(){var d=tinymce.DOM,b=tinymce.dom.Element,a=tinymce.dom.Event,e=tinymce.each,c=tinymce.is;tinymce.create("tinymce.plugins.InlinePopups",{init:function(f,g){f.onBeforeRenderUI.add(function(){f.windowManager=new tinymce.InlineWindowManager(f);d.loadCSS(g+"/skins/"+(f.settings.inlinepopups_skin||"clearlooks2")+"/window.css")})},getInfo:function(){return{longname:"InlinePopups",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.create("tinymce.InlineWindowManager:tinymce.WindowManager",{InlineWindowManager:function(f){var g=this;g.parent(f);g.zIndex=300000;g.count=0;g.windows={}},open:function(r,j){var y=this,i,k="",q=y.editor,g=0,s=0,h,m,n,o,l,v,x;r=r||{};j=j||{};if(!r.inline){return y.parent(r,j)}if(!r.type){y.bookmark=q.selection.getBookmark(1)}i=d.uniqueId();h=d.getViewPort();r.width=parseInt(r.width||320);r.height=parseInt(r.height||240)+(tinymce.isIE?8:0);r.min_width=parseInt(r.min_width||150);r.min_height=parseInt(r.min_height||100);r.max_width=parseInt(r.max_width||2000);r.max_height=parseInt(r.max_height||2000);r.left=r.left||Math.round(Math.max(h.x,h.x+(h.w/2)-(r.width/2)));r.top=r.top||Math.round(Math.max(h.y,h.y+(h.h/2)-(r.height/2)));r.movable=r.resizable=true;j.mce_width=r.width;j.mce_height=r.height;j.mce_inline=true;j.mce_window_id=i;j.mce_auto_focus=r.auto_focus;y.features=r;y.params=j;y.onOpen.dispatch(y,r,j);if(r.type){k+=" mceModal";if(r.type){k+=" mce"+r.type.substring(0,1).toUpperCase()+r.type.substring(1)}r.resizable=false}if(r.statusbar){k+=" mceStatusbar"}if(r.resizable){k+=" mceResizable"}if(r.minimizable){k+=" mceMinimizable"}if(r.maximizable){k+=" mceMaximizable"}if(r.movable){k+=" mceMovable"}y._addAll(d.doc.body,["div",{id:i,"class":q.settings.inlinepopups_skin||"clearlooks2",style:"width:100px;height:100px"},["div",{id:i+"_wrapper","class":"mceWrapper"+k},["div",{id:i+"_top","class":"mceTop"},["div",{"class":"mceLeft"}],["div",{"class":"mceCenter"}],["div",{"class":"mceRight"}],["span",{id:i+"_title"},r.title||""]],["div",{id:i+"_middle","class":"mceMiddle"},["div",{id:i+"_left","class":"mceLeft"}],["span",{id:i+"_content"}],["div",{id:i+"_right","class":"mceRight"}]],["div",{id:i+"_bottom","class":"mceBottom"},["div",{"class":"mceLeft"}],["div",{"class":"mceCenter"}],["div",{"class":"mceRight"}],["span",{id:i+"_status"},"Content"]],["a",{"class":"mceMove",tabindex:"-1",href:"javascript:;"}],["a",{"class":"mceMin",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceMax",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceMed",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceClose",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{id:i+"_resize_n","class":"mceResize mceResizeN",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_s","class":"mceResize mceResizeS",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_w","class":"mceResize mceResizeW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_e","class":"mceResize mceResizeE",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_nw","class":"mceResize mceResizeNW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_ne","class":"mceResize mceResizeNE",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_sw","class":"mceResize mceResizeSW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_se","class":"mceResize mceResizeSE",tabindex:"-1",href:"javascript:;"}]]]);d.setStyles(i,{top:-10000,left:-10000});if(tinymce.isGecko){d.setStyle(i,"overflow","auto")}if(!r.type){g+=d.get(i+"_left").clientWidth;g+=d.get(i+"_right").clientWidth;s+=d.get(i+"_top").clientHeight;s+=d.get(i+"_bottom").clientHeight}d.setStyles(i,{top:r.top,left:r.left,width:r.width+g,height:r.height+s});x=r.url||r.file;if(x){if(tinymce.relaxedDomain){x+=(x.indexOf("?")==-1?"?":"&")+"mce_rdomain="+tinymce.relaxedDomain}x=tinymce._addVer(x)}if(!r.type){d.add(i+"_content","iframe",{id:i+"_ifr",src:'javascript:""',frameBorder:0,style:"border:0;width:10px;height:10px"});d.setStyles(i+"_ifr",{width:r.width,height:r.height});d.setAttrib(i+"_ifr","src",x)}else{d.add(i+"_wrapper","a",{id:i+"_ok","class":"mceButton mceOk",href:"javascript:;",onmousedown:"return false;"},"Ok");if(r.type=="confirm"){d.add(i+"_wrapper","a",{"class":"mceButton mceCancel",href:"javascript:;",onmousedown:"return false;"},"Cancel")}d.add(i+"_middle","div",{"class":"mceIcon"});d.setHTML(i+"_content",r.content.replace("\n","
"))}n=a.add(i,"mousedown",function(t){var u=t.target,f,p;f=y.windows[i];y.focus(i);if(u.nodeName=="A"||u.nodeName=="a"){if(u.className=="mceMax"){f.oldPos=f.element.getXY();f.oldSize=f.element.getSize();p=d.getViewPort();p.w-=2;p.h-=2;f.element.moveTo(p.x,p.y);f.element.resizeTo(p.w,p.h);d.setStyles(i+"_ifr",{width:p.w-f.deltaWidth,height:p.h-f.deltaHeight});d.addClass(i+"_wrapper","mceMaximized")}else{if(u.className=="mceMed"){f.element.moveTo(f.oldPos.x,f.oldPos.y);f.element.resizeTo(f.oldSize.w,f.oldSize.h);f.iframeElement.resizeTo(f.oldSize.w-f.deltaWidth,f.oldSize.h-f.deltaHeight);d.removeClass(i+"_wrapper","mceMaximized")}else{if(u.className=="mceMove"){return y._startDrag(i,t,u.className)}else{if(d.hasClass(u,"mceResize")){return y._startDrag(i,t,u.className.substring(13))}}}}}});o=a.add(i,"click",function(f){var p=f.target;y.focus(i);if(p.nodeName=="A"||p.nodeName=="a"){switch(p.className){case"mceClose":y.close(null,i);return a.cancel(f);case"mceButton mceOk":case"mceButton mceCancel":r.button_func(p.className=="mceButton mceOk");return a.cancel(f)}}});v=y.windows[i]={id:i,mousedown_func:n,click_func:o,element:new b(i,{blocker:1,container:q.getContainer()}),iframeElement:new b(i+"_ifr"),features:r,deltaWidth:g,deltaHeight:s};v.iframeElement.on("focus",function(){y.focus(i)});if(y.count==0&&y.editor.getParam("dialog_type","modal")=="modal"){d.add(d.doc.body,"div",{id:"mceModalBlocker","class":(y.editor.settings.inlinepopups_skin||"clearlooks2")+"_modalBlocker",style:{zIndex:y.zIndex-1}});d.show("mceModalBlocker")}else{d.setStyle("mceModalBlocker","z-index",y.zIndex-1)}if(tinymce.isIE6||/Firefox\/2\./.test(navigator.userAgent)||(tinymce.isIE&&!d.boxModel)){d.setStyles("mceModalBlocker",{position:"absolute",left:h.x,top:h.y,width:h.w-2,height:h.h-2})}y.focus(i);y._fixIELayout(i,1);if(d.get(i+"_ok")){d.get(i+"_ok").focus()}y.count++;return v},focus:function(h){var g=this,f;if(f=g.windows[h]){f.zIndex=this.zIndex++;f.element.setStyle("zIndex",f.zIndex);f.element.update();h=h+"_wrapper";d.removeClass(g.lastId,"mceFocus");d.addClass(h,"mceFocus");g.lastId=h}},_addAll:function(k,h){var g,l,f=this,j=tinymce.DOM;if(c(h,"string")){k.appendChild(j.doc.createTextNode(h))}else{if(h.length){k=k.appendChild(j.create(h[0],h[1]));for(g=2;gf){i=m;f=m.zIndex}});if(i){h.focus(i.id)}}},setTitle:function(f,g){var h;f=this._findId(f);if(h=d.get(f+"_title")){h.innerHTML=d.encode(g)}},alert:function(g,f,j){var i=this,h;h=i.open({title:i,type:"alert",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},confirm:function(g,f,j){var i=this,h;h=i.open({title:i,type:"confirm",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},_findId:function(f){var g=this;if(typeof(f)=="string"){return f}e(g.windows,function(h){var i=d.get(h.id+"_ifr");if(i&&f==i.contentWindow){f=h.id;return false}});return f},_fixIELayout:function(i,h){var f,g;if(!tinymce.isIE6){return}e(["n","s","w","e","nw","ne","sw","se"],function(j){var k=d.get(i+"_resize_"+j);d.setStyles(k,{width:h?k.clientWidth:"",height:h?k.clientHeight:"",cursor:d.getStyle(k,"cursor",1)});d.setStyle(i+"_bottom","bottom","-1px");k=0});if(f=this.windows[i]){f.element.hide();f.element.show();e(d.select("div,a",i),function(k,j){if(k.currentStyle.backgroundImage!="none"){g=new Image();g.src=k.currentStyle.backgroundImage.replace(/url\(\"(.+)\"\)/,"$1")}});d.get(i).style.filter=""}}});tinymce.PluginManager.add("inlinepopups",tinymce.plugins.InlinePopups)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js new file mode 100644 index 0000000..e991683 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js @@ -0,0 +1,635 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var DOM = tinymce.DOM, Element = tinymce.dom.Element, Event = tinymce.dom.Event, each = tinymce.each, is = tinymce.is; + + tinymce.create('tinymce.plugins.InlinePopups', { + init : function(ed, url) { + // Replace window manager + ed.onBeforeRenderUI.add(function() { + ed.windowManager = new tinymce.InlineWindowManager(ed); + DOM.loadCSS(url + '/skins/' + (ed.settings.inlinepopups_skin || 'clearlooks2') + "/window.css"); + }); + }, + + getInfo : function() { + return { + longname : 'InlinePopups', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + tinymce.create('tinymce.InlineWindowManager:tinymce.WindowManager', { + InlineWindowManager : function(ed) { + var t = this; + + t.parent(ed); + t.zIndex = 300000; + t.count = 0; + t.windows = {}; + }, + + open : function(f, p) { + var t = this, id, opt = '', ed = t.editor, dw = 0, dh = 0, vp, po, mdf, clf, we, w, u; + + f = f || {}; + p = p || {}; + + // Run native windows + if (!f.inline) + return t.parent(f, p); + + // Only store selection if the type is a normal window + if (!f.type) + t.bookmark = ed.selection.getBookmark(1); + + id = DOM.uniqueId(); + vp = DOM.getViewPort(); + f.width = parseInt(f.width || 320); + f.height = parseInt(f.height || 240) + (tinymce.isIE ? 8 : 0); + f.min_width = parseInt(f.min_width || 150); + f.min_height = parseInt(f.min_height || 100); + f.max_width = parseInt(f.max_width || 2000); + f.max_height = parseInt(f.max_height || 2000); + f.left = f.left || Math.round(Math.max(vp.x, vp.x + (vp.w / 2.0) - (f.width / 2.0))); + f.top = f.top || Math.round(Math.max(vp.y, vp.y + (vp.h / 2.0) - (f.height / 2.0))); + f.movable = f.resizable = true; + p.mce_width = f.width; + p.mce_height = f.height; + p.mce_inline = true; + p.mce_window_id = id; + p.mce_auto_focus = f.auto_focus; + + // Transpose +// po = DOM.getPos(ed.getContainer()); +// f.left -= po.x; +// f.top -= po.y; + + t.features = f; + t.params = p; + t.onOpen.dispatch(t, f, p); + + if (f.type) { + opt += ' mceModal'; + + if (f.type) + opt += ' mce' + f.type.substring(0, 1).toUpperCase() + f.type.substring(1); + + f.resizable = false; + } + + if (f.statusbar) + opt += ' mceStatusbar'; + + if (f.resizable) + opt += ' mceResizable'; + + if (f.minimizable) + opt += ' mceMinimizable'; + + if (f.maximizable) + opt += ' mceMaximizable'; + + if (f.movable) + opt += ' mceMovable'; + + // Create DOM objects + t._addAll(DOM.doc.body, + ['div', {id : id, 'class' : ed.settings.inlinepopups_skin || 'clearlooks2', style : 'width:100px;height:100px'}, + ['div', {id : id + '_wrapper', 'class' : 'mceWrapper' + opt}, + ['div', {id : id + '_top', 'class' : 'mceTop'}, + ['div', {'class' : 'mceLeft'}], + ['div', {'class' : 'mceCenter'}], + ['div', {'class' : 'mceRight'}], + ['span', {id : id + '_title'}, f.title || ''] + ], + + ['div', {id : id + '_middle', 'class' : 'mceMiddle'}, + ['div', {id : id + '_left', 'class' : 'mceLeft'}], + ['span', {id : id + '_content'}], + ['div', {id : id + '_right', 'class' : 'mceRight'}] + ], + + ['div', {id : id + '_bottom', 'class' : 'mceBottom'}, + ['div', {'class' : 'mceLeft'}], + ['div', {'class' : 'mceCenter'}], + ['div', {'class' : 'mceRight'}], + ['span', {id : id + '_status'}, 'Content'] + ], + + ['a', {'class' : 'mceMove', tabindex : '-1', href : 'javascript:;'}], + ['a', {'class' : 'mceMin', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {'class' : 'mceMax', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {'class' : 'mceMed', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {'class' : 'mceClose', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}], + ['a', {id : id + '_resize_n', 'class' : 'mceResize mceResizeN', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_s', 'class' : 'mceResize mceResizeS', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_w', 'class' : 'mceResize mceResizeW', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_e', 'class' : 'mceResize mceResizeE', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_nw', 'class' : 'mceResize mceResizeNW', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_ne', 'class' : 'mceResize mceResizeNE', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_sw', 'class' : 'mceResize mceResizeSW', tabindex : '-1', href : 'javascript:;'}], + ['a', {id : id + '_resize_se', 'class' : 'mceResize mceResizeSE', tabindex : '-1', href : 'javascript:;'}] + ] + ] + ); + + DOM.setStyles(id, {top : -10000, left : -10000}); + + // Fix gecko rendering bug, where the editors iframe messed with window contents + if (tinymce.isGecko) + DOM.setStyle(id, 'overflow', 'auto'); + + // Measure borders + if (!f.type) { + dw += DOM.get(id + '_left').clientWidth; + dw += DOM.get(id + '_right').clientWidth; + dh += DOM.get(id + '_top').clientHeight; + dh += DOM.get(id + '_bottom').clientHeight; + } + + // Resize window + DOM.setStyles(id, {top : f.top, left : f.left, width : f.width + dw, height : f.height + dh}); + + u = f.url || f.file; + if (u) { + if (tinymce.relaxedDomain) + u += (u.indexOf('?') == -1 ? '?' : '&') + 'mce_rdomain=' + tinymce.relaxedDomain; + + u = tinymce._addVer(u); + } + + if (!f.type) { + DOM.add(id + '_content', 'iframe', {id : id + '_ifr', src : 'javascript:""', frameBorder : 0, style : 'border:0;width:10px;height:10px'}); + DOM.setStyles(id + '_ifr', {width : f.width, height : f.height}); + DOM.setAttrib(id + '_ifr', 'src', u); + } else { + DOM.add(id + '_wrapper', 'a', {id : id + '_ok', 'class' : 'mceButton mceOk', href : 'javascript:;', onmousedown : 'return false;'}, 'Ok'); + + if (f.type == 'confirm') + DOM.add(id + '_wrapper', 'a', {'class' : 'mceButton mceCancel', href : 'javascript:;', onmousedown : 'return false;'}, 'Cancel'); + + DOM.add(id + '_middle', 'div', {'class' : 'mceIcon'}); + DOM.setHTML(id + '_content', f.content.replace('\n', '
')); + } + + // Register events + mdf = Event.add(id, 'mousedown', function(e) { + var n = e.target, w, vp; + + w = t.windows[id]; + t.focus(id); + + if (n.nodeName == 'A' || n.nodeName == 'a') { + if (n.className == 'mceMax') { + w.oldPos = w.element.getXY(); + w.oldSize = w.element.getSize(); + + vp = DOM.getViewPort(); + + // Reduce viewport size to avoid scrollbars + vp.w -= 2; + vp.h -= 2; + + w.element.moveTo(vp.x, vp.y); + w.element.resizeTo(vp.w, vp.h); + DOM.setStyles(id + '_ifr', {width : vp.w - w.deltaWidth, height : vp.h - w.deltaHeight}); + DOM.addClass(id + '_wrapper', 'mceMaximized'); + } else if (n.className == 'mceMed') { + // Reset to old size + w.element.moveTo(w.oldPos.x, w.oldPos.y); + w.element.resizeTo(w.oldSize.w, w.oldSize.h); + w.iframeElement.resizeTo(w.oldSize.w - w.deltaWidth, w.oldSize.h - w.deltaHeight); + + DOM.removeClass(id + '_wrapper', 'mceMaximized'); + } else if (n.className == 'mceMove') + return t._startDrag(id, e, n.className); + else if (DOM.hasClass(n, 'mceResize')) + return t._startDrag(id, e, n.className.substring(13)); + } + }); + + clf = Event.add(id, 'click', function(e) { + var n = e.target; + + t.focus(id); + + if (n.nodeName == 'A' || n.nodeName == 'a') { + switch (n.className) { + case 'mceClose': + t.close(null, id); + return Event.cancel(e); + + case 'mceButton mceOk': + case 'mceButton mceCancel': + f.button_func(n.className == 'mceButton mceOk'); + return Event.cancel(e); + } + } + }); + + // Add window + w = t.windows[id] = { + id : id, + mousedown_func : mdf, + click_func : clf, + element : new Element(id, {blocker : 1, container : ed.getContainer()}), + iframeElement : new Element(id + '_ifr'), + features : f, + deltaWidth : dw, + deltaHeight : dh + }; + + w.iframeElement.on('focus', function() { + t.focus(id); + }); + + // Setup blocker + if (t.count == 0 && t.editor.getParam('dialog_type', 'modal') == 'modal') { + DOM.add(DOM.doc.body, 'div', { + id : 'mceModalBlocker', + 'class' : (t.editor.settings.inlinepopups_skin || 'clearlooks2') + '_modalBlocker', + style : {zIndex : t.zIndex - 1} + }); + + DOM.show('mceModalBlocker'); // Reduces flicker in IE + } else + DOM.setStyle('mceModalBlocker', 'z-index', t.zIndex - 1); + + if (tinymce.isIE6 || /Firefox\/2\./.test(navigator.userAgent) || (tinymce.isIE && !DOM.boxModel)) + DOM.setStyles('mceModalBlocker', {position : 'absolute', left : vp.x, top : vp.y, width : vp.w - 2, height : vp.h - 2}); + + t.focus(id); + t._fixIELayout(id, 1); + + // Focus ok button + if (DOM.get(id + '_ok')) + DOM.get(id + '_ok').focus(); + + t.count++; + + return w; + }, + + focus : function(id) { + var t = this, w; + + if (w = t.windows[id]) { + w.zIndex = this.zIndex++; + w.element.setStyle('zIndex', w.zIndex); + w.element.update(); + + id = id + '_wrapper'; + DOM.removeClass(t.lastId, 'mceFocus'); + DOM.addClass(id, 'mceFocus'); + t.lastId = id; + } + }, + + _addAll : function(te, ne) { + var i, n, t = this, dom = tinymce.DOM; + + if (is(ne, 'string')) + te.appendChild(dom.doc.createTextNode(ne)); + else if (ne.length) { + te = te.appendChild(dom.create(ne[0], ne[1])); + + for (i=2; i ix) { + fw = w; + ix = w.zIndex; + } + }); + + if (fw) + t.focus(fw.id); + } + }, + + setTitle : function(w, ti) { + var e; + + w = this._findId(w); + + if (e = DOM.get(w + '_title')) + e.innerHTML = DOM.encode(ti); + }, + + alert : function(txt, cb, s) { + var t = this, w; + + w = t.open({ + title : t, + type : 'alert', + button_func : function(s) { + if (cb) + cb.call(s || t, s); + + t.close(null, w.id); + }, + content : DOM.encode(t.editor.getLang(txt, txt)), + inline : 1, + width : 400, + height : 130 + }); + }, + + confirm : function(txt, cb, s) { + var t = this, w; + + w = t.open({ + title : t, + type : 'confirm', + button_func : function(s) { + if (cb) + cb.call(s || t, s); + + t.close(null, w.id); + }, + content : DOM.encode(t.editor.getLang(txt, txt)), + inline : 1, + width : 400, + height : 130 + }); + }, + + // Internal functions + + _findId : function(w) { + var t = this; + + if (typeof(w) == 'string') + return w; + + each(t.windows, function(wo) { + var ifr = DOM.get(wo.id + '_ifr'); + + if (ifr && w == ifr.contentWindow) { + w = wo.id; + return false; + } + }); + + return w; + }, + + _fixIELayout : function(id, s) { + var w, img; + + if (!tinymce.isIE6) + return; + + // Fixes the bug where hover flickers and does odd things in IE6 + each(['n','s','w','e','nw','ne','sw','se'], function(v) { + var e = DOM.get(id + '_resize_' + v); + + DOM.setStyles(e, { + width : s ? e.clientWidth : '', + height : s ? e.clientHeight : '', + cursor : DOM.getStyle(e, 'cursor', 1) + }); + + DOM.setStyle(id + "_bottom", 'bottom', '-1px'); + + e = 0; + }); + + // Fixes graphics glitch + if (w = this.windows[id]) { + // Fixes rendering bug after resize + w.element.hide(); + w.element.show(); + + // Forced a repaint of the window + //DOM.get(id).style.filter = ''; + + // IE has a bug where images used in CSS won't get loaded + // sometimes when the cache in the browser is disabled + // This fix tries to solve it by loading the images using the image object + each(DOM.select('div,a', id), function(e, i) { + if (e.currentStyle.backgroundImage != 'none') { + img = new Image(); + img.src = e.currentStyle.backgroundImage.replace(/url\(\"(.+)\"\)/, '$1'); + } + }); + + DOM.get(id).style.filter = ''; + } + } + }); + + // Register plugin + tinymce.PluginManager.add('inlinepopups', tinymce.plugins.InlinePopups); +})(); + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/all-wcprops new file mode 100644 index 0000000..eeba81d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/entries new file mode 100644 index 0000000..d68a5af --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/.svn/entries @@ -0,0 +1,31 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +clearlooks2 +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/all-wcprops new file mode 100644 index 0000000..8c23f06 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2 +END +window.css +K 25 +svn:wc:ra_dav:version-url +V 116 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/entries new file mode 100644 index 0000000..3b6933e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/entries @@ -0,0 +1,65 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2 +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +img +dir + +window.css +file + + + + +2010-06-04T12:51:44.708948Z +5e33280ecbcbc97d23f44ba1d23b578a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +6625 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/text-base/window.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/text-base/window.css.svn-base new file mode 100644 index 0000000..5e6fd7d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/.svn/text-base/window.css.svn-base @@ -0,0 +1,90 @@ +/* Clearlooks 2 */ + +/* Reset */ +.clearlooks2, .clearlooks2 div, .clearlooks2 span, .clearlooks2 a {vertical-align:baseline; text-align:left; position:absolute; border:0; padding:0; margin:0; background:transparent; font-family:Arial,Verdana; font-size:11px; color:#000; text-decoration:none; font-weight:normal; width:auto; height:auto; overflow:hidden; display:block} + +/* General */ +.clearlooks2 {position:absolute; direction:ltr} +.clearlooks2 .mceWrapper {position:static} +.mceEventBlocker {position:fixed; left:0; top:0; background:url(img/horizontal.gif) no-repeat 0 -75px; width:100%; height:100%} +.clearlooks2 .mcePlaceHolder {border:1px solid #000; background:#888; top:0; left:0; opacity:0.5; -ms-filter:'alpha(opacity=50)'; filter:alpha(opacity=50)} +.clearlooks2_modalBlocker {position:fixed; left:0; top:0; width:100%; height:100%; background:#FFF; opacity:0.6; -ms-filter:'alpha(opacity=60)'; filter:alpha(opacity=60); display:none} + +/* Top */ +.clearlooks2 .mceTop, .clearlooks2 .mceTop div {top:0; width:100%; height:23px} +.clearlooks2 .mceTop .mceLeft {width:6px; background:url(img/corners.gif)} +.clearlooks2 .mceTop .mceCenter {right:6px; width:100%; height:23px; background:url(img/horizontal.gif) 12px 0; clip:rect(auto auto auto 12px)} +.clearlooks2 .mceTop .mceRight {right:0; width:6px; height:23px; background:url(img/corners.gif) -12px 0} +.clearlooks2 .mceTop span {width:100%; text-align:center; vertical-align:middle; line-height:23px; font-weight:bold} +.clearlooks2 .mceFocus .mceTop .mceLeft {background:url(img/corners.gif) -6px 0} +.clearlooks2 .mceFocus .mceTop .mceCenter {background:url(img/horizontal.gif) 0 -23px} +.clearlooks2 .mceFocus .mceTop .mceRight {background:url(img/corners.gif) -18px 0} +.clearlooks2 .mceFocus .mceTop span {color:#FFF} + +/* Middle */ +.clearlooks2 .mceMiddle, .clearlooks2 .mceMiddle div {top:0} +.clearlooks2 .mceMiddle {width:100%; height:100%; clip:rect(23px auto auto auto)} +.clearlooks2 .mceMiddle .mceLeft {left:0; width:5px; height:100%; background:url(img/vertical.gif) -5px 0} +.clearlooks2 .mceMiddle span {top:23px; left:5px; width:100%; height:100%; background:#FFF} +.clearlooks2 .mceMiddle .mceRight {right:0; width:5px; height:100%; background:url(img/vertical.gif)} + +/* Bottom */ +.clearlooks2 .mceBottom, .clearlooks2 .mceBottom div {height:6px} +.clearlooks2 .mceBottom {left:0; bottom:0; width:100%} +.clearlooks2 .mceBottom div {top:0} +.clearlooks2 .mceBottom .mceLeft {left:0; width:5px; background:url(img/corners.gif) -34px -6px} +.clearlooks2 .mceBottom .mceCenter {left:5px; width:100%; background:url(img/horizontal.gif) 0 -46px} +.clearlooks2 .mceBottom .mceRight {right:0; width:5px; background: url(img/corners.gif) -34px 0} +.clearlooks2 .mceBottom span {display:none} +.clearlooks2 .mceStatusbar .mceBottom, .clearlooks2 .mceStatusbar .mceBottom div {height:23px} +.clearlooks2 .mceStatusbar .mceBottom .mceLeft {background:url(img/corners.gif) -29px 0} +.clearlooks2 .mceStatusbar .mceBottom .mceCenter {background:url(img/horizontal.gif) 0 -52px} +.clearlooks2 .mceStatusbar .mceBottom .mceRight {background:url(img/corners.gif) -24px 0} +.clearlooks2 .mceStatusbar .mceBottom span {display:block; left:7px; font-family:Arial, Verdana; font-size:11px; line-height:23px} + +/* Actions */ +.clearlooks2 a {width:29px; height:16px; top:3px;} +.clearlooks2 .mceClose {right:6px; background:url(img/buttons.gif) -87px 0} +.clearlooks2 .mceMin {display:none; right:68px; background:url(img/buttons.gif) 0 0} +.clearlooks2 .mceMed {display:none; right:37px; background:url(img/buttons.gif) -29px 0} +.clearlooks2 .mceMax {display:none; right:37px; background:url(img/buttons.gif) -58px 0} +.clearlooks2 .mceMove {display:none;width:100%;cursor:move;background:url(img/corners.gif) no-repeat -100px -100px} +.clearlooks2 .mceMovable .mceMove {display:block} +.clearlooks2 .mceFocus .mceClose {right:6px; background:url(img/buttons.gif) -87px -16px} +.clearlooks2 .mceFocus .mceMin {right:68px; background:url(img/buttons.gif) 0 -16px} +.clearlooks2 .mceFocus .mceMed {right:37px; background:url(img/buttons.gif) -29px -16px} +.clearlooks2 .mceFocus .mceMax {right:37px; background:url(img/buttons.gif) -58px -16px} +.clearlooks2 .mceFocus .mceClose:hover {right:6px; background:url(img/buttons.gif) -87px -32px} +.clearlooks2 .mceFocus .mceClose:hover {right:6px; background:url(img/buttons.gif) -87px -32px} +.clearlooks2 .mceFocus .mceMin:hover {right:68px; background:url(img/buttons.gif) 0 -32px} +.clearlooks2 .mceFocus .mceMed:hover {right:37px; background:url(img/buttons.gif) -29px -32px} +.clearlooks2 .mceFocus .mceMax:hover {right:37px; background:url(img/buttons.gif) -58px -32px} + +/* Resize */ +.clearlooks2 .mceResize {top:auto; left:auto; display:none; width:5px; height:5px; background:url(img/horizontal.gif) no-repeat 0 -75px} +.clearlooks2 .mceResizable .mceResize {display:block} +.clearlooks2 .mceResizable .mceMin, .clearlooks2 .mceMax {display:none} +.clearlooks2 .mceMinimizable .mceMin {display:block} +.clearlooks2 .mceMaximizable .mceMax {display:block} +.clearlooks2 .mceMaximized .mceMed {display:block} +.clearlooks2 .mceMaximized .mceMax {display:none} +.clearlooks2 a.mceResizeN {top:0; left:0; width:100%; cursor:n-resize} +.clearlooks2 a.mceResizeNW {top:0; left:0; cursor:nw-resize} +.clearlooks2 a.mceResizeNE {top:0; right:0; cursor:ne-resize} +.clearlooks2 a.mceResizeW {top:0; left:0; height:100%; cursor:w-resize;} +.clearlooks2 a.mceResizeE {top:0; right:0; height:100%; cursor:e-resize} +.clearlooks2 a.mceResizeS {bottom:0; left:0; width:100%; cursor:s-resize} +.clearlooks2 a.mceResizeSW {bottom:0; left:0; cursor:sw-resize} +.clearlooks2 a.mceResizeSE {bottom:0; right:0; cursor:se-resize} + +/* Alert/Confirm */ +.clearlooks2 .mceButton {font-weight:bold; bottom:10px; width:80px; height:30px; background:url(img/button.gif); line-height:30px; vertical-align:middle; text-align:center; outline:0} +.clearlooks2 .mceMiddle .mceIcon {left:15px; top:35px; width:32px; height:32px} +.clearlooks2 .mceAlert .mceMiddle span, .clearlooks2 .mceConfirm .mceMiddle span {background:transparent;left:60px; top:35px; width:320px; height:50px; font-weight:bold; overflow:auto; white-space:normal} +.clearlooks2 a:hover {font-weight:bold;} +.clearlooks2 .mceAlert .mceMiddle, .clearlooks2 .mceConfirm .mceMiddle {background:#D6D7D5} +.clearlooks2 .mceAlert .mceOk {left:50%; top:auto; margin-left: -40px} +.clearlooks2 .mceAlert .mceIcon {background:url(img/alert.gif)} +.clearlooks2 .mceConfirm .mceOk {left:50%; top:auto; margin-left: -90px} +.clearlooks2 .mceConfirm .mceCancel {left:50%; top:auto} +.clearlooks2 .mceConfirm .mceIcon {background:url(img/confirm.gif)} \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/all-wcprops new file mode 100644 index 0000000..77a9b5c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/all-wcprops @@ -0,0 +1,47 @@ +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img +END +button.gif +K 25 +svn:wc:ra_dav:version-url +V 120 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif +END +corners.gif +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif +END +confirm.gif +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif +END +buttons.gif +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif +END +alert.gif +K 25 +svn:wc:ra_dav:version-url +V 119 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif +END +vertical.gif +K 25 +svn:wc:ra_dav:version-url +V 122 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif +END +horizontal.gif +K 25 +svn:wc:ra_dav:version-url +V 124 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/entries new file mode 100644 index 0000000..da6116a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/entries @@ -0,0 +1,266 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +button.gif +file + + + + +2010-06-04T12:51:44.702281Z +9e911a2c3cb4720d44844ef2d1832a51 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +280 + +corners.gif +file + + + + +2010-06-04T12:51:44.702281Z +2e89a17a473f0e488f3e789ce998f064 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +911 + +confirm.gif +file + + + + +2010-06-04T12:51:44.705614Z +44f1d55b14fbc66b98f3899d90611c3c +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +915 + +buttons.gif +file + + + + +2010-06-04T12:51:44.705614Z +1743ac9f7f2267a6edafefc536a2265d +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +1195 + +alert.gif +file + + + + +2010-06-04T12:51:44.705614Z +56646a5e811547c8bc3d1b9790496b89 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +818 + +vertical.gif +file + + + + +2010-06-04T12:51:44.705614Z +193884a332e91059643448ed4bde2e04 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +92 + +horizontal.gif +file + + + + +2010-06-04T12:51:44.705614Z +0365e75dd4a9ad61dc98dcb641207c21 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +769 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/alert.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/alert.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/alert.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/button.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/button.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/button.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/buttons.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/buttons.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/buttons.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/confirm.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/confirm.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/confirm.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/corners.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/corners.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/corners.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/horizontal.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/horizontal.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/horizontal.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/vertical.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/vertical.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/prop-base/vertical.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/alert.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/alert.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..94abd08763fffdaa0dd5c5afb470a97294f2b94d GIT binary patch literal 818 zcmV-21I_$LNk%w1VITk?0OkMyy?1uhZf>Is3*B5?sT&&Hqoc$;Jkrt6&k+&QHa5gV zL)l77I5;@fLqpYMWV+*+oUyj*ia`4%)P|vrSClaB!?EE7K$--(_XZ zOH0lO2-#9n!;Fik78a-!6wR}-yS%#378ch%J=j4(x@2V5*3{b0&C|=t(mFcQDJi8A z60bTsucxKY8XD3{O5bW~+gDfHP*AZbD54S)*gHGL#>A(co5`c08yg$Yzr7_TCCA9d zs-U0MFfhzxW4%d9s-K?K($LSkxy-Sz(7?Xdn3%wSe#oDmxL#e?qN1My0^C(q&nzt3 zjEvWFbJcly)5*uu)6w93eACp@*{!X#QBc56PRYv1%goBm&CA4*kj9vnyFxN00960|JK*lA^8LV00000EC2ui z03ZM$000O7fPaF6goTEOh>41ejE#5-A-Y zDMkRMg$FSdD>XGe76Lo4g8*}CUeivLI}B6rYIE)9Vh306CXDUKb=Dfx`}wT=u<6# zD$n)U&_b6YEgl901IUC4zyf`27&(S$$E;fb{Wx)wm4^u-0H zv*CdXLINn%=tH`+>C>qDxJcmTfS@*Z45S!AI|Ya#EOHOnP2`2|1;88Ju#tey5e=^) w9O1*fx%21Hn;(HtX3!cMK%gku&b_<$??7lEkM$&p`Sa-0r)T3DnWI1eJD_KQDgXcg literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/button.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/button.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..e671094cb0eb210b756117f992cf5ca2caa698fd GIT binary patch literal 280 zcmZ?wbhEHb3}BFB*v!Ci>hy`^ZOqepYsb$*CnUiMCojPaU!rn5M;0h0LDv*_&)DBrWN@OfznH1FT4{BUps!wTd|YdJ0002^_xJYp^u)%)d3$)z&B_1&{{R30 z000000000000000A^8LW000^QEC2ui0CWH_000I5phk>jX`ZJhqHH^=Zk(=iEn-2g z?|i>wBOI?nEEih2q)UH?AHyg7~@-@+VH6!(;c_ zxnl@0-@$+5z5y6S@uA0c2rFuI7V_gjj3zt(raakjrMZ$WvB8W9atTdoP;NHMsS_E` zo&bQ*s1XAOQ5i;$x=5;&g^B@Cqe`7hmFm-~ShGUCs0c-^w)`cdp#12=eOP%eQY|sD1+r)(d#BVZMbAD~4*IvE#>(BS&T|xw7TPlrL+3 zoO$zRs18Dl9!)zw58wX%{rd5@fPehOCg6KeHK5@Cf($n3po0lM*gyda7AK*C5k5#^gBwbip@gwr zxFA#zlxU)fn3pyG@#n&{$-F`k&?i#Os}T#YskFu{;S5}9I=NKOD% zl13IcK>xnz`3B3WgWQ!)wLkXuHnZ0c5HvW}0r6=_Zpm`ce)8x0(|!A=bwNAx@Vw%7Dp(bgC44=paU%GsGm?BAnBx(R%)rGkzT6lrjlmL z>8F%>3M!~kDPZcUsHUnas#2}$>Z=O03hS(=%1Z03TZN@7Sh{A#Yp+%P3hY!W2w?27 z$R?|-vc)dz?6bx;3+=SXN=q&OwHg>}*IdYMD_6JPx&>~yY8|WCxyGKWSi0&O#%{ZU z8SB}+^3J(S<94K>q#ugahfi?d(AAt1bTp(;R8!O__ z4hjuog&|&Ow1y6L_~6nY!bY^QK&A*J1XR};BaJ(@)KE`%6)&h8Wq?g93 z?c|kAwoPS{a3?9ZmalP{H`@ZtDW{vp&e>*|d8!$>oy!S+xSFqx+4!8sJ}PKTu0Ct)uD=RDxVCHlB}`m%1))6x2zDYdq=`Kv|wmLm3t8~B<$_Jb3xuB^__&G?WTylN4utE$1m z!1=ILv9hrCi66PSxc~e2>z6G0pe^@^5&5A-&VntacS+opK(T{V_m()r#KOD0y0na8 z%goB5UmeoU$gX`!&(O}**3|y@@xQ>n(9zHMmpZewvaqqQx45?Js#L_q!_309tE{Tf zhBEo9Vadb0m3v>7ePP{-Blnp<{MWPlxL*0GU8$dvuduJ(k1^BK(#Ocgm{14%#gX`? zRrPxW_?tJVsi*s^Ih9Zd`n!Ms{rtGOx2&zJ_Iw2Oc>wp7H`dqHA^8LV00000EC2ui z03ZM$000O7fPaF6gntbM4p9Oi0#ObH4TX}Ee_sv)5lUSnX(L@q5dschl$1*XVQCp1 zeyy$<2VnwB5T%0+1Q8<=Os>AJM0j(~$f5C*s#Z5#}WQsM?UH3Y?cED>eUzkt6a5bO}dMvwr^Xb5l#@FPJS zeS!wHvEmgRmp@>-3c_NDJ)uzN1ZkynBnOke0ssw~U_pYYQEhN&DagSGI<2(wiP}L< z2e47_&4?6KK!XdoP`Bdkv!miI0SHd)Rj>ff-abVV5}Gn#$6lukSl~7CfghoAf$`$8 z5@&CbciebnJ`7g|k8#ol6q!Rhs*3^IC>>Kxp>@zA1EAR&LqLOw8f*9N5TStp1}s%3 zVM*boLJ~NtT^KPTcxVj-0|X>-(j+l5M`Wq2O|PlKt>1?^svPY_j#uua~0?Tgn$1%K*EI2i?jm zAoXC1c4Wxs^ZEJtUB4qT{UQ1HY%Uh+pQ*t&D_y59>e1Hjx9TtBow%m&!&jTd_f1dxIfK5J>hhd07SSo@U1ANej1zBgs@J)fS$HxTwj{ShgdWQ_Y8V1_h@vv!qzRzyB@+ z)6#Z?iW=a9&+kg`Kr%f7CfA71iK;1=LJ}Gy$VX4NJcj@#Eg2?3moI4LKhG1RIoI;k zR(9^*MkqfeXOWI?@z07&C`6+;+5U$r@?g~7SE`^9EI4NyQM);aP&a^Qu#OXmrWw+; zlBPWv*b`t#;?w$Wfug|f{7_}xnb%jXB(rC~MUS#+NW!T2av4Ypxp0F2N_qva>Vv^VISDi|>EX(%41 z@Cm688>Uf+QlLkXaIO#&z;q&UJDY-1!mg;(MFDCGS{6p8a!wVF{_rmktj70is)Xxc~qF literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/horizontal.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/horizontal.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..c2a2ad454db194e428a7b9da40f62d5376a17428 GIT binary patch literal 769 zcmb7?=`WiB0LI^D)(HC`v6*aD4AW#LGRb0Oi$tH~CP=nb%N%8n zy02ceuewTUUDeW|RaMp*TlLV6R$o=rQOY{@AME+?`}QQiCwU%4Jq)?`{5B8=ECT1T z+wH!7{zji$)-UA>D9({)xO1SJGLHK54Mat(}s4_unMiKjB85EHng*~!Ddt+?(c5uHG4ZI zsc>jP#5Y6w6Wj5!Y=0^oK*&D+R;Yh@ze z7vfi;qFW{owiOfGqcB@XkwUZ0j?Km4{qjE- z6c!Z|O1!?5l~+^}tE#*^aCo0?lZ$rLKBwT;dI+nLO(UEMvb-ad9elEWPw8Xg(t zx$y<#6T+{PQ@$ecjAT|iC%dxnP5yoH$I`OLFU5*drPiz>bidcu^@a^2v}rP3-`?4^ z?Cl>M-Z(n8ot*x$0~Z|;ku35!-qAHSQN*GM3tW8AN#VWJNrHQD+6qXfO_zB^6eFVU zOjzupAb0*`W8} zQVeE5Djt<a0+Owme6r2OGio7DoTWqkhGKj0`0*1-*<$#uL5YH*kC8Z>wpCvYO~asp;G r-~A;>$wp)vkltB=c_?k6Zw*FUgrbAm;sB08O9+}m=}H3OFd*zN8L+JA literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/vertical.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/.svn/text-base/vertical.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..43a735f22c81d6d7d99c1ba9f034f38bfdd1a92b GIT binary patch literal 92 zcmZ?wbhEHb&D4o4FLHO9PR)B literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif new file mode 100644 index 0000000000000000000000000000000000000000..94abd08763fffdaa0dd5c5afb470a97294f2b94d GIT binary patch literal 818 zcmV-21I_$LNk%w1VITk?0OkMyy?1uhZf>Is3*B5?sT&&Hqoc$;Jkrt6&k+&QHa5gV zL)l77I5;@fLqpYMWV+*+oUyj*ia`4%)P|vrSClaB!?EE7K$--(_XZ zOH0lO2-#9n!;Fik78a-!6wR}-yS%#378ch%J=j4(x@2V5*3{b0&C|=t(mFcQDJi8A z60bTsucxKY8XD3{O5bW~+gDfHP*AZbD54S)*gHGL#>A(co5`c08yg$Yzr7_TCCA9d zs-U0MFfhzxW4%d9s-K?K($LSkxy-Sz(7?Xdn3%wSe#oDmxL#e?qN1My0^C(q&nzt3 zjEvWFbJcly)5*uu)6w93eACp@*{!X#QBc56PRYv1%goBm&CA4*kj9vnyFxN00960|JK*lA^8LV00000EC2ui z03ZM$000O7fPaF6goTEOh>41ejE#5-A-Y zDMkRMg$FSdD>XGe76Lo4g8*}CUeivLI}B6rYIE)9Vh306CXDUKb=Dfx`}wT=u<6# zD$n)U&_b6YEgl901IUC4zyf`27&(S$$E;fb{Wx)wm4^u-0H zv*CdXLINn%=tH`+>C>qDxJcmTfS@*Z45S!AI|Ya#EOHOnP2`2|1;88Ju#tey5e=^) w9O1*fx%21Hn;(HtX3!cMK%gku&b_<$??7lEkM$&p`Sa-0r)T3DnWI1eJD_KQDgXcg literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif new file mode 100644 index 0000000000000000000000000000000000000000..e671094cb0eb210b756117f992cf5ca2caa698fd GIT binary patch literal 280 zcmZ?wbhEHb3}BFB*v!Ci>hy`^ZOqepYsb$*CnUiMCojPaU!rn5M;0h0LDv*_&)DBrWN@OfznH1FT4{BUps!wTd|YdJ0002^_xJYp^u)%)d3$)z&B_1&{{R30 z000000000000000A^8LW000^QEC2ui0CWH_000I5phk>jX`ZJhqHH^=Zk(=iEn-2g z?|i>wBOI?nEEih2q)UH?AHyg7~@-@+VH6!(;c_ zxnl@0-@$+5z5y6S@uA0c2rFuI7V_gjj3zt(raakjrMZ$WvB8W9atTdoP;NHMsS_E` zo&bQ*s1XAOQ5i;$x=5;&g^B@Cqe`7hmFm-~ShGUCs0c-^w)`cdp#12=eOP%eQY|sD1+r)(d#BVZMbAD~4*IvE#>(BS&T|xw7TPlrL+3 zoO$zRs18Dl9!)zw58wX%{rd5@fPehOCg6KeHK5@Cf($n3po0lM*gyda7AK*C5k5#^gBwbip@gwr zxFA#zlxU)fn3pyG@#n&{$-F`k&?i#Os}T#YskFu{;S5}9I=NKOD% zl13IcK>xnz`3B3WgWQ!)wLkXuHnZ0c5HvW}0r6=_Zpm`ce)8x0(|!A=bwNAx@Vw%7Dp(bgC44=paU%GsGm?BAnBx(R%)rGkzT6lrjlmL z>8F%>3M!~kDPZcUsHUnas#2}$>Z=O03hS(=%1Z03TZN@7Sh{A#Yp+%P3hY!W2w?27 z$R?|-vc)dz?6bx;3+=SXN=q&OwHg>}*IdYMD_6JPx&>~yY8|WCxyGKWSi0&O#%{ZU z8SB}+^3J(S<94K>q#ugahfi?d(AAt1bTp(;R8!O__ z4hjuog&|&Ow1y6L_~6nY!bY^QK&A*J1XR};BaJ(@)KE`%6)&h8Wq?g93 z?c|kAwoPS{a3?9ZmalP{H`@ZtDW{vp&e>*|d8!$>oy!S+xSFqx+4!8sJ}PKTu0Ct)uD=RDxVCHlB}`m%1))6x2zDYdq=`Kv|wmLm3t8~B<$_Jb3xuB^__&G?WTylN4utE$1m z!1=ILv9hrCi66PSxc~e2>z6G0pe^@^5&5A-&VntacS+opK(T{V_m()r#KOD0y0na8 z%goB5UmeoU$gX`!&(O}**3|y@@xQ>n(9zHMmpZewvaqqQx45?Js#L_q!_309tE{Tf zhBEo9Vadb0m3v>7ePP{-Blnp<{MWPlxL*0GU8$dvuduJ(k1^BK(#Ocgm{14%#gX`? zRrPxW_?tJVsi*s^Ih9Zd`n!Ms{rtGOx2&zJ_Iw2Oc>wp7H`dqHA^8LV00000EC2ui z03ZM$000O7fPaF6gntbM4p9Oi0#ObH4TX}Ee_sv)5lUSnX(L@q5dschl$1*XVQCp1 zeyy$<2VnwB5T%0+1Q8<=Os>AJM0j(~$f5C*s#Z5#}WQsM?UH3Y?cED>eUzkt6a5bO}dMvwr^Xb5l#@FPJS zeS!wHvEmgRmp@>-3c_NDJ)uzN1ZkynBnOke0ssw~U_pYYQEhN&DagSGI<2(wiP}L< z2e47_&4?6KK!XdoP`Bdkv!miI0SHd)Rj>ff-abVV5}Gn#$6lukSl~7CfghoAf$`$8 z5@&CbciebnJ`7g|k8#ol6q!Rhs*3^IC>>Kxp>@zA1EAR&LqLOw8f*9N5TStp1}s%3 zVM*boLJ~NtT^KPTcxVj-0|X>-(j+l5M`Wq2O|PlKt>1?^svPY_j#uua~0?Tgn$1%K*EI2i?jm zAoXC1c4Wxs^ZEJtUB4qT{UQ1HY%Uh+pQ*t&D_y59>e1Hjx9TtBow%m&!&jTd_f1dxIfK5J>hhd07SSo@U1ANej1zBgs@J)fS$HxTwj{ShgdWQ_Y8V1_h@vv!qzRzyB@+ z)6#Z?iW=a9&+kg`Kr%f7CfA71iK;1=LJ}Gy$VX4NJcj@#Eg2?3moI4LKhG1RIoI;k zR(9^*MkqfeXOWI?@z07&C`6+;+5U$r@?g~7SE`^9EI4NyQM);aP&a^Qu#OXmrWw+; zlBPWv*b`t#;?w$Wfug|f{7_}xnb%jXB(rC~MUS#+NW!T2av4Ypxp0F2N_qva>Vv^VISDi|>EX(%41 z@Cm688>Uf+QlLkXaIO#&z;q&UJDY-1!mg;(MFDCGS{6p8a!wVF{_rmktj70is)Xxc~qF literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif new file mode 100644 index 0000000000000000000000000000000000000000..c2a2ad454db194e428a7b9da40f62d5376a17428 GIT binary patch literal 769 zcmb7?=`WiB0LI^D)(HC`v6*aD4AW#LGRb0Oi$tH~CP=nb%N%8n zy02ceuewTUUDeW|RaMp*TlLV6R$o=rQOY{@AME+?`}QQiCwU%4Jq)?`{5B8=ECT1T z+wH!7{zji$)-UA>D9({)xO1SJGLHK54Mat(}s4_unMiKjB85EHng*~!Ddt+?(c5uHG4ZI zsc>jP#5Y6w6Wj5!Y=0^oK*&D+R;Yh@ze z7vfi;qFW{owiOfGqcB@XkwUZ0j?Km4{qjE- z6c!Z|O1!?5l~+^}tE#*^aCo0?lZ$rLKBwT;dI+nLO(UEMvb-ad9elEWPw8Xg(t zx$y<#6T+{PQ@$ecjAT|iC%dxnP5yoH$I`OLFU5*drPiz>bidcu^@a^2v}rP3-`?4^ z?Cl>M-Z(n8ot*x$0~Z|;ku35!-qAHSQN*GM3tW8AN#VWJNrHQD+6qXfO_zB^6eFVU zOjzupAb0*`W8} zQVeE5Djt<a0+Owme6r2OGio7DoTWqkhGKj0`0*1-*<$#uL5YH*kC8Z>wpCvYO~asp;G r-~A;>$wp)vkltB=c_?k6Zw*FUgrbAm;sB08O9+}m=}H3OFd*zN8L+JA literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif new file mode 100644 index 0000000000000000000000000000000000000000..43a735f22c81d6d7d99c1ba9f034f38bfdd1a92b GIT binary patch literal 92 zcmZ?wbhEHb&D4o4FLHO9PR)B literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css new file mode 100644 index 0000000..5e6fd7d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css @@ -0,0 +1,90 @@ +/* Clearlooks 2 */ + +/* Reset */ +.clearlooks2, .clearlooks2 div, .clearlooks2 span, .clearlooks2 a {vertical-align:baseline; text-align:left; position:absolute; border:0; padding:0; margin:0; background:transparent; font-family:Arial,Verdana; font-size:11px; color:#000; text-decoration:none; font-weight:normal; width:auto; height:auto; overflow:hidden; display:block} + +/* General */ +.clearlooks2 {position:absolute; direction:ltr} +.clearlooks2 .mceWrapper {position:static} +.mceEventBlocker {position:fixed; left:0; top:0; background:url(img/horizontal.gif) no-repeat 0 -75px; width:100%; height:100%} +.clearlooks2 .mcePlaceHolder {border:1px solid #000; background:#888; top:0; left:0; opacity:0.5; -ms-filter:'alpha(opacity=50)'; filter:alpha(opacity=50)} +.clearlooks2_modalBlocker {position:fixed; left:0; top:0; width:100%; height:100%; background:#FFF; opacity:0.6; -ms-filter:'alpha(opacity=60)'; filter:alpha(opacity=60); display:none} + +/* Top */ +.clearlooks2 .mceTop, .clearlooks2 .mceTop div {top:0; width:100%; height:23px} +.clearlooks2 .mceTop .mceLeft {width:6px; background:url(img/corners.gif)} +.clearlooks2 .mceTop .mceCenter {right:6px; width:100%; height:23px; background:url(img/horizontal.gif) 12px 0; clip:rect(auto auto auto 12px)} +.clearlooks2 .mceTop .mceRight {right:0; width:6px; height:23px; background:url(img/corners.gif) -12px 0} +.clearlooks2 .mceTop span {width:100%; text-align:center; vertical-align:middle; line-height:23px; font-weight:bold} +.clearlooks2 .mceFocus .mceTop .mceLeft {background:url(img/corners.gif) -6px 0} +.clearlooks2 .mceFocus .mceTop .mceCenter {background:url(img/horizontal.gif) 0 -23px} +.clearlooks2 .mceFocus .mceTop .mceRight {background:url(img/corners.gif) -18px 0} +.clearlooks2 .mceFocus .mceTop span {color:#FFF} + +/* Middle */ +.clearlooks2 .mceMiddle, .clearlooks2 .mceMiddle div {top:0} +.clearlooks2 .mceMiddle {width:100%; height:100%; clip:rect(23px auto auto auto)} +.clearlooks2 .mceMiddle .mceLeft {left:0; width:5px; height:100%; background:url(img/vertical.gif) -5px 0} +.clearlooks2 .mceMiddle span {top:23px; left:5px; width:100%; height:100%; background:#FFF} +.clearlooks2 .mceMiddle .mceRight {right:0; width:5px; height:100%; background:url(img/vertical.gif)} + +/* Bottom */ +.clearlooks2 .mceBottom, .clearlooks2 .mceBottom div {height:6px} +.clearlooks2 .mceBottom {left:0; bottom:0; width:100%} +.clearlooks2 .mceBottom div {top:0} +.clearlooks2 .mceBottom .mceLeft {left:0; width:5px; background:url(img/corners.gif) -34px -6px} +.clearlooks2 .mceBottom .mceCenter {left:5px; width:100%; background:url(img/horizontal.gif) 0 -46px} +.clearlooks2 .mceBottom .mceRight {right:0; width:5px; background: url(img/corners.gif) -34px 0} +.clearlooks2 .mceBottom span {display:none} +.clearlooks2 .mceStatusbar .mceBottom, .clearlooks2 .mceStatusbar .mceBottom div {height:23px} +.clearlooks2 .mceStatusbar .mceBottom .mceLeft {background:url(img/corners.gif) -29px 0} +.clearlooks2 .mceStatusbar .mceBottom .mceCenter {background:url(img/horizontal.gif) 0 -52px} +.clearlooks2 .mceStatusbar .mceBottom .mceRight {background:url(img/corners.gif) -24px 0} +.clearlooks2 .mceStatusbar .mceBottom span {display:block; left:7px; font-family:Arial, Verdana; font-size:11px; line-height:23px} + +/* Actions */ +.clearlooks2 a {width:29px; height:16px; top:3px;} +.clearlooks2 .mceClose {right:6px; background:url(img/buttons.gif) -87px 0} +.clearlooks2 .mceMin {display:none; right:68px; background:url(img/buttons.gif) 0 0} +.clearlooks2 .mceMed {display:none; right:37px; background:url(img/buttons.gif) -29px 0} +.clearlooks2 .mceMax {display:none; right:37px; background:url(img/buttons.gif) -58px 0} +.clearlooks2 .mceMove {display:none;width:100%;cursor:move;background:url(img/corners.gif) no-repeat -100px -100px} +.clearlooks2 .mceMovable .mceMove {display:block} +.clearlooks2 .mceFocus .mceClose {right:6px; background:url(img/buttons.gif) -87px -16px} +.clearlooks2 .mceFocus .mceMin {right:68px; background:url(img/buttons.gif) 0 -16px} +.clearlooks2 .mceFocus .mceMed {right:37px; background:url(img/buttons.gif) -29px -16px} +.clearlooks2 .mceFocus .mceMax {right:37px; background:url(img/buttons.gif) -58px -16px} +.clearlooks2 .mceFocus .mceClose:hover {right:6px; background:url(img/buttons.gif) -87px -32px} +.clearlooks2 .mceFocus .mceClose:hover {right:6px; background:url(img/buttons.gif) -87px -32px} +.clearlooks2 .mceFocus .mceMin:hover {right:68px; background:url(img/buttons.gif) 0 -32px} +.clearlooks2 .mceFocus .mceMed:hover {right:37px; background:url(img/buttons.gif) -29px -32px} +.clearlooks2 .mceFocus .mceMax:hover {right:37px; background:url(img/buttons.gif) -58px -32px} + +/* Resize */ +.clearlooks2 .mceResize {top:auto; left:auto; display:none; width:5px; height:5px; background:url(img/horizontal.gif) no-repeat 0 -75px} +.clearlooks2 .mceResizable .mceResize {display:block} +.clearlooks2 .mceResizable .mceMin, .clearlooks2 .mceMax {display:none} +.clearlooks2 .mceMinimizable .mceMin {display:block} +.clearlooks2 .mceMaximizable .mceMax {display:block} +.clearlooks2 .mceMaximized .mceMed {display:block} +.clearlooks2 .mceMaximized .mceMax {display:none} +.clearlooks2 a.mceResizeN {top:0; left:0; width:100%; cursor:n-resize} +.clearlooks2 a.mceResizeNW {top:0; left:0; cursor:nw-resize} +.clearlooks2 a.mceResizeNE {top:0; right:0; cursor:ne-resize} +.clearlooks2 a.mceResizeW {top:0; left:0; height:100%; cursor:w-resize;} +.clearlooks2 a.mceResizeE {top:0; right:0; height:100%; cursor:e-resize} +.clearlooks2 a.mceResizeS {bottom:0; left:0; width:100%; cursor:s-resize} +.clearlooks2 a.mceResizeSW {bottom:0; left:0; cursor:sw-resize} +.clearlooks2 a.mceResizeSE {bottom:0; right:0; cursor:se-resize} + +/* Alert/Confirm */ +.clearlooks2 .mceButton {font-weight:bold; bottom:10px; width:80px; height:30px; background:url(img/button.gif); line-height:30px; vertical-align:middle; text-align:center; outline:0} +.clearlooks2 .mceMiddle .mceIcon {left:15px; top:35px; width:32px; height:32px} +.clearlooks2 .mceAlert .mceMiddle span, .clearlooks2 .mceConfirm .mceMiddle span {background:transparent;left:60px; top:35px; width:320px; height:50px; font-weight:bold; overflow:auto; white-space:normal} +.clearlooks2 a:hover {font-weight:bold;} +.clearlooks2 .mceAlert .mceMiddle, .clearlooks2 .mceConfirm .mceMiddle {background:#D6D7D5} +.clearlooks2 .mceAlert .mceOk {left:50%; top:auto; margin-left: -40px} +.clearlooks2 .mceAlert .mceIcon {background:url(img/alert.gif)} +.clearlooks2 .mceConfirm .mceOk {left:50%; top:auto; margin-left: -90px} +.clearlooks2 .mceConfirm .mceCancel {left:50%; top:auto} +.clearlooks2 .mceConfirm .mceIcon {background:url(img/confirm.gif)} \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm new file mode 100644 index 0000000..f9ec642 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm @@ -0,0 +1,387 @@ + + + +Template for dialogs + + + + +
+
+
+
+
+
+
+ Blured +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Focused +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Statusbar +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Statusbar, Resizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Resizable, Maximizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Blurred, Maximizable, Statusbar, Resizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Maximized, Maximizable, Minimizable +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Blured +
+ +
+
+ Content +
+
+ +
+
+
+
+ Statusbar text. +
+ + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+
+ Alert +
+ +
+
+ + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + +
+
+
+ +
+
+
+
+
+ + + Ok + +
+
+ +
+
+
+
+
+
+ Confirm +
+ +
+
+ + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + This is a very long error message. This is a very long error message. + +
+
+
+ +
+
+
+
+
+ + + Ok + Cancel + +
+
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/all-wcprops new file mode 100644 index 0000000..e1e6bae --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/insertdatetime +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/entries new file mode 100644 index 0000000..865385c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/insertdatetime +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.302281Z +d99072498466cdb2f53ed7c02da85982 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1931 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.302281Z +32a2afa1cd3ff8c9b966f8724ba3e0b3 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2860 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..938ce6b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/insertdatetime/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.InsertDateTime",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceInsertDate",function(){var d=c._getDateTime(new Date(),a.getParam("plugin_insertdate_dateFormat",a.getLang("insertdatetime.date_fmt")));a.execCommand("mceInsertContent",false,d)});a.addCommand("mceInsertTime",function(){var d=c._getDateTime(new Date(),a.getParam("plugin_insertdate_timeFormat",a.getLang("insertdatetime.time_fmt")));a.execCommand("mceInsertContent",false,d)});a.addButton("insertdate",{title:"insertdatetime.insertdate_desc",cmd:"mceInsertDate"});a.addButton("inserttime",{title:"insertdatetime.inserttime_desc",cmd:"mceInsertTime"})},getInfo:function(){return{longname:"Insert date/time",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/insertdatetime",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_getDateTime:function(e,a){var c=this.editor;function b(g,d){g=""+g;if(g.length-1){a[c].style.zIndex=g[j];a[j].style.zIndex=g[c]}else{if(g[c]>0){a[c].style.zIndex=g[c]-1}}}else{for(f=0;fg[c]){j=f;break}}if(j>-1){a[c].style.zIndex=g[j];a[j].style.zIndex=g[c]}else{a[c].style.zIndex=g[c]+1}}b.execCommand("mceRepaint")},_getParentLayer:function(a){return this.editor.dom.getParent(a,function(b){return b.nodeType==1&&/^(absolute|relative|static)$/i.test(b.style.position)})},_insertLayer:function(){var a=this.editor,b=a.dom.getPos(a.dom.getParent(a.selection.getNode(),"*"));a.dom.add(a.getBody(),"div",{style:{position:"absolute",left:b.x,top:(b.y>20?b.y:20),width:100,height:100},"class":"mceItemVisualAid"},a.selection.getContent()||a.getLang("layer.content"))},_toggleAbsolute:function(){var a=this.editor,b=this._getParentLayer(a.selection.getNode());if(!b){b=a.dom.getParent(a.selection.getNode(),"DIV,P,IMG")}if(b){if(b.style.position.toLowerCase()=="absolute"){a.dom.setStyles(b,{position:"",left:"",top:"",width:"",height:""});a.dom.removeClass(b,"mceItemVisualAid")}else{if(b.style.left==""){b.style.left=20+"px"}if(b.style.top==""){b.style.top=20+"px"}if(b.style.width==""){b.style.width=b.width?(b.width+"px"):"100px"}if(b.style.height==""){b.style.height=b.height?(b.height+"px"):"100px"}b.style.position="absolute";a.addVisual(a.getBody())}a.execCommand("mceRepaint");a.nodeChanged()}}});tinymce.PluginManager.add("layer",tinymce.plugins.Layer)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/layer/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/layer/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..d5aa865 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/layer/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,212 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Layer', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceInsertLayer', t._insertLayer, t); + + ed.addCommand('mceMoveForward', function() { + t._move(1); + }); + + ed.addCommand('mceMoveBackward', function() { + t._move(-1); + }); + + ed.addCommand('mceMakeAbsolute', function() { + t._toggleAbsolute(); + }); + + // Register buttons + ed.addButton('moveforward', {title : 'layer.forward_desc', cmd : 'mceMoveForward'}); + ed.addButton('movebackward', {title : 'layer.backward_desc', cmd : 'mceMoveBackward'}); + ed.addButton('absolute', {title : 'layer.absolute_desc', cmd : 'mceMakeAbsolute'}); + ed.addButton('insertlayer', {title : 'layer.insertlayer_desc', cmd : 'mceInsertLayer'}); + + ed.onInit.add(function() { + if (tinymce.isIE) + ed.getDoc().execCommand('2D-Position', false, true); + }); + + ed.onNodeChange.add(t._nodeChange, t); + ed.onVisualAid.add(t._visualAid, t); + }, + + getInfo : function() { + return { + longname : 'Layer', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/layer', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + _nodeChange : function(ed, cm, n) { + var le, p; + + le = this._getParentLayer(n); + p = ed.dom.getParent(n, 'DIV,P,IMG'); + + if (!p) { + cm.setDisabled('absolute', 1); + cm.setDisabled('moveforward', 1); + cm.setDisabled('movebackward', 1); + } else { + cm.setDisabled('absolute', 0); + cm.setDisabled('moveforward', !le); + cm.setDisabled('movebackward', !le); + cm.setActive('absolute', le && le.style.position.toLowerCase() == "absolute"); + } + }, + + // Private methods + + _visualAid : function(ed, e, s) { + var dom = ed.dom; + + tinymce.each(dom.select('div,p', e), function(e) { + if (/^(absolute|relative|static)$/i.test(e.style.position)) { + if (s) + dom.addClass(e, 'mceItemVisualAid'); + else + dom.removeClass(e, 'mceItemVisualAid'); + } + }); + }, + + _move : function(d) { + var ed = this.editor, i, z = [], le = this._getParentLayer(ed.selection.getNode()), ci = -1, fi = -1, nl; + + nl = []; + tinymce.walk(ed.getBody(), function(n) { + if (n.nodeType == 1 && /^(absolute|relative|static)$/i.test(n.style.position)) + nl.push(n); + }, 'childNodes'); + + // Find z-indexes + for (i=0; i -1) { + nl[ci].style.zIndex = z[fi]; + nl[fi].style.zIndex = z[ci]; + } else { + if (z[ci] > 0) + nl[ci].style.zIndex = z[ci] - 1; + } + } else { + // Move forward + + // Try find a higher one + for (i=0; i z[ci]) { + fi = i; + break; + } + } + + if (fi > -1) { + nl[ci].style.zIndex = z[fi]; + nl[fi].style.zIndex = z[ci]; + } else + nl[ci].style.zIndex = z[ci] + 1; + } + + ed.execCommand('mceRepaint'); + }, + + _getParentLayer : function(n) { + return this.editor.dom.getParent(n, function(n) { + return n.nodeType == 1 && /^(absolute|relative|static)$/i.test(n.style.position); + }); + }, + + _insertLayer : function() { + var ed = this.editor, p = ed.dom.getPos(ed.dom.getParent(ed.selection.getNode(), '*')); + + ed.dom.add(ed.getBody(), 'div', { + style : { + position : 'absolute', + left : p.x, + top : (p.y > 20 ? p.y : 20), + width : 100, + height : 100 + }, + 'class' : 'mceItemVisualAid' + }, ed.selection.getContent() || ed.getLang('layer.content')); + }, + + _toggleAbsolute : function() { + var ed = this.editor, le = this._getParentLayer(ed.selection.getNode()); + + if (!le) + le = ed.dom.getParent(ed.selection.getNode(), 'DIV,P,IMG'); + + if (le) { + if (le.style.position.toLowerCase() == "absolute") { + ed.dom.setStyles(le, { + position : '', + left : '', + top : '', + width : '', + height : '' + }); + + ed.dom.removeClass(le, 'mceItemVisualAid'); + } else { + if (le.style.left == "") + le.style.left = 20 + 'px'; + + if (le.style.top == "") + le.style.top = 20 + 'px'; + + if (le.style.width == "") + le.style.width = le.width ? (le.width + 'px') : '100px'; + + if (le.style.height == "") + le.style.height = le.height ? (le.height + 'px') : '100px'; + + le.style.position = "absolute"; + ed.addVisual(ed.getBody()); + } + + ed.execCommand('mceRepaint'); + ed.nodeChanged(); + } + } + }); + + // Register plugin + tinymce.PluginManager.add('layer', tinymce.plugins.Layer); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js new file mode 100644 index 0000000..f88a6dd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Layer",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceInsertLayer",c._insertLayer,c);a.addCommand("mceMoveForward",function(){c._move(1)});a.addCommand("mceMoveBackward",function(){c._move(-1)});a.addCommand("mceMakeAbsolute",function(){c._toggleAbsolute()});a.addButton("moveforward",{title:"layer.forward_desc",cmd:"mceMoveForward"});a.addButton("movebackward",{title:"layer.backward_desc",cmd:"mceMoveBackward"});a.addButton("absolute",{title:"layer.absolute_desc",cmd:"mceMakeAbsolute"});a.addButton("insertlayer",{title:"layer.insertlayer_desc",cmd:"mceInsertLayer"});a.onInit.add(function(){if(tinymce.isIE){a.getDoc().execCommand("2D-Position",false,true)}});a.onNodeChange.add(c._nodeChange,c);a.onVisualAid.add(c._visualAid,c)},getInfo:function(){return{longname:"Layer",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/layer",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,e){var c,d;c=this._getParentLayer(e);d=b.dom.getParent(e,"DIV,P,IMG");if(!d){a.setDisabled("absolute",1);a.setDisabled("moveforward",1);a.setDisabled("movebackward",1)}else{a.setDisabled("absolute",0);a.setDisabled("moveforward",!c);a.setDisabled("movebackward",!c);a.setActive("absolute",c&&c.style.position.toLowerCase()=="absolute")}},_visualAid:function(a,c,b){var d=a.dom;tinymce.each(d.select("div,p",c),function(f){if(/^(absolute|relative|static)$/i.test(f.style.position)){if(b){d.addClass(f,"mceItemVisualAid")}else{d.removeClass(f,"mceItemVisualAid")}}})},_move:function(h){var b=this.editor,f,g=[],e=this._getParentLayer(b.selection.getNode()),c=-1,j=-1,a;a=[];tinymce.walk(b.getBody(),function(d){if(d.nodeType==1&&/^(absolute|relative|static)$/i.test(d.style.position)){a.push(d)}},"childNodes");for(f=0;f-1){a[c].style.zIndex=g[j];a[j].style.zIndex=g[c]}else{if(g[c]>0){a[c].style.zIndex=g[c]-1}}}else{for(f=0;fg[c]){j=f;break}}if(j>-1){a[c].style.zIndex=g[j];a[j].style.zIndex=g[c]}else{a[c].style.zIndex=g[c]+1}}b.execCommand("mceRepaint")},_getParentLayer:function(a){return this.editor.dom.getParent(a,function(b){return b.nodeType==1&&/^(absolute|relative|static)$/i.test(b.style.position)})},_insertLayer:function(){var a=this.editor,b=a.dom.getPos(a.dom.getParent(a.selection.getNode(),"*"));a.dom.add(a.getBody(),"div",{style:{position:"absolute",left:b.x,top:(b.y>20?b.y:20),width:100,height:100},"class":"mceItemVisualAid"},a.selection.getContent()||a.getLang("layer.content"))},_toggleAbsolute:function(){var a=this.editor,b=this._getParentLayer(a.selection.getNode());if(!b){b=a.dom.getParent(a.selection.getNode(),"DIV,P,IMG")}if(b){if(b.style.position.toLowerCase()=="absolute"){a.dom.setStyles(b,{position:"",left:"",top:"",width:"",height:""});a.dom.removeClass(b,"mceItemVisualAid")}else{if(b.style.left==""){b.style.left=20+"px"}if(b.style.top==""){b.style.top=20+"px"}if(b.style.width==""){b.style.width=b.width?(b.width+"px"):"100px"}if(b.style.height==""){b.style.height=b.height?(b.height+"px"):"100px"}b.style.position="absolute";a.addVisual(a.getBody())}a.execCommand("mceRepaint");a.nodeChanged()}}});tinymce.PluginManager.add("layer",tinymce.plugins.Layer)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js new file mode 100644 index 0000000..d5aa865 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js @@ -0,0 +1,212 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Layer', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceInsertLayer', t._insertLayer, t); + + ed.addCommand('mceMoveForward', function() { + t._move(1); + }); + + ed.addCommand('mceMoveBackward', function() { + t._move(-1); + }); + + ed.addCommand('mceMakeAbsolute', function() { + t._toggleAbsolute(); + }); + + // Register buttons + ed.addButton('moveforward', {title : 'layer.forward_desc', cmd : 'mceMoveForward'}); + ed.addButton('movebackward', {title : 'layer.backward_desc', cmd : 'mceMoveBackward'}); + ed.addButton('absolute', {title : 'layer.absolute_desc', cmd : 'mceMakeAbsolute'}); + ed.addButton('insertlayer', {title : 'layer.insertlayer_desc', cmd : 'mceInsertLayer'}); + + ed.onInit.add(function() { + if (tinymce.isIE) + ed.getDoc().execCommand('2D-Position', false, true); + }); + + ed.onNodeChange.add(t._nodeChange, t); + ed.onVisualAid.add(t._visualAid, t); + }, + + getInfo : function() { + return { + longname : 'Layer', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/layer', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + _nodeChange : function(ed, cm, n) { + var le, p; + + le = this._getParentLayer(n); + p = ed.dom.getParent(n, 'DIV,P,IMG'); + + if (!p) { + cm.setDisabled('absolute', 1); + cm.setDisabled('moveforward', 1); + cm.setDisabled('movebackward', 1); + } else { + cm.setDisabled('absolute', 0); + cm.setDisabled('moveforward', !le); + cm.setDisabled('movebackward', !le); + cm.setActive('absolute', le && le.style.position.toLowerCase() == "absolute"); + } + }, + + // Private methods + + _visualAid : function(ed, e, s) { + var dom = ed.dom; + + tinymce.each(dom.select('div,p', e), function(e) { + if (/^(absolute|relative|static)$/i.test(e.style.position)) { + if (s) + dom.addClass(e, 'mceItemVisualAid'); + else + dom.removeClass(e, 'mceItemVisualAid'); + } + }); + }, + + _move : function(d) { + var ed = this.editor, i, z = [], le = this._getParentLayer(ed.selection.getNode()), ci = -1, fi = -1, nl; + + nl = []; + tinymce.walk(ed.getBody(), function(n) { + if (n.nodeType == 1 && /^(absolute|relative|static)$/i.test(n.style.position)) + nl.push(n); + }, 'childNodes'); + + // Find z-indexes + for (i=0; i -1) { + nl[ci].style.zIndex = z[fi]; + nl[fi].style.zIndex = z[ci]; + } else { + if (z[ci] > 0) + nl[ci].style.zIndex = z[ci] - 1; + } + } else { + // Move forward + + // Try find a higher one + for (i=0; i z[ci]) { + fi = i; + break; + } + } + + if (fi > -1) { + nl[ci].style.zIndex = z[fi]; + nl[fi].style.zIndex = z[ci]; + } else + nl[ci].style.zIndex = z[ci] + 1; + } + + ed.execCommand('mceRepaint'); + }, + + _getParentLayer : function(n) { + return this.editor.dom.getParent(n, function(n) { + return n.nodeType == 1 && /^(absolute|relative|static)$/i.test(n.style.position); + }); + }, + + _insertLayer : function() { + var ed = this.editor, p = ed.dom.getPos(ed.dom.getParent(ed.selection.getNode(), '*')); + + ed.dom.add(ed.getBody(), 'div', { + style : { + position : 'absolute', + left : p.x, + top : (p.y > 20 ? p.y : 20), + width : 100, + height : 100 + }, + 'class' : 'mceItemVisualAid' + }, ed.selection.getContent() || ed.getLang('layer.content')); + }, + + _toggleAbsolute : function() { + var ed = this.editor, le = this._getParentLayer(ed.selection.getNode()); + + if (!le) + le = ed.dom.getParent(ed.selection.getNode(), 'DIV,P,IMG'); + + if (le) { + if (le.style.position.toLowerCase() == "absolute") { + ed.dom.setStyles(le, { + position : '', + left : '', + top : '', + width : '', + height : '' + }); + + ed.dom.removeClass(le, 'mceItemVisualAid'); + } else { + if (le.style.left == "") + le.style.left = 20 + 'px'; + + if (le.style.top == "") + le.style.top = 20 + 'px'; + + if (le.style.width == "") + le.style.width = le.width ? (le.width + 'px') : '100px'; + + if (le.style.height == "") + le.style.height = le.height ? (le.height + 'px') : '100px'; + + le.style.position = "absolute"; + ed.addVisual(ed.getBody()); + } + + ed.execCommand('mceRepaint'); + ed.nodeChanged(); + } + } + }); + + // Register plugin + tinymce.PluginManager.add('layer', tinymce.plugins.Layer); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/all-wcprops new file mode 100644 index 0000000..e630733 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/legacyoutput +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/entries new file mode 100644 index 0000000..d29e002 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/legacyoutput +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.832280Z +bbda0f084259f6bf33a384901fd31fb6 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1777 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.832280Z +323302bd65c185630c42f7e15e9a3ea2 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4791 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..33618e8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(a){a.onAddEditor.addToTop(function(c,b){b.settings.inline_styles=false});a.create("tinymce.plugins.LegacyOutput",{init:function(b){b.onInit.add(function(){var c="p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img",e=a.explode(b.settings.font_size_style_values),d=b.serializer;b.formatter.register({alignleft:{selector:c,attributes:{align:"left"}},aligncenter:{selector:c,attributes:{align:"center"}},alignright:{selector:c,attributes:{align:"right"}},alignfull:{selector:c,attributes:{align:"full"}},bold:{inline:"b"},italic:{inline:"i"},underline:{inline:"u"},strikethrough:{inline:"strike"},fontname:{inline:"font",attributes:{face:"%value"}},fontsize:{inline:"font",attributes:{size:function(f){return a.inArray(e,f.value)+1}}},forecolor:{inline:"font",styles:{color:"%value"}},hilitecolor:{inline:"font",styles:{backgroundColor:"%value"}},});d._setup();a.each("b,i,u,strike".split(","),function(f){var g=d.rules[f];if(!g){d.addRules(f)}});if(!d.rules.font){d.addRules("font[face|size|color|style]")}a.each(c.split(","),function(f){var h=d.rules[f],g;if(h){a.each(h.attribs,function(j,i){if(i.name=="align"){g=true;return false}});if(!g){h.attribs.push({name:"align"})}}});b.onNodeChange.add(function(g,k){var j,f,h,i;f=g.dom.getParent(g.selection.getNode(),"font");if(f){h=f.face;i=f.size}if(j=k.get("fontselect")){j.select(function(l){return l==h})}if(j=k.get("fontsizeselect")){j.select(function(m){var l=a.inArray(e,m.fontSize);return l+1==i})}})})},getInfo:function(){return{longname:"LegacyOutput",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/legacyoutput",version:a.majorVersion+"."+a.minorVersion}}});a.PluginManager.add("legacyoutput",a.plugins.LegacyOutput)})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..3673a4d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,136 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + * + * This plugin will force TinyMCE to produce deprecated legacy output such as font elements, u elements, align + * attributes and so forth. There are a few cases where these old items might be needed for example in email applications or with Flash + * + * However you should NOT use this plugin if you are building some system that produces web contents such as a CMS. All these elements are + * not apart of the newer specifications for HTML and XHTML. + */ + +(function(tinymce) { + // Override inline_styles setting to force TinyMCE to produce deprecated contents + tinymce.onAddEditor.addToTop(function(tinymce, editor) { + editor.settings.inline_styles = false; + }); + + // Create the legacy ouput plugin + tinymce.create('tinymce.plugins.LegacyOutput', { + init : function(editor) { + editor.onInit.add(function() { + var alignElements = 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', + fontSizes = tinymce.explode(editor.settings.font_size_style_values), + serializer = editor.serializer; + + // Override some internal formats to produce legacy elements and attributes + editor.formatter.register({ + // Change alignment formats to use the deprecated align attribute + alignleft : {selector : alignElements, attributes : {align : 'left'}}, + aligncenter : {selector : alignElements, attributes : {align : 'center'}}, + alignright : {selector : alignElements, attributes : {align : 'right'}}, + alignfull : {selector : alignElements, attributes : {align : 'full'}}, + + // Change the basic formatting elements to use deprecated element types + bold : {inline : 'b'}, + italic : {inline : 'i'}, + underline : {inline : 'u'}, + strikethrough : {inline : 'strike'}, + + // Change font size and font family to use the deprecated font element + fontname : {inline : 'font', attributes : {face : '%value'}}, + fontsize : { + inline : 'font', + attributes : { + size : function(vars) { + return tinymce.inArray(fontSizes, vars.value) + 1; + } + } + }, + + // Setup font elements for colors as well + forecolor : {inline : 'font', styles : {color : '%value'}}, + hilitecolor : {inline : 'font', styles : {backgroundColor : '%value'}}, + }); + + // Force parsing of the serializer rules + serializer._setup(); + + // Check that deprecated elements are allowed if not add them + tinymce.each('b,i,u,strike'.split(','), function(name) { + var rule = serializer.rules[name]; + + if (!rule) + serializer.addRules(name); + }); + + // Add font element if it's missing + if (!serializer.rules["font"]) + serializer.addRules("font[face|size|color|style]"); + + // Add the missing and depreacted align attribute for the serialization engine + tinymce.each(alignElements.split(','), function(name) { + var rule = serializer.rules[name], found; + + if (rule) { + tinymce.each(rule.attribs, function(name, attr) { + if (attr.name == 'align') { + found = true; + return false; + } + }); + + if (!found) + rule.attribs.push({name : 'align'}); + } + }); + + // Listen for the onNodeChange event so that we can do special logic for the font size and font name drop boxes + editor.onNodeChange.add(function(editor, control_manager) { + var control, fontElm, fontName, fontSize; + + // Find font element get it's name and size + fontElm = editor.dom.getParent(editor.selection.getNode(), 'font'); + if (fontElm) { + fontName = fontElm.face; + fontSize = fontElm.size; + } + + // Select/unselect the font name in droplist + if (control = control_manager.get('fontselect')) { + control.select(function(value) { + return value == fontName; + }); + } + + // Select/unselect the font size in droplist + if (control = control_manager.get('fontsizeselect')) { + control.select(function(value) { + var index = tinymce.inArray(fontSizes, value.fontSize); + + return index + 1 == fontSize; + }); + } + }); + }); + }, + + getInfo : function() { + return { + longname : 'LegacyOutput', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/legacyoutput', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('legacyoutput', tinymce.plugins.LegacyOutput); +})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js new file mode 100644 index 0000000..33618e8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js @@ -0,0 +1 @@ +(function(a){a.onAddEditor.addToTop(function(c,b){b.settings.inline_styles=false});a.create("tinymce.plugins.LegacyOutput",{init:function(b){b.onInit.add(function(){var c="p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img",e=a.explode(b.settings.font_size_style_values),d=b.serializer;b.formatter.register({alignleft:{selector:c,attributes:{align:"left"}},aligncenter:{selector:c,attributes:{align:"center"}},alignright:{selector:c,attributes:{align:"right"}},alignfull:{selector:c,attributes:{align:"full"}},bold:{inline:"b"},italic:{inline:"i"},underline:{inline:"u"},strikethrough:{inline:"strike"},fontname:{inline:"font",attributes:{face:"%value"}},fontsize:{inline:"font",attributes:{size:function(f){return a.inArray(e,f.value)+1}}},forecolor:{inline:"font",styles:{color:"%value"}},hilitecolor:{inline:"font",styles:{backgroundColor:"%value"}},});d._setup();a.each("b,i,u,strike".split(","),function(f){var g=d.rules[f];if(!g){d.addRules(f)}});if(!d.rules.font){d.addRules("font[face|size|color|style]")}a.each(c.split(","),function(f){var h=d.rules[f],g;if(h){a.each(h.attribs,function(j,i){if(i.name=="align"){g=true;return false}});if(!g){h.attribs.push({name:"align"})}}});b.onNodeChange.add(function(g,k){var j,f,h,i;f=g.dom.getParent(g.selection.getNode(),"font");if(f){h=f.face;i=f.size}if(j=k.get("fontselect")){j.select(function(l){return l==h})}if(j=k.get("fontsizeselect")){j.select(function(m){var l=a.inArray(e,m.fontSize);return l+1==i})}})})},getInfo:function(){return{longname:"LegacyOutput",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/legacyoutput",version:a.majorVersion+"."+a.minorVersion}}});a.PluginManager.add("legacyoutput",a.plugins.LegacyOutput)})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js new file mode 100644 index 0000000..3673a4d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js @@ -0,0 +1,136 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + * + * This plugin will force TinyMCE to produce deprecated legacy output such as font elements, u elements, align + * attributes and so forth. There are a few cases where these old items might be needed for example in email applications or with Flash + * + * However you should NOT use this plugin if you are building some system that produces web contents such as a CMS. All these elements are + * not apart of the newer specifications for HTML and XHTML. + */ + +(function(tinymce) { + // Override inline_styles setting to force TinyMCE to produce deprecated contents + tinymce.onAddEditor.addToTop(function(tinymce, editor) { + editor.settings.inline_styles = false; + }); + + // Create the legacy ouput plugin + tinymce.create('tinymce.plugins.LegacyOutput', { + init : function(editor) { + editor.onInit.add(function() { + var alignElements = 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', + fontSizes = tinymce.explode(editor.settings.font_size_style_values), + serializer = editor.serializer; + + // Override some internal formats to produce legacy elements and attributes + editor.formatter.register({ + // Change alignment formats to use the deprecated align attribute + alignleft : {selector : alignElements, attributes : {align : 'left'}}, + aligncenter : {selector : alignElements, attributes : {align : 'center'}}, + alignright : {selector : alignElements, attributes : {align : 'right'}}, + alignfull : {selector : alignElements, attributes : {align : 'full'}}, + + // Change the basic formatting elements to use deprecated element types + bold : {inline : 'b'}, + italic : {inline : 'i'}, + underline : {inline : 'u'}, + strikethrough : {inline : 'strike'}, + + // Change font size and font family to use the deprecated font element + fontname : {inline : 'font', attributes : {face : '%value'}}, + fontsize : { + inline : 'font', + attributes : { + size : function(vars) { + return tinymce.inArray(fontSizes, vars.value) + 1; + } + } + }, + + // Setup font elements for colors as well + forecolor : {inline : 'font', styles : {color : '%value'}}, + hilitecolor : {inline : 'font', styles : {backgroundColor : '%value'}}, + }); + + // Force parsing of the serializer rules + serializer._setup(); + + // Check that deprecated elements are allowed if not add them + tinymce.each('b,i,u,strike'.split(','), function(name) { + var rule = serializer.rules[name]; + + if (!rule) + serializer.addRules(name); + }); + + // Add font element if it's missing + if (!serializer.rules["font"]) + serializer.addRules("font[face|size|color|style]"); + + // Add the missing and depreacted align attribute for the serialization engine + tinymce.each(alignElements.split(','), function(name) { + var rule = serializer.rules[name], found; + + if (rule) { + tinymce.each(rule.attribs, function(name, attr) { + if (attr.name == 'align') { + found = true; + return false; + } + }); + + if (!found) + rule.attribs.push({name : 'align'}); + } + }); + + // Listen for the onNodeChange event so that we can do special logic for the font size and font name drop boxes + editor.onNodeChange.add(function(editor, control_manager) { + var control, fontElm, fontName, fontSize; + + // Find font element get it's name and size + fontElm = editor.dom.getParent(editor.selection.getNode(), 'font'); + if (fontElm) { + fontName = fontElm.face; + fontSize = fontElm.size; + } + + // Select/unselect the font name in droplist + if (control = control_manager.get('fontselect')) { + control.select(function(value) { + return value == fontName; + }); + } + + // Select/unselect the font size in droplist + if (control = control_manager.get('fontsizeselect')) { + control.select(function(value) { + var index = tinymce.inArray(fontSizes, value.fontSize); + + return index + 1 == fontSize; + }); + } + }); + }); + }, + + getInfo : function() { + return { + longname : 'LegacyOutput', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/legacyoutput', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('legacyoutput', tinymce.plugins.LegacyOutput); +})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/all-wcprops new file mode 100644 index 0000000..6e427c0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js +END +media.htm +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/media.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/entries new file mode 100644 index 0000000..e77a55b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/entries @@ -0,0 +1,142 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media +http://django-grappelli.googlecode.com/svn + + + +2010-05-27T14:09:40.573569Z +1045 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.291875Z +cc1e9577e0a46c1376109ac29a2147e1 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +7932 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.295635Z +52190219f725f73255286fd827725821 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +10786 + +media.htm +file + + + + +2010-06-04T12:51:44.295635Z +24a44496921137cca16d44f519418ea2 +2010-05-27T14:09:40.573569Z +1045 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +41253 + +css +dir + +img +dir + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/media.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/media.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/prop-base/media.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..3c9aee9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var each=tinymce.each;tinymce.create('tinymce.plugins.MediaPlugin',{init:function(ed,url){var t=this;t.editor=ed;t.url=url;function isMediaElm(n){return/^(mceItemFlash|mceItemShockWave|mceItemWindowsMedia|mceItemQuickTime|mceItemRealMedia)$/.test(n.className);};ed.onPreInit.add(function(){ed.serializer.addRules('param[name|value|_value]');});ed.addCommand('mceMedia',function(){ed.windowManager.open({file:url+'/media.htm',width:480+parseInt(ed.getLang('media.delta_width',0)),height:770+parseInt(ed.getLang('media.delta_height',0)),inline:1},{plugin_url:url});});ed.addButton('media',{title:'media.desc',cmd:'mceMedia'});ed.onNodeChange.add(function(ed,cm,n){cm.setActive('media',n.nodeName=='IMG'&&isMediaElm(n));});ed.onInit.add(function(){var lo={mceItemFlash:'flash',mceItemShockWave:'shockwave',mceItemWindowsMedia:'windowsmedia',mceItemQuickTime:'quicktime',mceItemRealMedia:'realmedia'};ed.selection.onSetContent.add(function(){t._spansToImgs(ed.getBody());});ed.selection.onBeforeSetContent.add(t._objectsToSpans,t);if(ed.settings.content_css!==false)ed.dom.loadCSS(url+"/css/content.css");if(ed.theme.onResolveName){ed.theme.onResolveName.add(function(th,o){if(o.name=='img'){each(lo,function(v,k){if(ed.dom.hasClass(o.node,k)){o.name=v;o.title=ed.dom.getAttrib(o.node,'title');return false;}});}});}if(ed&&ed.plugins.contextmenu){ed.plugins.contextmenu.onContextMenu.add(function(th,m,e){if(e.nodeName=='IMG'&&/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(e.className)){m.add({title:'media.edit',icon:'media',cmd:'mceMedia'});}});}});ed.onBeforeSetContent.add(t._objectsToSpans,t);ed.onSetContent.add(function(){t._spansToImgs(ed.getBody());});ed.onPreProcess.add(function(ed,o){var dom=ed.dom;if(o.set){t._spansToImgs(o.node);each(dom.select('IMG',o.node),function(n){var p;if(isMediaElm(n)){p=t._parse(n.title);dom.setAttrib(n,'width',dom.getAttrib(n,'width',p.width||100));dom.setAttrib(n,'height',dom.getAttrib(n,'height',p.height||100));}});}if(o.get){each(dom.select('IMG',o.node),function(n){var ci,cb,mt;if(ed.getParam('media_use_script')){if(isMediaElm(n))n.className=n.className.replace(/mceItem/g,'mceTemp');return;}switch(n.className){case'mceItemFlash':ci='d27cdb6e-ae6d-11cf-96b8-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';mt='application/x-shockwave-flash';break;case'mceItemShockWave':ci='166b1bca-3f9c-11cf-8075-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0';mt='application/x-director';break;case'mceItemWindowsMedia':ci=ed.getParam('media_wmp6_compatible')?'05589fa1-c356-11ce-bf01-00aa0055595a':'6bf52a52-394a-11d3-b153-00c04f79faa6';cb='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701';mt='application/x-mplayer2';break;case'mceItemQuickTime':ci='02bf25d5-8c17-4b23-bc80-d3488abddc6b';cb='http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0';mt='video/quicktime';break;case'mceItemRealMedia':ci='cfcdaa03-8be4-11cf-b84b-0020afbbccfa';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';mt='audio/x-pn-realaudio-plugin';break;}if(ci){dom.replace(t._buildObj({classid:ci,codebase:cb,type:mt},n),n);}});}});ed.onPostProcess.add(function(ed,o){o.content=o.content.replace(/_value=/g,'value=');});if(ed.getParam('media_use_script')){function getAttr(s,n){n=new RegExp(n+'=\"([^\"]+)\"','g').exec(s);return n?ed.dom.decode(n[1]):'';};ed.onPostProcess.add(function(ed,o){o.content=o.content.replace(/]+>/g,function(im){var cl=getAttr(im,'class');if(/^(mceTempFlash|mceTempShockWave|mceTempWindowsMedia|mceTempQuickTime|mceTempRealMedia)$/.test(cl)){at=t._parse(getAttr(im,'title'));at.width=getAttr(im,'width');at.height=getAttr(im,'height');im='';}return im;});});}},getInfo:function(){return{longname:'Media',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media',version:tinymce.majorVersion+"."+tinymce.minorVersion};},_objectsToSpans:function(ed,o){var t=this,h=o.content;h=h.replace(/]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi,function(a,b,c){var o=t._parse(c);return''});h=h.replace(/]*)>/gi,'');h=h.replace(/]*)\/?>/gi,'');h=h.replace(/]*)>/gi,'');h=h.replace(/<\/(object)([^>]*)>/gi,'');h=h.replace(/<\/embed>/gi,'');h=h.replace(/]*)>/gi,function(a,b){return''});h=h.replace(/\/ class=\"mceItemParam\"><\/span>/gi,'class="mceItemParam">');o.content=h;},_buildObj:function(o,n){var ob,ed=this.editor,dom=ed.dom,p=this._parse(n.title);p.width=o.width=dom.getAttrib(n,'width')||100;p.height=o.height=dom.getAttrib(n,'height')||100;ob=dom.create('span',{mce_name:'object',classid:"clsid:"+o.classid,codebase:o.codebase,width:o.width,height:o.height});if(p.src)p.src=ed.convertURL(p.src,'src',n);each(p,function(v,k){if(!/^(width|height|codebase|classid|_cx|_cy)$/.test(k)){if(o.type=='application/x-mplayer2'&&k=='src')k='url';if(v)dom.add(ob,'span',{mce_name:'param',name:k,'_value':v});}});dom.add(ob,'span',tinymce.extend({mce_name:'embed',type:o.type},p));return ob;},_spansToImgs:function(p){var t=this,dom=t.editor.dom,im,ci;each(dom.select('span',p),function(n){if(dom.getAttrib(n,'class')=='mceItemObject'){ci=dom.getAttrib(n,"classid").toLowerCase().replace(/\s+/g,'');switch(ci){case'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000':dom.replace(t._createImg('mceItemFlash',n),n);break;case'clsid:166b1bca-3f9c-11cf-8075-444553540000':dom.replace(t._createImg('mceItemShockWave',n),n);break;case'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6':case'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95':case'clsid:05589fa1-c356-11ce-bf01-00aa0055595a':dom.replace(t._createImg('mceItemWindowsMedia',n),n);break;case'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b':dom.replace(t._createImg('mceItemQuickTime',n),n);break;case'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa':dom.replace(t._createImg('mceItemRealMedia',n),n);break;default:dom.replace(t._createImg('mceItemFlash',n),n);}return;}if(dom.getAttrib(n,'class')=='mceItemEmbed'){switch(dom.getAttrib(n,'type')){case'application/x-shockwave-flash':dom.replace(t._createImg('mceItemFlash',n),n);break;case'application/x-director':dom.replace(t._createImg('mceItemShockWave',n),n);break;case'application/x-mplayer2':dom.replace(t._createImg('mceItemWindowsMedia',n),n);break;case'video/quicktime':dom.replace(t._createImg('mceItemQuickTime',n),n);break;case'audio/x-pn-realaudio-plugin':dom.replace(t._createImg('mceItemRealMedia',n),n);break;default:dom.replace(t._createImg('mceItemFlash',n),n);}}});},_createImg:function(cl,n){var im,dom=this.editor.dom,pa={},ti='';im=dom.create('img',{src:this.url+'/img/trans.gif',width:dom.getAttrib(n,'width')||100,height:dom.getAttrib(n,'height')||100,'class':cl});each(['id','name','width','height','bgcolor','align','flashvars','src','wmode','allowfullscreen','quality'],function(na){var v=dom.getAttrib(n,na);if(v)pa[na]=v;});each(dom.select('span',n),function(n){if(dom.hasClass(n,'mceItemParam'))pa[dom.getAttrib(n,'name')]=dom.getAttrib(n,'_value');});if(pa.movie){pa.src=pa.movie;delete pa.movie;}delete pa.width;delete pa.height;im.title=this._serialize(pa);return im;},_parse:function(s){return tinymce.util.JSON.parse('{'+s+'}');},_serialize:function(o){return tinymce.util.JSON.serialize(o).replace(/[{}]/g,'');}});tinymce.PluginManager.add('media',tinymce.plugins.MediaPlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..8042b99 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,374 @@ +/** + * $Id: editor_plugin_src.js 906 2008-08-24 16:47:29Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.MediaPlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + t.url = url; + + function isMediaElm(n) { + return /^(mceItemFlash|mceItemShockWave|mceItemWindowsMedia|mceItemQuickTime|mceItemRealMedia)$/.test(n.className); + }; + + ed.onPreInit.add(function() { + // Force in _value parameter this extra parameter is required for older Opera versions + ed.serializer.addRules('param[name|value|_value]'); + }); + + // Register commands + ed.addCommand('mceMedia', function() { + ed.windowManager.open({ + file : url + '/media.htm', + width : 430 + parseInt(ed.getLang('media.delta_width', 0)), + height : 470 + parseInt(ed.getLang('media.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('media', {title : 'media.desc', cmd : 'mceMedia'}); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('media', n.nodeName == 'IMG' && isMediaElm(n)); + }); + + ed.onInit.add(function() { + var lo = { + mceItemFlash : 'flash', + mceItemShockWave : 'shockwave', + mceItemWindowsMedia : 'windowsmedia', + mceItemQuickTime : 'quicktime', + mceItemRealMedia : 'realmedia' + }; + + ed.selection.onSetContent.add(function() { + t._spansToImgs(ed.getBody()); + }); + + ed.selection.onBeforeSetContent.add(t._objectsToSpans, t); + + if (ed.settings.content_css !== false) + ed.dom.loadCSS(url + "/css/content.css"); + + if (ed.theme.onResolveName) { + ed.theme.onResolveName.add(function(th, o) { + if (o.name == 'img') { + each(lo, function(v, k) { + if (ed.dom.hasClass(o.node, k)) { + o.name = v; + o.title = ed.dom.getAttrib(o.node, 'title'); + return false; + } + }); + } + }); + } + + if (ed && ed.plugins.contextmenu) { + ed.plugins.contextmenu.onContextMenu.add(function(th, m, e) { + if (e.nodeName == 'IMG' && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(e.className)) { + m.add({title : 'media.edit', icon : 'media', cmd : 'mceMedia'}); + } + }); + } + }); + + ed.onBeforeSetContent.add(t._objectsToSpans, t); + + ed.onSetContent.add(function() { + t._spansToImgs(ed.getBody()); + }); + + ed.onPreProcess.add(function(ed, o) { + var dom = ed.dom; + + if (o.set) { + t._spansToImgs(o.node); + + each(dom.select('IMG', o.node), function(n) { + var p; + + if (isMediaElm(n)) { + p = t._parse(n.title); + dom.setAttrib(n, 'width', dom.getAttrib(n, 'width', p.width || 100)); + dom.setAttrib(n, 'height', dom.getAttrib(n, 'height', p.height || 100)); + } + }); + } + + if (o.get) { + each(dom.select('IMG', o.node), function(n) { + var ci, cb, mt; + + if (ed.getParam('media_use_script')) { + if (isMediaElm(n)) + n.className = n.className.replace(/mceItem/g, 'mceTemp'); + + return; + } + + switch (n.className) { + case 'mceItemFlash': + ci = 'd27cdb6e-ae6d-11cf-96b8-444553540000'; + cb = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + mt = 'application/x-shockwave-flash'; + break; + + case 'mceItemShockWave': + ci = '166b1bca-3f9c-11cf-8075-444553540000'; + cb = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0'; + mt = 'application/x-director'; + break; + + case 'mceItemWindowsMedia': + ci = ed.getParam('media_wmp6_compatible') ? '05589fa1-c356-11ce-bf01-00aa0055595a' : '6bf52a52-394a-11d3-b153-00c04f79faa6'; + cb = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + mt = 'application/x-mplayer2'; + break; + + case 'mceItemQuickTime': + ci = '02bf25d5-8c17-4b23-bc80-d3488abddc6b'; + cb = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0'; + mt = 'video/quicktime'; + break; + + case 'mceItemRealMedia': + ci = 'cfcdaa03-8be4-11cf-b84b-0020afbbccfa'; + cb = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + mt = 'audio/x-pn-realaudio-plugin'; + break; + } + + if (ci) { + dom.replace(t._buildObj({ + classid : ci, + codebase : cb, + type : mt + }, n), n); + } + }); + } + }); + + ed.onPostProcess.add(function(ed, o) { + o.content = o.content.replace(/_value=/g, 'value='); + }); + + if (ed.getParam('media_use_script')) { + function getAttr(s, n) { + n = new RegExp(n + '=\"([^\"]+)\"', 'g').exec(s); + + return n ? ed.dom.decode(n[1]) : ''; + }; + + ed.onPostProcess.add(function(ed, o) { + o.content = o.content.replace(/]+>/g, function(im) { + var cl = getAttr(im, 'class'); + + if (/^(mceTempFlash|mceTempShockWave|mceTempWindowsMedia|mceTempQuickTime|mceTempRealMedia)$/.test(cl)) { + at = t._parse(getAttr(im, 'title')); + at.width = getAttr(im, 'width'); + at.height = getAttr(im, 'height'); + im = ''; + } + + return im; + }); + }); + } + }, + + getInfo : function() { + return { + longname : 'Media', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + _objectsToSpans : function(ed, o) { + var t = this, h = o.content; + + h = h.replace(/]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi, function(a, b, c) { + var o = t._parse(c); + + return '' + }); + + h = h.replace(/]*)>/gi, ''); + h = h.replace(/]*)\/?>/gi, ''); + h = h.replace(/]*)>/gi, ''); + h = h.replace(/<\/(object)([^>]*)>/gi, ''); + h = h.replace(/<\/embed>/gi, ''); + h = h.replace(/]*)>/gi, function(a, b) {return ''}); + h = h.replace(/\/ class=\"mceItemParam\"><\/span>/gi, 'class="mceItemParam">'); + + o.content = h; + }, + + _buildObj : function(o, n) { + var ob, ed = this.editor, dom = ed.dom, p = this._parse(n.title); + + p.width = o.width = dom.getAttrib(n, 'width') || 100; + p.height = o.height = dom.getAttrib(n, 'height') || 100; + + ob = dom.create('span', { + mce_name : 'object', + classid : "clsid:" + o.classid, + codebase : o.codebase, + width : o.width, + height : o.height + }); + + if (p.src) + p.src = ed.convertURL(p.src, 'src', n); + + each (p, function(v, k) { + if (!/^(width|height|codebase|classid|_cx|_cy)$/.test(k)) { + // Use url instead of src in IE for Windows media + if (o.type == 'application/x-mplayer2' && k == 'src') + k = 'url'; + + if (v) + dom.add(ob, 'span', {mce_name : 'param', name : k, '_value' : v}); + } + }); + + dom.add(ob, 'span', tinymce.extend({mce_name : 'embed', type : o.type}, p)); + + return ob; + }, + + _spansToImgs : function(p) { + var t = this, dom = t.editor.dom, im, ci; + + each(dom.select('span', p), function(n) { + // Convert object into image + if (dom.getAttrib(n, 'class') == 'mceItemObject') { + ci = dom.getAttrib(n, "classid").toLowerCase().replace(/\s+/g, ''); + + switch (ci) { + case 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'clsid:166b1bca-3f9c-11cf-8075-444553540000': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6': + case 'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95': + case 'clsid:05589fa1-c356-11ce-bf01-00aa0055595a': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + + return; + } + + // Convert embed into image + if (dom.getAttrib(n, 'class') == 'mceItemEmbed') { + switch (dom.getAttrib(n, 'type')) { + case 'application/x-shockwave-flash': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'application/x-director': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'application/x-mplayer2': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'video/quicktime': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'audio/x-pn-realaudio-plugin': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + } + }); + }, + + _createImg : function(cl, n) { + var im, dom = this.editor.dom, pa = {}, ti = ''; + + // Create image + im = dom.create('img', { + src : this.url + '/img/trans.gif', + width : dom.getAttrib(n, 'width') || 100, + height : dom.getAttrib(n, 'height') || 100, + 'class' : cl + }); + + // Setup base parameters + each(['id', 'name', 'width', 'height', 'bgcolor', 'align', 'flashvars', 'src', 'wmode', 'allowfullscreen', 'quality'], function(na) { + var v = dom.getAttrib(n, na); + + if (v) + pa[na] = v; + }); + + // Add optional parameters + each(dom.select('span', n), function(n) { + if (dom.hasClass(n, 'mceItemParam')) + pa[dom.getAttrib(n, 'name')] = dom.getAttrib(n, '_value'); + }); + + // Use src not movie + if (pa.movie) { + pa.src = pa.movie; + delete pa.movie; + } + + delete pa.width; + delete pa.height; + + im.title = this._serialize(pa); + + return im; + }, + + _parse : function(s) { + return tinymce.util.JSON.parse('{' + s + '}'); + }, + + _serialize : function(o) { + return tinymce.util.JSON.serialize(o).replace(/[{}]/g, ''); + } + }); + + // Register plugin + tinymce.PluginManager.add('media', tinymce.plugins.MediaPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/media.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/media.htm.svn-base new file mode 100644 index 0000000..2835b62 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/.svn/text-base/media.htm.svn-base @@ -0,0 +1,636 @@ + + + + {#media_dlg.title} + + + + + + + + + + +
+ +
+
+
+ {#media_dlg.general} +
+
+
+ +
+
+
+
+
+ +
 
+
+
+
+
+
 
+
+
+
+
+ x + px +

+ + +

+
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+ {#media_dlg.advanced} +
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+ + +
+
+
+
+
+
+
+
+
+
+

+ +
+
+

{#media_dlg.flash_options}

+ {#media_dlg.flash_options} +
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ +
+

{#media_dlg.flv_options}

+ {#media_dlg.flv_options} +
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ +
+

{#media_dlg.qt_options}

+ {#media_dlg.qt_options} +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
lolo
+
+
+
+
+ +
+
{#media_dlg.wmp_options}
+
+ {#media_dlg.wmp_options} +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ {#media_dlg.rmp_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+   +
+
+ +
+ {#media_dlg.shockwave_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+
+
+
+
    +
  • +
  • +
+



+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/all-wcprops new file mode 100644 index 0000000..b388aec --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/css +END +content.css +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/css/content.css +END +media.css +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/css/media.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/entries new file mode 100644 index 0000000..7762f72 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/css +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +content.css +file + + + + +2010-06-04T12:51:44.110091Z +ebcad73e7f6785a308328129aa90d5cb +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +524 + +media.css +file + + + + +2010-06-04T12:51:44.110091Z +51795abbefc981b9f77083afd672a495 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1255 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/content.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/content.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/content.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/media.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/media.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/prop-base/media.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/content.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/content.css.svn-base new file mode 100644 index 0000000..7739381 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/content.css.svn-base @@ -0,0 +1,6 @@ +.mceItemFlash, .mceItemShockWave, .mceItemQuickTime, .mceItemWindowsMedia, .mceItemRealMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc;} +.mceItemShockWave {background-image: url(../img/shockwave.gif);} +.mceItemFlash {background-image:url(../img/flash.gif);} +.mceItemQuickTime {background-image:url(../img/quicktime.gif);} +.mceItemWindowsMedia {background-image:url(../img/windowsmedia.gif);} +.mceItemRealMedia {background-image:url(../img/realmedia.gif);} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/media.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/media.css.svn-base new file mode 100644 index 0000000..7b2253b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/.svn/text-base/media.css.svn-base @@ -0,0 +1,16 @@ +#id, #name, #hspace, #vspace, #class_name, #align { width: 100px } +#hspace, #vspace { width: 50px } +#flash_quality, #flash_align, #flash_scale, #flash_salign, #flash_wmode { width: 100px } +#flash_base, #flash_flashvars { width: 240px } +#width, #height { width: 40px } +#src, #media_type { width: 250px } +#class { width: 120px } +#prev { margin: 0; border: 1px solid black; width: 380px; height: 230px; overflow: auto } +.panel_wrapper div.current { height: 390px; overflow: auto } +#flash_options, #shockwave_options, #qt_options, #wmp_options, #rmp_options { display: none } +.mceAddSelectValue { background-color: #DDDDDD } +#qt_starttime, #qt_endtime, #qt_fov, #qt_href, #qt_moveid, #qt_moviename, #qt_node, #qt_pan, #qt_qtsrc, #qt_qtsrcchokespeed, #qt_target, #qt_tilt, #qt_urlsubstituten, #qt_volume { width: 70px } +#wmp_balance, #wmp_baseurl, #wmp_captioningid, #wmp_currentmarker, #wmp_currentposition, #wmp_defaultframe, #wmp_playcount, #wmp_rate, #wmp_uimode, #wmp_volume { width: 70px } +#rmp_console, #rmp_numloop, #rmp_controls, #rmp_scriptcallbacks { width: 70px } +#shockwave_swvolume, #shockwave_swframe, #shockwave_swurl, #shockwave_swstretchvalign, #shockwave_swstretchhalign, #shockwave_swstretchstyle { width: 90px } +#qt_qtsrc { width: 200px } diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/content.css b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/content.css new file mode 100755 index 0000000..7739381 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/content.css @@ -0,0 +1,6 @@ +.mceItemFlash, .mceItemShockWave, .mceItemQuickTime, .mceItemWindowsMedia, .mceItemRealMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc;} +.mceItemShockWave {background-image: url(../img/shockwave.gif);} +.mceItemFlash {background-image:url(../img/flash.gif);} +.mceItemQuickTime {background-image:url(../img/quicktime.gif);} +.mceItemWindowsMedia {background-image:url(../img/windowsmedia.gif);} +.mceItemRealMedia {background-image:url(../img/realmedia.gif);} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/css/media.css b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/media.css new file mode 100755 index 0000000..7b2253b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/css/media.css @@ -0,0 +1,16 @@ +#id, #name, #hspace, #vspace, #class_name, #align { width: 100px } +#hspace, #vspace { width: 50px } +#flash_quality, #flash_align, #flash_scale, #flash_salign, #flash_wmode { width: 100px } +#flash_base, #flash_flashvars { width: 240px } +#width, #height { width: 40px } +#src, #media_type { width: 250px } +#class { width: 120px } +#prev { margin: 0; border: 1px solid black; width: 380px; height: 230px; overflow: auto } +.panel_wrapper div.current { height: 390px; overflow: auto } +#flash_options, #shockwave_options, #qt_options, #wmp_options, #rmp_options { display: none } +.mceAddSelectValue { background-color: #DDDDDD } +#qt_starttime, #qt_endtime, #qt_fov, #qt_href, #qt_moveid, #qt_moviename, #qt_node, #qt_pan, #qt_qtsrc, #qt_qtsrcchokespeed, #qt_target, #qt_tilt, #qt_urlsubstituten, #qt_volume { width: 70px } +#wmp_balance, #wmp_baseurl, #wmp_captioningid, #wmp_currentmarker, #wmp_currentposition, #wmp_defaultframe, #wmp_playcount, #wmp_rate, #wmp_uimode, #wmp_volume { width: 70px } +#rmp_console, #rmp_numloop, #rmp_controls, #rmp_scriptcallbacks { width: 70px } +#shockwave_swvolume, #shockwave_swframe, #shockwave_swurl, #shockwave_swstretchvalign, #shockwave_swstretchhalign, #shockwave_swstretchstyle { width: 90px } +#qt_qtsrc { width: 200px } diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js new file mode 100755 index 0000000..3c9aee9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js @@ -0,0 +1 @@ +(function(){var each=tinymce.each;tinymce.create('tinymce.plugins.MediaPlugin',{init:function(ed,url){var t=this;t.editor=ed;t.url=url;function isMediaElm(n){return/^(mceItemFlash|mceItemShockWave|mceItemWindowsMedia|mceItemQuickTime|mceItemRealMedia)$/.test(n.className);};ed.onPreInit.add(function(){ed.serializer.addRules('param[name|value|_value]');});ed.addCommand('mceMedia',function(){ed.windowManager.open({file:url+'/media.htm',width:480+parseInt(ed.getLang('media.delta_width',0)),height:770+parseInt(ed.getLang('media.delta_height',0)),inline:1},{plugin_url:url});});ed.addButton('media',{title:'media.desc',cmd:'mceMedia'});ed.onNodeChange.add(function(ed,cm,n){cm.setActive('media',n.nodeName=='IMG'&&isMediaElm(n));});ed.onInit.add(function(){var lo={mceItemFlash:'flash',mceItemShockWave:'shockwave',mceItemWindowsMedia:'windowsmedia',mceItemQuickTime:'quicktime',mceItemRealMedia:'realmedia'};ed.selection.onSetContent.add(function(){t._spansToImgs(ed.getBody());});ed.selection.onBeforeSetContent.add(t._objectsToSpans,t);if(ed.settings.content_css!==false)ed.dom.loadCSS(url+"/css/content.css");if(ed.theme.onResolveName){ed.theme.onResolveName.add(function(th,o){if(o.name=='img'){each(lo,function(v,k){if(ed.dom.hasClass(o.node,k)){o.name=v;o.title=ed.dom.getAttrib(o.node,'title');return false;}});}});}if(ed&&ed.plugins.contextmenu){ed.plugins.contextmenu.onContextMenu.add(function(th,m,e){if(e.nodeName=='IMG'&&/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(e.className)){m.add({title:'media.edit',icon:'media',cmd:'mceMedia'});}});}});ed.onBeforeSetContent.add(t._objectsToSpans,t);ed.onSetContent.add(function(){t._spansToImgs(ed.getBody());});ed.onPreProcess.add(function(ed,o){var dom=ed.dom;if(o.set){t._spansToImgs(o.node);each(dom.select('IMG',o.node),function(n){var p;if(isMediaElm(n)){p=t._parse(n.title);dom.setAttrib(n,'width',dom.getAttrib(n,'width',p.width||100));dom.setAttrib(n,'height',dom.getAttrib(n,'height',p.height||100));}});}if(o.get){each(dom.select('IMG',o.node),function(n){var ci,cb,mt;if(ed.getParam('media_use_script')){if(isMediaElm(n))n.className=n.className.replace(/mceItem/g,'mceTemp');return;}switch(n.className){case'mceItemFlash':ci='d27cdb6e-ae6d-11cf-96b8-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';mt='application/x-shockwave-flash';break;case'mceItemShockWave':ci='166b1bca-3f9c-11cf-8075-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0';mt='application/x-director';break;case'mceItemWindowsMedia':ci=ed.getParam('media_wmp6_compatible')?'05589fa1-c356-11ce-bf01-00aa0055595a':'6bf52a52-394a-11d3-b153-00c04f79faa6';cb='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701';mt='application/x-mplayer2';break;case'mceItemQuickTime':ci='02bf25d5-8c17-4b23-bc80-d3488abddc6b';cb='http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0';mt='video/quicktime';break;case'mceItemRealMedia':ci='cfcdaa03-8be4-11cf-b84b-0020afbbccfa';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';mt='audio/x-pn-realaudio-plugin';break;}if(ci){dom.replace(t._buildObj({classid:ci,codebase:cb,type:mt},n),n);}});}});ed.onPostProcess.add(function(ed,o){o.content=o.content.replace(/_value=/g,'value=');});if(ed.getParam('media_use_script')){function getAttr(s,n){n=new RegExp(n+'=\"([^\"]+)\"','g').exec(s);return n?ed.dom.decode(n[1]):'';};ed.onPostProcess.add(function(ed,o){o.content=o.content.replace(/]+>/g,function(im){var cl=getAttr(im,'class');if(/^(mceTempFlash|mceTempShockWave|mceTempWindowsMedia|mceTempQuickTime|mceTempRealMedia)$/.test(cl)){at=t._parse(getAttr(im,'title'));at.width=getAttr(im,'width');at.height=getAttr(im,'height');im='';}return im;});});}},getInfo:function(){return{longname:'Media',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media',version:tinymce.majorVersion+"."+tinymce.minorVersion};},_objectsToSpans:function(ed,o){var t=this,h=o.content;h=h.replace(/]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi,function(a,b,c){var o=t._parse(c);return''});h=h.replace(/]*)>/gi,'');h=h.replace(/]*)\/?>/gi,'');h=h.replace(/]*)>/gi,'');h=h.replace(/<\/(object)([^>]*)>/gi,'');h=h.replace(/<\/embed>/gi,'');h=h.replace(/]*)>/gi,function(a,b){return''});h=h.replace(/\/ class=\"mceItemParam\"><\/span>/gi,'class="mceItemParam">');o.content=h;},_buildObj:function(o,n){var ob,ed=this.editor,dom=ed.dom,p=this._parse(n.title);p.width=o.width=dom.getAttrib(n,'width')||100;p.height=o.height=dom.getAttrib(n,'height')||100;ob=dom.create('span',{mce_name:'object',classid:"clsid:"+o.classid,codebase:o.codebase,width:o.width,height:o.height});if(p.src)p.src=ed.convertURL(p.src,'src',n);each(p,function(v,k){if(!/^(width|height|codebase|classid|_cx|_cy)$/.test(k)){if(o.type=='application/x-mplayer2'&&k=='src')k='url';if(v)dom.add(ob,'span',{mce_name:'param',name:k,'_value':v});}});dom.add(ob,'span',tinymce.extend({mce_name:'embed',type:o.type},p));return ob;},_spansToImgs:function(p){var t=this,dom=t.editor.dom,im,ci;each(dom.select('span',p),function(n){if(dom.getAttrib(n,'class')=='mceItemObject'){ci=dom.getAttrib(n,"classid").toLowerCase().replace(/\s+/g,'');switch(ci){case'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000':dom.replace(t._createImg('mceItemFlash',n),n);break;case'clsid:166b1bca-3f9c-11cf-8075-444553540000':dom.replace(t._createImg('mceItemShockWave',n),n);break;case'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6':case'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95':case'clsid:05589fa1-c356-11ce-bf01-00aa0055595a':dom.replace(t._createImg('mceItemWindowsMedia',n),n);break;case'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b':dom.replace(t._createImg('mceItemQuickTime',n),n);break;case'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa':dom.replace(t._createImg('mceItemRealMedia',n),n);break;default:dom.replace(t._createImg('mceItemFlash',n),n);}return;}if(dom.getAttrib(n,'class')=='mceItemEmbed'){switch(dom.getAttrib(n,'type')){case'application/x-shockwave-flash':dom.replace(t._createImg('mceItemFlash',n),n);break;case'application/x-director':dom.replace(t._createImg('mceItemShockWave',n),n);break;case'application/x-mplayer2':dom.replace(t._createImg('mceItemWindowsMedia',n),n);break;case'video/quicktime':dom.replace(t._createImg('mceItemQuickTime',n),n);break;case'audio/x-pn-realaudio-plugin':dom.replace(t._createImg('mceItemRealMedia',n),n);break;default:dom.replace(t._createImg('mceItemFlash',n),n);}}});},_createImg:function(cl,n){var im,dom=this.editor.dom,pa={},ti='';im=dom.create('img',{src:this.url+'/img/trans.gif',width:dom.getAttrib(n,'width')||100,height:dom.getAttrib(n,'height')||100,'class':cl});each(['id','name','width','height','bgcolor','align','flashvars','src','wmode','allowfullscreen','quality'],function(na){var v=dom.getAttrib(n,na);if(v)pa[na]=v;});each(dom.select('span',n),function(n){if(dom.hasClass(n,'mceItemParam'))pa[dom.getAttrib(n,'name')]=dom.getAttrib(n,'_value');});if(pa.movie){pa.src=pa.movie;delete pa.movie;}delete pa.width;delete pa.height;im.title=this._serialize(pa);return im;},_parse:function(s){return tinymce.util.JSON.parse('{'+s+'}');},_serialize:function(o){return tinymce.util.JSON.serialize(o).replace(/[{}]/g,'');}});tinymce.PluginManager.add('media',tinymce.plugins.MediaPlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js new file mode 100755 index 0000000..8042b99 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js @@ -0,0 +1,374 @@ +/** + * $Id: editor_plugin_src.js 906 2008-08-24 16:47:29Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.MediaPlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + t.url = url; + + function isMediaElm(n) { + return /^(mceItemFlash|mceItemShockWave|mceItemWindowsMedia|mceItemQuickTime|mceItemRealMedia)$/.test(n.className); + }; + + ed.onPreInit.add(function() { + // Force in _value parameter this extra parameter is required for older Opera versions + ed.serializer.addRules('param[name|value|_value]'); + }); + + // Register commands + ed.addCommand('mceMedia', function() { + ed.windowManager.open({ + file : url + '/media.htm', + width : 430 + parseInt(ed.getLang('media.delta_width', 0)), + height : 470 + parseInt(ed.getLang('media.delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('media', {title : 'media.desc', cmd : 'mceMedia'}); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('media', n.nodeName == 'IMG' && isMediaElm(n)); + }); + + ed.onInit.add(function() { + var lo = { + mceItemFlash : 'flash', + mceItemShockWave : 'shockwave', + mceItemWindowsMedia : 'windowsmedia', + mceItemQuickTime : 'quicktime', + mceItemRealMedia : 'realmedia' + }; + + ed.selection.onSetContent.add(function() { + t._spansToImgs(ed.getBody()); + }); + + ed.selection.onBeforeSetContent.add(t._objectsToSpans, t); + + if (ed.settings.content_css !== false) + ed.dom.loadCSS(url + "/css/content.css"); + + if (ed.theme.onResolveName) { + ed.theme.onResolveName.add(function(th, o) { + if (o.name == 'img') { + each(lo, function(v, k) { + if (ed.dom.hasClass(o.node, k)) { + o.name = v; + o.title = ed.dom.getAttrib(o.node, 'title'); + return false; + } + }); + } + }); + } + + if (ed && ed.plugins.contextmenu) { + ed.plugins.contextmenu.onContextMenu.add(function(th, m, e) { + if (e.nodeName == 'IMG' && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(e.className)) { + m.add({title : 'media.edit', icon : 'media', cmd : 'mceMedia'}); + } + }); + } + }); + + ed.onBeforeSetContent.add(t._objectsToSpans, t); + + ed.onSetContent.add(function() { + t._spansToImgs(ed.getBody()); + }); + + ed.onPreProcess.add(function(ed, o) { + var dom = ed.dom; + + if (o.set) { + t._spansToImgs(o.node); + + each(dom.select('IMG', o.node), function(n) { + var p; + + if (isMediaElm(n)) { + p = t._parse(n.title); + dom.setAttrib(n, 'width', dom.getAttrib(n, 'width', p.width || 100)); + dom.setAttrib(n, 'height', dom.getAttrib(n, 'height', p.height || 100)); + } + }); + } + + if (o.get) { + each(dom.select('IMG', o.node), function(n) { + var ci, cb, mt; + + if (ed.getParam('media_use_script')) { + if (isMediaElm(n)) + n.className = n.className.replace(/mceItem/g, 'mceTemp'); + + return; + } + + switch (n.className) { + case 'mceItemFlash': + ci = 'd27cdb6e-ae6d-11cf-96b8-444553540000'; + cb = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + mt = 'application/x-shockwave-flash'; + break; + + case 'mceItemShockWave': + ci = '166b1bca-3f9c-11cf-8075-444553540000'; + cb = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0'; + mt = 'application/x-director'; + break; + + case 'mceItemWindowsMedia': + ci = ed.getParam('media_wmp6_compatible') ? '05589fa1-c356-11ce-bf01-00aa0055595a' : '6bf52a52-394a-11d3-b153-00c04f79faa6'; + cb = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + mt = 'application/x-mplayer2'; + break; + + case 'mceItemQuickTime': + ci = '02bf25d5-8c17-4b23-bc80-d3488abddc6b'; + cb = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0'; + mt = 'video/quicktime'; + break; + + case 'mceItemRealMedia': + ci = 'cfcdaa03-8be4-11cf-b84b-0020afbbccfa'; + cb = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + mt = 'audio/x-pn-realaudio-plugin'; + break; + } + + if (ci) { + dom.replace(t._buildObj({ + classid : ci, + codebase : cb, + type : mt + }, n), n); + } + }); + } + }); + + ed.onPostProcess.add(function(ed, o) { + o.content = o.content.replace(/_value=/g, 'value='); + }); + + if (ed.getParam('media_use_script')) { + function getAttr(s, n) { + n = new RegExp(n + '=\"([^\"]+)\"', 'g').exec(s); + + return n ? ed.dom.decode(n[1]) : ''; + }; + + ed.onPostProcess.add(function(ed, o) { + o.content = o.content.replace(/]+>/g, function(im) { + var cl = getAttr(im, 'class'); + + if (/^(mceTempFlash|mceTempShockWave|mceTempWindowsMedia|mceTempQuickTime|mceTempRealMedia)$/.test(cl)) { + at = t._parse(getAttr(im, 'title')); + at.width = getAttr(im, 'width'); + at.height = getAttr(im, 'height'); + im = ''; + } + + return im; + }); + }); + } + }, + + getInfo : function() { + return { + longname : 'Media', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + _objectsToSpans : function(ed, o) { + var t = this, h = o.content; + + h = h.replace(/]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi, function(a, b, c) { + var o = t._parse(c); + + return '' + }); + + h = h.replace(/]*)>/gi, ''); + h = h.replace(/]*)\/?>/gi, ''); + h = h.replace(/]*)>/gi, ''); + h = h.replace(/<\/(object)([^>]*)>/gi, ''); + h = h.replace(/<\/embed>/gi, ''); + h = h.replace(/]*)>/gi, function(a, b) {return ''}); + h = h.replace(/\/ class=\"mceItemParam\"><\/span>/gi, 'class="mceItemParam">'); + + o.content = h; + }, + + _buildObj : function(o, n) { + var ob, ed = this.editor, dom = ed.dom, p = this._parse(n.title); + + p.width = o.width = dom.getAttrib(n, 'width') || 100; + p.height = o.height = dom.getAttrib(n, 'height') || 100; + + ob = dom.create('span', { + mce_name : 'object', + classid : "clsid:" + o.classid, + codebase : o.codebase, + width : o.width, + height : o.height + }); + + if (p.src) + p.src = ed.convertURL(p.src, 'src', n); + + each (p, function(v, k) { + if (!/^(width|height|codebase|classid|_cx|_cy)$/.test(k)) { + // Use url instead of src in IE for Windows media + if (o.type == 'application/x-mplayer2' && k == 'src') + k = 'url'; + + if (v) + dom.add(ob, 'span', {mce_name : 'param', name : k, '_value' : v}); + } + }); + + dom.add(ob, 'span', tinymce.extend({mce_name : 'embed', type : o.type}, p)); + + return ob; + }, + + _spansToImgs : function(p) { + var t = this, dom = t.editor.dom, im, ci; + + each(dom.select('span', p), function(n) { + // Convert object into image + if (dom.getAttrib(n, 'class') == 'mceItemObject') { + ci = dom.getAttrib(n, "classid").toLowerCase().replace(/\s+/g, ''); + + switch (ci) { + case 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'clsid:166b1bca-3f9c-11cf-8075-444553540000': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6': + case 'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95': + case 'clsid:05589fa1-c356-11ce-bf01-00aa0055595a': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + + return; + } + + // Convert embed into image + if (dom.getAttrib(n, 'class') == 'mceItemEmbed') { + switch (dom.getAttrib(n, 'type')) { + case 'application/x-shockwave-flash': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'application/x-director': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'application/x-mplayer2': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'video/quicktime': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'audio/x-pn-realaudio-plugin': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + } + }); + }, + + _createImg : function(cl, n) { + var im, dom = this.editor.dom, pa = {}, ti = ''; + + // Create image + im = dom.create('img', { + src : this.url + '/img/trans.gif', + width : dom.getAttrib(n, 'width') || 100, + height : dom.getAttrib(n, 'height') || 100, + 'class' : cl + }); + + // Setup base parameters + each(['id', 'name', 'width', 'height', 'bgcolor', 'align', 'flashvars', 'src', 'wmode', 'allowfullscreen', 'quality'], function(na) { + var v = dom.getAttrib(n, na); + + if (v) + pa[na] = v; + }); + + // Add optional parameters + each(dom.select('span', n), function(n) { + if (dom.hasClass(n, 'mceItemParam')) + pa[dom.getAttrib(n, 'name')] = dom.getAttrib(n, '_value'); + }); + + // Use src not movie + if (pa.movie) { + pa.src = pa.movie; + delete pa.movie; + } + + delete pa.width; + delete pa.height; + + im.title = this._serialize(pa); + + return im; + }, + + _parse : function(s) { + return tinymce.util.JSON.parse('{' + s + '}'); + }, + + _serialize : function(o) { + return tinymce.util.JSON.serialize(o).replace(/[{}]/g, ''); + } + }); + + // Register plugin + tinymce.PluginManager.add('media', tinymce.plugins.MediaPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/all-wcprops new file mode 100644 index 0000000..be52564 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/all-wcprops @@ -0,0 +1,47 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img +END +quicktime.gif +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img/quicktime.gif +END +flash.gif +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img/flash.gif +END +flv_player.swf +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img/flv_player.swf +END +realmedia.gif +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img/realmedia.gif +END +trans.gif +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img/trans.gif +END +windowsmedia.gif +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img/windowsmedia.gif +END +shockwave.gif +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img/shockwave.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/entries new file mode 100644 index 0000000..e381f14 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/entries @@ -0,0 +1,266 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/img +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +quicktime.gif +file + + + + +2010-06-04T12:51:44.265615Z +9a6a9fdead205b125c07ea37e71ed4f1 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +303 + +flash.gif +file + + + + +2010-06-04T12:51:44.265615Z +6c69b02015d09280332ff8b07e4ea2f3 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +241 + +flv_player.swf +file + + + + +2010-06-04T12:51:44.265615Z +fe011e9725b2722b59bb8ef4991bf6bb +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +11668 + +realmedia.gif +file + + + + +2010-06-04T12:51:44.265615Z +b9734ee16d790e67bea01046feba28b7 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +439 + +trans.gif +file + + + + +2010-06-04T12:51:44.265615Z +12bf9e19374920de3146a64775f46a5e +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +43 + +windowsmedia.gif +file + + + + +2010-06-04T12:51:44.268949Z +c327cd167b3a7bc263d908b0d0154ead +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +415 + +shockwave.gif +file + + + + +2010-06-04T12:51:44.268949Z +baa643b587565755157618032dc93e3c +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +387 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flash.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flash.gif.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flash.gif.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flv_player.swf.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flv_player.swf.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/flv_player.swf.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/quicktime.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/quicktime.gif.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/quicktime.gif.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/realmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/realmedia.gif.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/realmedia.gif.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/shockwave.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/shockwave.gif.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/shockwave.gif.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/trans.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/trans.gif.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/trans.gif.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/windowsmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/windowsmedia.gif.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/prop-base/windowsmedia.gif.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/flash.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/flash.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..cb192e6ceda8d19ad8e7d08dd1cfde0aa72ead2a GIT binary patch literal 241 zcmVOzlLa+Za}7>m0&NpCfJ0FQc3~F7DE)S%o1)Qi1n@vxX46qnD4hRS-NE*Pw!4UvE=#^N( literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/flv_player.swf.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/flv_player.swf.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..042c2ab969e98a6fdbe08848c4a73bd2c41de906 GIT binary patch literal 11668 zcmV;FEo;(4S5pYUVE_PloV|PrTvNvr@V+F3a36As0Rb-#MGjBSfQpD35b>z>Admpj zkkAkitwp@*Rqv`rs-o69lDZ&@y{HKo3{JcK8Rt^ z72Hab0Fi(9n@~bYkV2y_)Fy`HtF#7{J|rojb4e1a7ekY%Jpqu!GtXQ6#>m0qvY zqk05XkPr<=DTomvJ9PBuQB+V+fX0s>j}|Rjgg*T6Llosb@Z|f-K0(8m{He?6zo^!s zgW%o|yBiCa{N=g3_eV+xKc?-B?2)mXBGanczVGz$;(Jq8W!}yB$#d7jwz;Cki@c`f zWnSDHobzK#aT@9u=8^8x_Ib_e#Xl4Y`Zer+8u>-bA6`uVXi-Ep^6uWh%d8KaJS&g= z)KA}qY1=qz((;kczfDdZmcI1pls2gC!tgBV;pBqfKiK7u7MDbR)&C>$gyc05A7uO} zTU6zl(L392O7^D-J^u?tL2G}Nl|dGb6UZS!lq5p+9>gp}0$|zy zkSG#qbPAfg3zp?lIyJ5j#n!UMW{%nE-W&j!ZI})Q-KC5ph&MP(<)Js zTB%fN`{MEmC|{-4pi+ZEZQoGP^zA& zLSxF+rRqEl+hmTqSfx>GRVc3zjiF2!xFY<5N}=@HB8fb_IYAXlu?mZ7o| zrNW>xk}{1xtqwkmRR+Z{LK(lMQ+^9H0Gff% zJX2#B5lWP0dWAs^!o=T2Duogl*TKM!LUG8TsxY9=AQJ=bIZ~7vbc1o5C@Ly0DylPi zB6X=;AxGtErAn8jC@Te$;}vQ{nof_KL}N>PDKwfqMgBNcpw_5zCX}d9MX?4f1q5BH zQjIf;K8tpwpGg@hdc9%-(x|kBAc=g9I)9w8e;9k(1AMm0;^LIo2w|sWvCp)nqQ>Q7OIBoG-c3dwN`BaqJ6M4 zOw%ihS>0nCrK&(trZKR9V0>jIgTY<~VtawF!NoeAp$Mx6j|!@8ZhRE#47wDpaxk_w zZ9bB#483$(tty`=BA>qE(!oTHNMSH2@{4Fs^2!PdRC?S%DtRNC0b9$_Vc`%-0KWsl z4tpyM3N%(xt|-mdt4j=V07SGG+5vUw2tQ$nS`eWC^bEjRP@go6ZIn-bkt%;2?kwgU zO4Mu->COPIH>?q}HbxaOMi1RbgUQ$i;+&MUN@8Pb=p;x%p_xEbqg59ZRT$-mKTO69 z!yNNKBTkW_Sd)Vd6GVm$l)xKwg@qbbTA4-zomHu{D2EgTnM#5}(?In_K|MQ0b&T%O zv0GG-P9IbR152e3=^iR;{1rz?#t z)>Wug`QQd3^L53YQGQveL060kl%kTdQtS=buB4W!HHLm#TBTH%Vl9C#4A_6@i(xPp z0H1>?=P*pb)mTQ;z)w9I8i3J zGPPErptgE+fycR@b$bnIc#*`@ZkZw?a&b6jjeW{^Wky@if#fot%>Nv=VB$=K+nQI}A85~NO@ z;yQJrXo!Rj&atr$y{rUU0DqzfQ5x9-^=WZ&iLR8b!m3t6j%Nl|TsjW-XP^RpW0y9R zhP+-d-V8_q17$oKlV7ICVlALkB!tps zE=VF0Ble%j&I#b{0T@Z_2zhaKCjMnF^;{`HJ&_4XA`*&3d`O3Er%bk5gd~pmH+)It znbiW+kwX*{M7GXJ?zGGS*{0%58U#Gx`7~4m%Z`L)7pW(%aUnJJTn)6*ft2iR7Iw3Z znpPZN@N|_gb3zg~qbxEpv+g2+$k8dl1mz*ez4H_aGEHSIXqm)a$}99Dg(4FOJVoT` zF71o?!4380A$b2cghV3(70zUH=6T58JY;@}r<@RyTD0u*Pmm=98RR|u-!^aAaUUze z8>@VclI3idkLdT(+Lr%Ko{SN}U&;q{HG$&s0FdcqSlJvH{+vyVLnPq?r*F@f zI(GNCT^@`l*P=*lge0iA*jh0`|H2;4^c3_8_W1AAc8TG87F^PSQ{+oVDu`nU;@iG8 z;vq}KLoA|{0}~NhXPUk|O<%OPAYVbc=K!GXi+oKrPI6A?=_HQVB5DyGY*<7n&muwz zb_bqCbdZ{0Y*|FGr9}i=TSTyJiwL%~i2wf{3jYe@=PgD%vZ``2+975(sa(J|3?zK`XS zCPH@M=z<8-?L@qnB$6O^CS9QKQF0gO01Oe$hwvg0F;ZM7;PSCftU5c9FPeN}92aNX zJ)&6AELQYC!iqIZVxz4R>u6(Q%}049n>O|k;1Y;#&B3~48`DlBDA67UcD5!;=cNR~ z5z5oqnHR9%RmAkAw8&i4s#egK;)3&KB;EQFr{9-OUIo1A6c~MXkx0^m^tGpyrtWc4 z5*?grbm+;BQz-F5X2{S`cS$@!iI!UM?vTwXBb|=$7L*zfFd>oFNN7!>)a)~f&L*o# zBu$o*Dpy)1BQ2!#BLIGAnzzNWWgo3FGz<}5Q=3N&Ld)DuR!&)>O6ir2rwgqaGZer$ zPe}GAC4I;C4(UcYG&kSQC*iq$#*dZPR6H|7GI$(EUZqD<)EmqGE z5{9GCc>STP37J;w3t2plEqN#;ZX$qVfse+8N}5XAA?!kung=sUpcxnFfSnvE9|X#A zru!@qgVd-snJs3wr&1dnN0c69OC2_K6w$omI*~OLPg_;d%~Ulrf^z5x8e;N&&^yATxs&TCd(CJ-oKnKR{%vS@4$o+Gkt zxBzVWE=cmaskM=^fMpWID(ZCtJSv+o5Q#sz&X1M_un~|ep=t6M+DfjeoEor#mgiZP z=V$XGsdByxKDJ;t7KwCuW6@0p$F@L-ZHznszqW=~0ey{u*BCkBAx8SrP)!$wW27|5 zHXo#g|1AuYm1L`0VPA?1JoNwH z!O&Q!<|o|V)H|xB{FO2q7z+qVHPmGUurNdj#8o=5l`+x)YkblXKxu} zY1pIn!8U9Xe8ph7G54UWcVpXwuyBQ>l{AyLir$j2H2_niPKMa%IEhA@Ip2e~ql%Cq z3>gTiwx+y>&JL`{1@#X+v2#PHt*JY7mQkGTYr7jPw_4z%rH#E%@WWx~3eH4``?H(? z>9TFkid>wHRwdx)Sg$mT(h^a1FwUH?#3Z4{*;2qOio%A82Acs;1;+W-c$n|4BQynB zW>)?-axt3wM7%6Zvz4a2Bogx+S4|7cGXV%KC2S>9mm7|-Hx!`eydmpUtH}s_so&(B zE2T|s)dAU=h3FEJagx|=hb$_H-SCbWfR779LVWVThoM4#LvFN2y^QAgPT1ez5^!~; zl!+lCA#cKE9)FFQ25~^m1z`(hgN+S}EK?!}zRw1Rz{V`uf&e!;C)O>n;hM$S#sWTS z87K1jZpJeJWW2|7;S(sAvnYeNHM9RLe4ZRvd)NEI@U5|8|ugIm>8*) z%Xx#>#dM|vvCDS@yAV4XKnIFN?mQ9t7p-u2uTI5g!rSAg=0sTaM4%LmVC+_ECIlO^vs4JDBLZ&EVS!{J z#9?oX!&jhCh`|D!%Px{EmMoFHOFEUx69E0k3%VG9WIO3(m4I$`E``xZ`m&5&SP_Z@ z@=P1`%gOZNJ@Xi40aI;j2bT{6FDuwJObgVE`FKMaJ1Z~Novbho|C&T!TR86#cN9cOdLp7vK^BoISnGxtn8HG0&H;#R4W6qxVVEbs z{H+x}c$g1 zpG_0Fp2+tVpg*KBj6CTEJK)phF7v2Ea!<3fS#%hwmFNUApVN~*M#px}TbN-#q9@OR)B3i*0Q?^Cwv)$r*hsAeC%Bl|``w0>2 zQXo(LOr7Nbv;hWhpW1=MeR(JR7~~L+BwBn9`y831_Ay0{0Bc7Nv0osPNOsDpoQS($ zMI0MjC=#%zNQkfdjKF;^H!kgQMQL*5J}6i8g`5UcUePW&jiS7w-SU~-p)!!K2WAHc zPZ5MsAxU6TEu3ioCT^e`kM0=LS8Fq{L3M8t!#5uhW7~Sz@>ejP z3IDH*!`tGFCrshO&}pF=7Ce_)iO1YlxRqRPL=j7o3a|kQAvy}l>Ob~)mQ>;SB|Eor z#91Xi@+81QB$E=l<4t7)PM+7M$)E(1J#-&NBsPa;2Q_O{LYN2Ar4C2p4EGvsO~7sB zh(u(uLLm9Vj0jN^TeI7&M#QUGArfX%YBo)Yk0xNbvLjsC3F(@X4+%qdbjm7_d__c1 zoJ}XP=E2FAJ(o~#)e-bfJCErSUp9k#7yx8jeHd!3lYq2=Mv17SJz*Uk%lnkG1 zvRq(>+w8J{RRtM*afr_=%Cu~Yzjk1Ch``(8uZ}>4;b?`(B+Y}SR{7#Rlt8h6EChRp$6lOftRMFA0$ZuGMvhL!{1Vd4Tsq%M#rM4oAw z9iKIpnk}!>m3x~eZYD)?2uzqsw;en&QKMxDB@J{XKdgB=4P;k@hsT$`6F!RKK!+a3 zr8A#t_WTVyH>G9Y(IYTsW&3TEnRl3&TsPkM+-Hp4=01_{%|?*5)NC7AjFsO!Vw5^J z*E3u6wIEAFM1zzbo(rV=o+2aXPR3A2asW%-_rH|){mt;c-v;mdU!8X&Su^_vJgdKI z5c5E2Cf3Z~H?YV2hw+TK`BUC2ZHyUqo8D*`_V{ShTtv??#=jETnJ*X_MI$|1bXVa5AVDKCif@+*5fHKbb^HrG6?P;jBm9rosSX{-zLOxtv=$mH}G z6p@{UQ{4<9cW?!q!XkIYV zbYN4jadEs{(<1A%-dJmvr;8?@E}HRV#O86vFI#1!m4Cx!KYsddA@y`t>U>C3_U_6* zV06h6lqBwa#8tKtFDF{&>^4`>`2PQuSa3CC!S&y;VBrRhg|Etjj~NR-|BMBCp3b&j z`m@bM@L~K+L)v1=By*W3lE_S3=Qv(qZz|vx{cwSkacP3qTp=OxYIXwt#owX#MXWRC z2I4ic$rOZMx>B<}(HAv2;J%CTl_K!FUhE3bZXyiCuooUAyWx{D_V81SDhLd|?4rFG zijE;@0+GuR>dBh~6`@vD2xS3weSJN0ciGl}>_16wwb}LCM(qXmq6`P_q6`VWD5KtP z9y}eqwYSFCDg{O)>u5$QQ<`O({-1kWbW=~p;X14q7^+7)lR35F$=-NUu zvPRh$+wM{~G~fbyuR10#SEy`oDW84jwe{as4Q$Vh8#nX!vp!!s{l4|b6A)paKYtztc{PL;U2Hrgo-;L}^M>h-(x}{F(}Fl2JvbY2XKe)G zzv1*mBbH=O3;Gl)F$s6?v02LTIevi;rUCD$H9)igjw5AA@{mFI?%e~3xeHOC*PCnS z_s~YpI0VFf0LTmQ-@(LNpkqX8|S(sH6w)^49?S?t6rsux-nX{OQ7xcTjO4 zib5%<6m3C=kQYII>$u&1hb&+- zy1(7NxC#mm*bQeMWeGoN2<(Q+LxtZqxE??i7nlpRZmm$f7jv`LUR9NlgTd!i1uVlP zZcber^Vab9D?*uj@om0tK)DIt2If*N;7$Al!;P&<=!hO{2fV~WO!BjaKp2 zS>ORQX&ovbE<9HP_3;{L$MrHM+5l|a&jOa9&C9uzha0&-E50NBF25k$Cv!cE2_BHS z9zo?BfoIweXpr=AeHHKwv~EMM-}GW`<=W4v;(AKRy4j)l9NaZ;1Y`-z6&sn0xj?pJ zIBw<$Zia~GVHOqz{w7_n0g5?HCtQOv*%goIoeF=mCQI`sf00#FQ{Yapg`Km&7TiZr9a#b62OAn z&e=44;$C9CRG>}9k9ZA2olqp|3@~-k8Y9% z&ST3*L|@&W8^77v86`V(0e}Ex=K(IK;!=LD-;2g%*Bwo5?>1#lxiY!q&yq*8qlKfc z%c@hhj@jt(;rH_|uW>|f2cu8WY$Fi-=VtJqOs@cRQHE$%)}mo^$vUZbq033u@3rRq zULfat0}#$zvVeI^XLJxcV$@knZbuj=$%9)syjFe@Ch(GcSt2FE^S+qcp@yt>)=}+ zp7Rd1*f!OzHYLRWk%PPAzKkx)xrM&N)@G;oJ~=0&(pWs=gcaHA; z^6=hWPd2UUC+}7lTOZrh)HBxq*b~>f!^*r~5Q?`AU0+$>`HzW-Yeq)aO_4SH{pisn z?|V-w67uRUPJdADbpD?A=#PEp9l0&oayDb@`FoY0Uw)oEG|*XGQh%MXuT;JE_L-kV zpI@H$qD{}+L$}->ziZ^=aUb3Zzkj0y^;?`PQH2+l5Hxu`cp5Yt5)bWqGaf=jwKh$-(Q&1N?>7CyW-dc2S zYEg^qP49l)|EhNRIfwI$4nB^lcHVk^od2mJ=Zd6(J8%5`s3QG9-k{s@D_w8D5pW{s z_nV`$$It4$w&9J0Q3rdT3i5We8!~xQ&f1-6ZioIpUGw&By~ErCQy+SKmp|~0>lFz; zes2%Dcjxib+-^1do<0BY>7a-ckE2$fP?t#USFe`-@#mzZDObYI-6+}kJl20+-nOCZ zUMvj^jb14~n-mgXJ>VNhcbEU(>e7SH-b-)$x6j<$N1m)ZfA6&oXTqlMSIquB zE99D;zJB=P%UjQmt$(^}Y^C7NUbi{ab+qG#f3LQD*HK%tQR-vwQUzA?jKOD9j8+pr z_vbA4gU>@8yM^S9ThqEB&2EQB@{~C~i^pj{9dueUHCGipYvZ=zug(2tSep?a);)Ya z-`~5>fx5!C2j(t+^Ycqnf`dydW1FgDPZd?3?^sY*?KX3N>aLN?ChlGJ{e$uuc{>i- zPfMA5Sozm%mx{fkcZ~jc$%FF#ADxewuy^#`6eYH-(&wm0m!KPE&X`1ahru5lNNy4-v#Y4z7m>$4r6*{y5{>$+}`&)$ogkp6{L zb+u1tC}TD~%-(QjU(bLAeU)pj71XWKcqRJGU9vA%<}=ss#|a66*-5L1JuUxoUP95Z z;XUj-9y}n~|M$KNlahvYN#8Y6es)Z#SIN1P(@uAI|5lG*oZ@SaJ-h;@GJM&PJ9nNu zi~h5+e$nfZ%Qr4n_$hOLb?Z?@1DMc%n(qEF@fz6fqV(Pw8_r~hFZH}z`KZh1eYTu^@!PMP zpCT7u{}^f}9gJqu-lmx}IRulqCouYb;$GX~NHaq$WPkwmK^MT9!i?55c;J?lL0*6K z4QMryujzI{$jKq5F--kksSxZ$3G` zt;2~!o6hdKT6g}^xL@lQ$e&znH+;%`;xUom#wDfh&{6Lp10kLLEiw4a}; zIDuAP)Vv)ChJEZIV}o1o=@sDa)R-{;C&PD%3r9w7c-q;^@xr)`%QQgIBU$tI$DsPM~TZtCLia_!cmJ!8M!6F&aStJ$fNQ6HaQG3CS6elc5S##RpqA0r{AvF=pozs2fVM3+IQo9{D96nf>VEXn9-D_xI)gr)#o&!{AM4$5x!LikG@>R3)vx<(x9wr`O?v zx;z`iKeD|p0{m(CIbk`T0D)PFb{oHGI@ASBp z?bn88XucBp)SS8ZN9)RucIyr_x^|#O(#dEf9baN3k(`lq;?@whfRS`2>oa(3w>^U( z8G;NAfP}~s=W@QdScEgR_r8=Nr|fA##%od8G)@eO)q(D5L8z0=5%Cf$d}}2OA|W8X zF^F#iFD=7YsMd=y|B;Sddgd~;u@mCK&?{E!#eo>gnS*i~IQ1m2Esd%G!-QZMSDbiq z%<>2sFFR#h^gzAC82hU|g?s{WV}mbgTK#ceruOOfj6{MDrJ) zV!6^5v~;pVdw6z%X6R-7R7di^MB2Q%&x%H9~#H-8QIUz(Ln45_OAge~rzKY(Z zN$kU;1MVY}0BlLWpOS+YO}Wd789{x0eG|TgoBS|sCOf3TYY$LYg8hB>#s`+_y5EFy z)CP?zNLLVKC{hI#Xv*>By!Zl9Y?VO+bb3{Bkh&x?G7?nZ1~7U8t+<1>X7Cr9P*hA@ zOftB+zizKzKBewZKps5XY6i;Ke4&Bn>%d3@Tm6gZ+=B0g9S(D!OZdT|wxoI+8 z=+X?B&#f8#aj$Jdr=_iXbU1Iv$@eCYi}L&8uYq0s*DpNME6Ba7pw8jFmRg36;}QujUXdwq|5!y7UViX(-j1q2 zCO&6&PS`Pg&$~x%?|G3J=mtUyJTxi2e)?M*&Rl%_>yu~Glc(L^R99CwFDLx=ql49_ zeSLkMV=51<-k$vM;5GI4x;NhV!}+hp7n4G6B~HHC?~~U5@tu31aCUEf*~E$8&FUR; z?a9oyI&W`U-FtGb{9H+o=@2;oY<>5#r{j!=ZqHro>i7MXyK}^XNA^D~_mPOMM+t}3 ze|_=3Wb&TU`%SO6(2ZQZqf&|yfMthy(G*fa6>Yl^Hx8=GtqqH9}^n3 z?n|l4A|t<=x|*Yb?<6<<7TA&>f9U>1dpj5?ep3Zerh8l2F(?MB_nTf-LE=C)bwEc0 zd=pU2pqcEdMpN>MhiCy_w@5%qF4s?{o$NOgP4-e7%Us?WKuxEPeDVi{|B8v^R zB>cGn?UUW+E~#=aaYWFkwhoKc;CAT!w6v!!;h98w>O^~*NS!XbLWOrSlF@Laq(1%H zwQI=TMN<`1aa?+*WrOkuCFk2^oD7pW8IFQy3V04~Lb8bZ?L&=BI^DTJ=v^#E8S4m$fXGF-bTg^FJ?Eia`h^T literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/quicktime.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/quicktime.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..3b0499145b16138249f653a1a3f2c80230fb292c GIT binary patch literal 303 zcmV+~0nq+ONk%w1VGsZi0K^{vH>m7Qv+~s9^fsC5ZpZP=*zu3F=Jxpf8k_5u%JNv6 z=md-84VLU4w)kSE=yI&-yw>b=v+SqE?+kq47pC+YrR?bJ^yu>Zyvpn;hTp*6^mM!O zu+8$^=JX7bb<~J01ZTA{q@86#&8&6~H`Ss{{?p%K!-p%L6P2TpFYz90?pD06UU# BbnE~C literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/realmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/realmedia.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..fdfe0b9ac05869ae845fdd828eaad97cc0c69dbc GIT binary patch literal 439 zcmV;o0Z9HwNk%w1VI=?(0K^{vQcz8xz}f&njBB06v9GQ`Jv%NdDHCI&z`wqZw$(Lw zuFTBL!Pe#<92tv>h)9OE1Xh}vnVEHSaeb-GByg#tqM_B*)YRkdSdqTuipLaF8n=^^LJP4|1^gGRdo_Rl+a*grZQ1hw@Zo1ikN$oB{QbRq&z?QIckdq1aE3;Fq_(WV>Kc7gjQtQh+9OrtFhn-)LUqD<|MOIl_!(Ed#pPRE;S)g;ew3>pd zn`Wa(lc2DGa)peFw3f88dp-|`@*)AXj;@(8hwDr|7Sxsp;&YxjN*Y{PBB!TIU|!b7Zgv0OaG5)&Kwi literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/trans.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/trans.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..388486517fa8da13ebd150e8f65d5096c3e10c3a GIT binary patch literal 43 ncmZ?wbhEHbWMp7un7{x9ia%KxMSyG_5FaGNz{KRj$Y2csb)f_x literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/windowsmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/.svn/text-base/windowsmedia.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..ab50f2d887a0843b116ef598e5a005e5601d18d0 GIT binary patch literal 415 zcmV;Q0bu?|Nk%w1VGjTg0M$PL`E^qkEu+z?1&N?x_*pRg{rx~kg!#|I<>uyug^O^t z0hZGrt*x!>$1C!zn`W5@`ts6_uMW)2%<0NUEKIo?SIPPE=}U0}7Z(?JcX!y=*;bF< zCWz-=h7+2ao9)(dOHM;+X=xs9)%!~xc&ICMZdRYdUQ2$^@9y(6X3NCIz{cM7f^Z=Q z1_tQ95kgl8b%R%OiYTIo7LSdE^@}A^8LW002J#EC2ui01p5U000KOz@O0K01zUifeIyT9%!RzMDgehG|mwLz+Eh; z7Z~iE zrX?OfJ^>XeDJK)xJuWOB3_l1N0Ra>g4Gk^=ED0V6LI?>4;Q|6OB{LplLMRLg8U5-E J?0y6R06W6!pgRBn literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/flash.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/flash.gif new file mode 100755 index 0000000000000000000000000000000000000000..cb192e6ceda8d19ad8e7d08dd1cfde0aa72ead2a GIT binary patch literal 241 zcmVOzlLa+Za}7>m0&NpCfJ0FQc3~F7DE)S%o1)Qi1n@vxX46qnD4hRS-NE*Pw!4UvE=#^N( literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/flv_player.swf b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/flv_player.swf new file mode 100755 index 0000000000000000000000000000000000000000..042c2ab969e98a6fdbe08848c4a73bd2c41de906 GIT binary patch literal 11668 zcmV;FEo;(4S5pYUVE_PloV|PrTvNvr@V+F3a36As0Rb-#MGjBSfQpD35b>z>Admpj zkkAkitwp@*Rqv`rs-o69lDZ&@y{HKo3{JcK8Rt^ z72Hab0Fi(9n@~bYkV2y_)Fy`HtF#7{J|rojb4e1a7ekY%Jpqu!GtXQ6#>m0qvY zqk05XkPr<=DTomvJ9PBuQB+V+fX0s>j}|Rjgg*T6Llosb@Z|f-K0(8m{He?6zo^!s zgW%o|yBiCa{N=g3_eV+xKc?-B?2)mXBGanczVGz$;(Jq8W!}yB$#d7jwz;Cki@c`f zWnSDHobzK#aT@9u=8^8x_Ib_e#Xl4Y`Zer+8u>-bA6`uVXi-Ep^6uWh%d8KaJS&g= z)KA}qY1=qz((;kczfDdZmcI1pls2gC!tgBV;pBqfKiK7u7MDbR)&C>$gyc05A7uO} zTU6zl(L392O7^D-J^u?tL2G}Nl|dGb6UZS!lq5p+9>gp}0$|zy zkSG#qbPAfg3zp?lIyJ5j#n!UMW{%nE-W&j!ZI})Q-KC5ph&MP(<)Js zTB%fN`{MEmC|{-4pi+ZEZQoGP^zA& zLSxF+rRqEl+hmTqSfx>GRVc3zjiF2!xFY<5N}=@HB8fb_IYAXlu?mZ7o| zrNW>xk}{1xtqwkmRR+Z{LK(lMQ+^9H0Gff% zJX2#B5lWP0dWAs^!o=T2Duogl*TKM!LUG8TsxY9=AQJ=bIZ~7vbc1o5C@Ly0DylPi zB6X=;AxGtErAn8jC@Te$;}vQ{nof_KL}N>PDKwfqMgBNcpw_5zCX}d9MX?4f1q5BH zQjIf;K8tpwpGg@hdc9%-(x|kBAc=g9I)9w8e;9k(1AMm0;^LIo2w|sWvCp)nqQ>Q7OIBoG-c3dwN`BaqJ6M4 zOw%ihS>0nCrK&(trZKR9V0>jIgTY<~VtawF!NoeAp$Mx6j|!@8ZhRE#47wDpaxk_w zZ9bB#483$(tty`=BA>qE(!oTHNMSH2@{4Fs^2!PdRC?S%DtRNC0b9$_Vc`%-0KWsl z4tpyM3N%(xt|-mdt4j=V07SGG+5vUw2tQ$nS`eWC^bEjRP@go6ZIn-bkt%;2?kwgU zO4Mu->COPIH>?q}HbxaOMi1RbgUQ$i;+&MUN@8Pb=p;x%p_xEbqg59ZRT$-mKTO69 z!yNNKBTkW_Sd)Vd6GVm$l)xKwg@qbbTA4-zomHu{D2EgTnM#5}(?In_K|MQ0b&T%O zv0GG-P9IbR152e3=^iR;{1rz?#t z)>Wug`QQd3^L53YQGQveL060kl%kTdQtS=buB4W!HHLm#TBTH%Vl9C#4A_6@i(xPp z0H1>?=P*pb)mTQ;z)w9I8i3J zGPPErptgE+fycR@b$bnIc#*`@ZkZw?a&b6jjeW{^Wky@if#fot%>Nv=VB$=K+nQI}A85~NO@ z;yQJrXo!Rj&atr$y{rUU0DqzfQ5x9-^=WZ&iLR8b!m3t6j%Nl|TsjW-XP^RpW0y9R zhP+-d-V8_q17$oKlV7ICVlALkB!tps zE=VF0Ble%j&I#b{0T@Z_2zhaKCjMnF^;{`HJ&_4XA`*&3d`O3Er%bk5gd~pmH+)It znbiW+kwX*{M7GXJ?zGGS*{0%58U#Gx`7~4m%Z`L)7pW(%aUnJJTn)6*ft2iR7Iw3Z znpPZN@N|_gb3zg~qbxEpv+g2+$k8dl1mz*ez4H_aGEHSIXqm)a$}99Dg(4FOJVoT` zF71o?!4380A$b2cghV3(70zUH=6T58JY;@}r<@RyTD0u*Pmm=98RR|u-!^aAaUUze z8>@VclI3idkLdT(+Lr%Ko{SN}U&;q{HG$&s0FdcqSlJvH{+vyVLnPq?r*F@f zI(GNCT^@`l*P=*lge0iA*jh0`|H2;4^c3_8_W1AAc8TG87F^PSQ{+oVDu`nU;@iG8 z;vq}KLoA|{0}~NhXPUk|O<%OPAYVbc=K!GXi+oKrPI6A?=_HQVB5DyGY*<7n&muwz zb_bqCbdZ{0Y*|FGr9}i=TSTyJiwL%~i2wf{3jYe@=PgD%vZ``2+975(sa(J|3?zK`XS zCPH@M=z<8-?L@qnB$6O^CS9QKQF0gO01Oe$hwvg0F;ZM7;PSCftU5c9FPeN}92aNX zJ)&6AELQYC!iqIZVxz4R>u6(Q%}049n>O|k;1Y;#&B3~48`DlBDA67UcD5!;=cNR~ z5z5oqnHR9%RmAkAw8&i4s#egK;)3&KB;EQFr{9-OUIo1A6c~MXkx0^m^tGpyrtWc4 z5*?grbm+;BQz-F5X2{S`cS$@!iI!UM?vTwXBb|=$7L*zfFd>oFNN7!>)a)~f&L*o# zBu$o*Dpy)1BQ2!#BLIGAnzzNWWgo3FGz<}5Q=3N&Ld)DuR!&)>O6ir2rwgqaGZer$ zPe}GAC4I;C4(UcYG&kSQC*iq$#*dZPR6H|7GI$(EUZqD<)EmqGE z5{9GCc>STP37J;w3t2plEqN#;ZX$qVfse+8N}5XAA?!kung=sUpcxnFfSnvE9|X#A zru!@qgVd-snJs3wr&1dnN0c69OC2_K6w$omI*~OLPg_;d%~Ulrf^z5x8e;N&&^yATxs&TCd(CJ-oKnKR{%vS@4$o+Gkt zxBzVWE=cmaskM=^fMpWID(ZCtJSv+o5Q#sz&X1M_un~|ep=t6M+DfjeoEor#mgiZP z=V$XGsdByxKDJ;t7KwCuW6@0p$F@L-ZHznszqW=~0ey{u*BCkBAx8SrP)!$wW27|5 zHXo#g|1AuYm1L`0VPA?1JoNwH z!O&Q!<|o|V)H|xB{FO2q7z+qVHPmGUurNdj#8o=5l`+x)YkblXKxu} zY1pIn!8U9Xe8ph7G54UWcVpXwuyBQ>l{AyLir$j2H2_niPKMa%IEhA@Ip2e~ql%Cq z3>gTiwx+y>&JL`{1@#X+v2#PHt*JY7mQkGTYr7jPw_4z%rH#E%@WWx~3eH4``?H(? z>9TFkid>wHRwdx)Sg$mT(h^a1FwUH?#3Z4{*;2qOio%A82Acs;1;+W-c$n|4BQynB zW>)?-axt3wM7%6Zvz4a2Bogx+S4|7cGXV%KC2S>9mm7|-Hx!`eydmpUtH}s_so&(B zE2T|s)dAU=h3FEJagx|=hb$_H-SCbWfR779LVWVThoM4#LvFN2y^QAgPT1ez5^!~; zl!+lCA#cKE9)FFQ25~^m1z`(hgN+S}EK?!}zRw1Rz{V`uf&e!;C)O>n;hM$S#sWTS z87K1jZpJeJWW2|7;S(sAvnYeNHM9RLe4ZRvd)NEI@U5|8|ugIm>8*) z%Xx#>#dM|vvCDS@yAV4XKnIFN?mQ9t7p-u2uTI5g!rSAg=0sTaM4%LmVC+_ECIlO^vs4JDBLZ&EVS!{J z#9?oX!&jhCh`|D!%Px{EmMoFHOFEUx69E0k3%VG9WIO3(m4I$`E``xZ`m&5&SP_Z@ z@=P1`%gOZNJ@Xi40aI;j2bT{6FDuwJObgVE`FKMaJ1Z~Novbho|C&T!TR86#cN9cOdLp7vK^BoISnGxtn8HG0&H;#R4W6qxVVEbs z{H+x}c$g1 zpG_0Fp2+tVpg*KBj6CTEJK)phF7v2Ea!<3fS#%hwmFNUApVN~*M#px}TbN-#q9@OR)B3i*0Q?^Cwv)$r*hsAeC%Bl|``w0>2 zQXo(LOr7Nbv;hWhpW1=MeR(JR7~~L+BwBn9`y831_Ay0{0Bc7Nv0osPNOsDpoQS($ zMI0MjC=#%zNQkfdjKF;^H!kgQMQL*5J}6i8g`5UcUePW&jiS7w-SU~-p)!!K2WAHc zPZ5MsAxU6TEu3ioCT^e`kM0=LS8Fq{L3M8t!#5uhW7~Sz@>ejP z3IDH*!`tGFCrshO&}pF=7Ce_)iO1YlxRqRPL=j7o3a|kQAvy}l>Ob~)mQ>;SB|Eor z#91Xi@+81QB$E=l<4t7)PM+7M$)E(1J#-&NBsPa;2Q_O{LYN2Ar4C2p4EGvsO~7sB zh(u(uLLm9Vj0jN^TeI7&M#QUGArfX%YBo)Yk0xNbvLjsC3F(@X4+%qdbjm7_d__c1 zoJ}XP=E2FAJ(o~#)e-bfJCErSUp9k#7yx8jeHd!3lYq2=Mv17SJz*Uk%lnkG1 zvRq(>+w8J{RRtM*afr_=%Cu~Yzjk1Ch``(8uZ}>4;b?`(B+Y}SR{7#Rlt8h6EChRp$6lOftRMFA0$ZuGMvhL!{1Vd4Tsq%M#rM4oAw z9iKIpnk}!>m3x~eZYD)?2uzqsw;en&QKMxDB@J{XKdgB=4P;k@hsT$`6F!RKK!+a3 zr8A#t_WTVyH>G9Y(IYTsW&3TEnRl3&TsPkM+-Hp4=01_{%|?*5)NC7AjFsO!Vw5^J z*E3u6wIEAFM1zzbo(rV=o+2aXPR3A2asW%-_rH|){mt;c-v;mdU!8X&Su^_vJgdKI z5c5E2Cf3Z~H?YV2hw+TK`BUC2ZHyUqo8D*`_V{ShTtv??#=jETnJ*X_MI$|1bXVa5AVDKCif@+*5fHKbb^HrG6?P;jBm9rosSX{-zLOxtv=$mH}G z6p@{UQ{4<9cW?!q!XkIYV zbYN4jadEs{(<1A%-dJmvr;8?@E}HRV#O86vFI#1!m4Cx!KYsddA@y`t>U>C3_U_6* zV06h6lqBwa#8tKtFDF{&>^4`>`2PQuSa3CC!S&y;VBrRhg|Etjj~NR-|BMBCp3b&j z`m@bM@L~K+L)v1=By*W3lE_S3=Qv(qZz|vx{cwSkacP3qTp=OxYIXwt#owX#MXWRC z2I4ic$rOZMx>B<}(HAv2;J%CTl_K!FUhE3bZXyiCuooUAyWx{D_V81SDhLd|?4rFG zijE;@0+GuR>dBh~6`@vD2xS3weSJN0ciGl}>_16wwb}LCM(qXmq6`P_q6`VWD5KtP z9y}eqwYSFCDg{O)>u5$QQ<`O({-1kWbW=~p;X14q7^+7)lR35F$=-NUu zvPRh$+wM{~G~fbyuR10#SEy`oDW84jwe{as4Q$Vh8#nX!vp!!s{l4|b6A)paKYtztc{PL;U2Hrgo-;L}^M>h-(x}{F(}Fl2JvbY2XKe)G zzv1*mBbH=O3;Gl)F$s6?v02LTIevi;rUCD$H9)igjw5AA@{mFI?%e~3xeHOC*PCnS z_s~YpI0VFf0LTmQ-@(LNpkqX8|S(sH6w)^49?S?t6rsux-nX{OQ7xcTjO4 zib5%<6m3C=kQYII>$u&1hb&+- zy1(7NxC#mm*bQeMWeGoN2<(Q+LxtZqxE??i7nlpRZmm$f7jv`LUR9NlgTd!i1uVlP zZcber^Vab9D?*uj@om0tK)DIt2If*N;7$Al!;P&<=!hO{2fV~WO!BjaKp2 zS>ORQX&ovbE<9HP_3;{L$MrHM+5l|a&jOa9&C9uzha0&-E50NBF25k$Cv!cE2_BHS z9zo?BfoIweXpr=AeHHKwv~EMM-}GW`<=W4v;(AKRy4j)l9NaZ;1Y`-z6&sn0xj?pJ zIBw<$Zia~GVHOqz{w7_n0g5?HCtQOv*%goIoeF=mCQI`sf00#FQ{Yapg`Km&7TiZr9a#b62OAn z&e=44;$C9CRG>}9k9ZA2olqp|3@~-k8Y9% z&ST3*L|@&W8^77v86`V(0e}Ex=K(IK;!=LD-;2g%*Bwo5?>1#lxiY!q&yq*8qlKfc z%c@hhj@jt(;rH_|uW>|f2cu8WY$Fi-=VtJqOs@cRQHE$%)}mo^$vUZbq033u@3rRq zULfat0}#$zvVeI^XLJxcV$@knZbuj=$%9)syjFe@Ch(GcSt2FE^S+qcp@yt>)=}+ zp7Rd1*f!OzHYLRWk%PPAzKkx)xrM&N)@G;oJ~=0&(pWs=gcaHA; z^6=hWPd2UUC+}7lTOZrh)HBxq*b~>f!^*r~5Q?`AU0+$>`HzW-Yeq)aO_4SH{pisn z?|V-w67uRUPJdADbpD?A=#PEp9l0&oayDb@`FoY0Uw)oEG|*XGQh%MXuT;JE_L-kV zpI@H$qD{}+L$}->ziZ^=aUb3Zzkj0y^;?`PQH2+l5Hxu`cp5Yt5)bWqGaf=jwKh$-(Q&1N?>7CyW-dc2S zYEg^qP49l)|EhNRIfwI$4nB^lcHVk^od2mJ=Zd6(J8%5`s3QG9-k{s@D_w8D5pW{s z_nV`$$It4$w&9J0Q3rdT3i5We8!~xQ&f1-6ZioIpUGw&By~ErCQy+SKmp|~0>lFz; zes2%Dcjxib+-^1do<0BY>7a-ckE2$fP?t#USFe`-@#mzZDObYI-6+}kJl20+-nOCZ zUMvj^jb14~n-mgXJ>VNhcbEU(>e7SH-b-)$x6j<$N1m)ZfA6&oXTqlMSIquB zE99D;zJB=P%UjQmt$(^}Y^C7NUbi{ab+qG#f3LQD*HK%tQR-vwQUzA?jKOD9j8+pr z_vbA4gU>@8yM^S9ThqEB&2EQB@{~C~i^pj{9dueUHCGipYvZ=zug(2tSep?a);)Ya z-`~5>fx5!C2j(t+^Ycqnf`dydW1FgDPZd?3?^sY*?KX3N>aLN?ChlGJ{e$uuc{>i- zPfMA5Sozm%mx{fkcZ~jc$%FF#ADxewuy^#`6eYH-(&wm0m!KPE&X`1ahru5lNNy4-v#Y4z7m>$4r6*{y5{>$+}`&)$ogkp6{L zb+u1tC}TD~%-(QjU(bLAeU)pj71XWKcqRJGU9vA%<}=ss#|a66*-5L1JuUxoUP95Z z;XUj-9y}n~|M$KNlahvYN#8Y6es)Z#SIN1P(@uAI|5lG*oZ@SaJ-h;@GJM&PJ9nNu zi~h5+e$nfZ%Qr4n_$hOLb?Z?@1DMc%n(qEF@fz6fqV(Pw8_r~hFZH}z`KZh1eYTu^@!PMP zpCT7u{}^f}9gJqu-lmx}IRulqCouYb;$GX~NHaq$WPkwmK^MT9!i?55c;J?lL0*6K z4QMryujzI{$jKq5F--kksSxZ$3G` zt;2~!o6hdKT6g}^xL@lQ$e&znH+;%`;xUom#wDfh&{6Lp10kLLEiw4a}; zIDuAP)Vv)ChJEZIV}o1o=@sDa)R-{;C&PD%3r9w7c-q;^@xr)`%QQgIBU$tI$DsPM~TZtCLia_!cmJ!8M!6F&aStJ$fNQ6HaQG3CS6elc5S##RpqA0r{AvF=pozs2fVM3+IQo9{D96nf>VEXn9-D_xI)gr)#o&!{AM4$5x!LikG@>R3)vx<(x9wr`O?v zx;z`iKeD|p0{m(CIbk`T0D)PFb{oHGI@ASBp z?bn88XucBp)SS8ZN9)RucIyr_x^|#O(#dEf9baN3k(`lq;?@whfRS`2>oa(3w>^U( z8G;NAfP}~s=W@QdScEgR_r8=Nr|fA##%od8G)@eO)q(D5L8z0=5%Cf$d}}2OA|W8X zF^F#iFD=7YsMd=y|B;Sddgd~;u@mCK&?{E!#eo>gnS*i~IQ1m2Esd%G!-QZMSDbiq z%<>2sFFR#h^gzAC82hU|g?s{WV}mbgTK#ceruOOfj6{MDrJ) zV!6^5v~;pVdw6z%X6R-7R7di^MB2Q%&x%H9~#H-8QIUz(Ln45_OAge~rzKY(Z zN$kU;1MVY}0BlLWpOS+YO}Wd789{x0eG|TgoBS|sCOf3TYY$LYg8hB>#s`+_y5EFy z)CP?zNLLVKC{hI#Xv*>By!Zl9Y?VO+bb3{Bkh&x?G7?nZ1~7U8t+<1>X7Cr9P*hA@ zOftB+zizKzKBewZKps5XY6i;Ke4&Bn>%d3@Tm6gZ+=B0g9S(D!OZdT|wxoI+8 z=+X?B&#f8#aj$Jdr=_iXbU1Iv$@eCYi}L&8uYq0s*DpNME6Ba7pw8jFmRg36;}QujUXdwq|5!y7UViX(-j1q2 zCO&6&PS`Pg&$~x%?|G3J=mtUyJTxi2e)?M*&Rl%_>yu~Glc(L^R99CwFDLx=ql49_ zeSLkMV=51<-k$vM;5GI4x;NhV!}+hp7n4G6B~HHC?~~U5@tu31aCUEf*~E$8&FUR; z?a9oyI&W`U-FtGb{9H+o=@2;oY<>5#r{j!=ZqHro>i7MXyK}^XNA^D~_mPOMM+t}3 ze|_=3Wb&TU`%SO6(2ZQZqf&|yfMthy(G*fa6>Yl^Hx8=GtqqH9}^n3 z?n|l4A|t<=x|*Yb?<6<<7TA&>f9U>1dpj5?ep3Zerh8l2F(?MB_nTf-LE=C)bwEc0 zd=pU2pqcEdMpN>MhiCy_w@5%qF4s?{o$NOgP4-e7%Us?WKuxEPeDVi{|B8v^R zB>cGn?UUW+E~#=aaYWFkwhoKc;CAT!w6v!!;h98w>O^~*NS!XbLWOrSlF@Laq(1%H zwQI=TMN<`1aa?+*WrOkuCFk2^oD7pW8IFQy3V04~Lb8bZ?L&=BI^DTJ=v^#E8S4m$fXGF-bTg^FJ?Eia`h^T literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/quicktime.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/quicktime.gif new file mode 100755 index 0000000000000000000000000000000000000000..3b0499145b16138249f653a1a3f2c80230fb292c GIT binary patch literal 303 zcmV+~0nq+ONk%w1VGsZi0K^{vH>m7Qv+~s9^fsC5ZpZP=*zu3F=Jxpf8k_5u%JNv6 z=md-84VLU4w)kSE=yI&-yw>b=v+SqE?+kq47pC+YrR?bJ^yu>Zyvpn;hTp*6^mM!O zu+8$^=JX7bb<~J01ZTA{q@86#&8&6~H`Ss{{?p%K!-p%L6P2TpFYz90?pD06UU# BbnE~C literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/realmedia.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/realmedia.gif new file mode 100755 index 0000000000000000000000000000000000000000..fdfe0b9ac05869ae845fdd828eaad97cc0c69dbc GIT binary patch literal 439 zcmV;o0Z9HwNk%w1VI=?(0K^{vQcz8xz}f&njBB06v9GQ`Jv%NdDHCI&z`wqZw$(Lw zuFTBL!Pe#<92tv>h)9OE1Xh}vnVEHSaeb-GByg#tqM_B*)YRkdSdqTuipLaF8n=^^LJP4|1^gGRdo_Rl+a*grZQ1hw@Zo1ikN$oB{QbRq&z?QIckdq1aE3;Fq_(WV>Kc7gjQtQh+9OrtFhn-)LUqD<|MOIl_!(Ed#pPRE;S)g;ew3>pd zn`Wa(lc2DGa)peFw3f88dp-|`@*)AXj;@(8hwDr|7Sxsp;&YxjN*Y{PBB!TIU|!b7Zgv0OaG5)&Kwi literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/trans.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/trans.gif new file mode 100755 index 0000000000000000000000000000000000000000..388486517fa8da13ebd150e8f65d5096c3e10c3a GIT binary patch literal 43 ncmZ?wbhEHbWMp7un7{x9ia%KxMSyG_5FaGNz{KRj$Y2csb)f_x literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/img/windowsmedia.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media/img/windowsmedia.gif new file mode 100755 index 0000000000000000000000000000000000000000..ab50f2d887a0843b116ef598e5a005e5601d18d0 GIT binary patch literal 415 zcmV;Q0bu?|Nk%w1VGjTg0M$PL`E^qkEu+z?1&N?x_*pRg{rx~kg!#|I<>uyug^O^t z0hZGrt*x!>$1C!zn`W5@`ts6_uMW)2%<0NUEKIo?SIPPE=}U0}7Z(?JcX!y=*;bF< zCWz-=h7+2ao9)(dOHM;+X=xs9)%!~xc&ICMZdRYdUQ2$^@9y(6X3NCIz{cM7f^Z=Q z1_tQ95kgl8b%R%OiYTIo7LSdE^@}A^8LW002J#EC2ui01p5U000KOz@O0K01zUifeIyT9%!RzMDgehG|mwLz+Eh; z7Z~iE zrX?OfJ^>XeDJK)xJuWOB3_l1N0Ra>g4Gk^=ED0V6LI?>4;Q|6OB{LplLMRLg8U5-E J?0y6R06W6!pgRBn literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/all-wcprops new file mode 100644 index 0000000..340d0bf --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/js +END +embed.js +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/js/embed.js +END +media.js +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/js/media.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/entries new file mode 100644 index 0000000..b1182dd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media/js +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +embed.js +file + + + + +2010-06-04T12:51:44.291875Z +5df3783492b848adde42124a1e9cf383 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1865 + +media.js +file + + + + +2010-06-04T12:51:44.291875Z +833c81dc20903c49f911d8d1a9e72d6a +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +17916 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/embed.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/embed.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/embed.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/media.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/media.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/prop-base/media.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/text-base/embed.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/text-base/embed.js.svn-base new file mode 100644 index 0000000..6fe25de --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media/js/.svn/text-base/embed.js.svn-base @@ -0,0 +1,73 @@ +/** + * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose. + */ + +function writeFlash(p) { + writeEmbed( + 'D27CDB6E-AE6D-11cf-96B8-444553540000', + 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0', + 'application/x-shockwave-flash', + p + ); +} + +function writeShockWave(p) { + writeEmbed( + '166B1BCA-3F9C-11CF-8075-444553540000', + 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0', + 'application/x-director', + p + ); +} + +function writeQuickTime(p) { + writeEmbed( + '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B', + 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0', + 'video/quicktime', + p + ); +} + +function writeRealMedia(p) { + writeEmbed( + 'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA', + 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0', + 'audio/x-pn-realaudio-plugin', + p + ); +} + +function writeWindowsMedia(p) { + p.url = p.src; + writeEmbed( + '6BF52A52-394A-11D3-B153-00C04F79FAA6', + 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701', + 'application/x-mplayer2', + p + ); +} + +function writeEmbed(cls, cb, mt, p) { + var h = '', n; + + h += ''; + + h += ''); + +function init() { + var pl = "", f, val; + var type = "flash", fe, i; + + ed = tinyMCEPopup.editor; + + tinyMCEPopup.resizeToInnerSize(); + f = document.forms[0] + + fe = ed.selection.getNode(); + if (/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + pl = fe.title; + + switch (ed.dom.getAttrib(fe, 'class')) { + case 'mceItemFlash': + type = 'flash'; + break; + + case 'mceItemFlashVideo': + type = 'flv'; + break; + + case 'mceItemShockWave': + type = 'shockwave'; + break; + + case 'mceItemWindowsMedia': + type = 'wmp'; + break; + + case 'mceItemQuickTime': + type = 'qt'; + break; + + case 'mceItemRealMedia': + type = 'rmp'; + break; + } + + document.forms[0].insert.value = ed.getLang('update', 'Insert', true); + } + + document.getElementById('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media'); + document.getElementById('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','qt_qtsrc','media','media'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor'); + + var html = getMediaListHTML('medialist','src','media','media'); + if (html == "") + document.getElementById("linklistrow").style.display = 'none'; + else + document.getElementById("linklistcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('filebrowser')) + document.getElementById('src').style.width = '230px'; + + // Setup form + if (pl != "") { + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + switch (type) { + case "flash": + setBool(pl, 'flash', 'play'); + setBool(pl, 'flash', 'loop'); + setBool(pl, 'flash', 'menu'); + setBool(pl, 'flash', 'swliveconnect'); + setStr(pl, 'flash', 'quality'); + setStr(pl, 'flash', 'scale'); + setStr(pl, 'flash', 'salign'); + setStr(pl, 'flash', 'wmode'); + setStr(pl, 'flash', 'base'); + setStr(pl, 'flash', 'flashvars'); + break; + + case "qt": + setBool(pl, 'qt', 'loop'); + setBool(pl, 'qt', 'autoplay'); + setBool(pl, 'qt', 'cache'); + setBool(pl, 'qt', 'controller'); + setBool(pl, 'qt', 'correction'); + setBool(pl, 'qt', 'enablejavascript'); + setBool(pl, 'qt', 'kioskmode'); + setBool(pl, 'qt', 'autohref'); + setBool(pl, 'qt', 'playeveryframe'); + setBool(pl, 'qt', 'tarsetcache'); + setStr(pl, 'qt', 'scale'); + setStr(pl, 'qt', 'starttime'); + setStr(pl, 'qt', 'endtime'); + setStr(pl, 'qt', 'tarset'); + setStr(pl, 'qt', 'qtsrcchokespeed'); + setStr(pl, 'qt', 'volume'); + setStr(pl, 'qt', 'qtsrc'); + break; + + case "shockwave": + setBool(pl, 'shockwave', 'sound'); + setBool(pl, 'shockwave', 'progress'); + setBool(pl, 'shockwave', 'autostart'); + setBool(pl, 'shockwave', 'swliveconnect'); + setStr(pl, 'shockwave', 'swvolume'); + setStr(pl, 'shockwave', 'swstretchstyle'); + setStr(pl, 'shockwave', 'swstretchhalign'); + setStr(pl, 'shockwave', 'swstretchvalign'); + break; + + case "wmp": + setBool(pl, 'wmp', 'autostart'); + setBool(pl, 'wmp', 'enabled'); + setBool(pl, 'wmp', 'enablecontextmenu'); + setBool(pl, 'wmp', 'fullscreen'); + setBool(pl, 'wmp', 'invokeurls'); + setBool(pl, 'wmp', 'mute'); + setBool(pl, 'wmp', 'stretchtofit'); + setBool(pl, 'wmp', 'windowlessvideo'); + setStr(pl, 'wmp', 'balance'); + setStr(pl, 'wmp', 'baseurl'); + setStr(pl, 'wmp', 'captioningid'); + setStr(pl, 'wmp', 'currentmarker'); + setStr(pl, 'wmp', 'currentposition'); + setStr(pl, 'wmp', 'defaultframe'); + setStr(pl, 'wmp', 'playcount'); + setStr(pl, 'wmp', 'rate'); + setStr(pl, 'wmp', 'uimode'); + setStr(pl, 'wmp', 'volume'); + break; + + case "rmp": + setBool(pl, 'rmp', 'autostart'); + setBool(pl, 'rmp', 'loop'); + setBool(pl, 'rmp', 'autogotourl'); + setBool(pl, 'rmp', 'center'); + setBool(pl, 'rmp', 'imagestatus'); + setBool(pl, 'rmp', 'maintainaspect'); + setBool(pl, 'rmp', 'nojava'); + setBool(pl, 'rmp', 'prefetch'); + setBool(pl, 'rmp', 'shuffle'); + setStr(pl, 'rmp', 'console'); + setStr(pl, 'rmp', 'controls'); + setStr(pl, 'rmp', 'numloop'); + setStr(pl, 'rmp', 'scriptcallbacks'); + break; + } + + setStr(pl, null, 'src'); + setStr(pl, null, 'id'); + setStr(pl, null, 'name'); + setStr(pl, null, 'vspace'); + setStr(pl, null, 'hspace'); + setStr(pl, null, 'bgcolor'); + setStr(pl, null, 'align'); + setStr(pl, null, 'width'); + setStr(pl, null, 'height'); + + if ((val = ed.dom.getAttrib(fe, "width")) != "") + pl.width = f.width.value = val; + + if ((val = ed.dom.getAttrib(fe, "height")) != "") + pl.height = f.height.value = val; + + oldWidth = pl.width ? parseInt(pl.width) : 0; + oldHeight = pl.height ? parseInt(pl.height) : 0; + } else + oldWidth = oldHeight = 0; + + selectByValue(f, 'media_type', type); + changedType(type); + updateColor('bgcolor_pick', 'bgcolor'); + + TinyMCE_EditableSelects.init(); + generatePreview(); +} + +function insertMedia() { + var fe, f = document.forms[0], h; + + tinyMCEPopup.restoreSelection(); + + if (!AutoValidator.validate(f)) { + tinyMCEPopup.alert(ed.getLang('invalid_data')); + return false; + } + + f.width.value = f.width.value == "" ? 100 : f.width.value; + f.height.value = f.height.value == "" ? 100 : f.height.value; + + fe = ed.selection.getNode(); + if (fe != null && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + fe.className = "mceItemFlash"; + break; + + case "flv": + fe.className = "mceItemFlashVideo"; + break; + + case "shockwave": + fe.className = "mceItemShockWave"; + break; + + case "qt": + fe.className = "mceItemQuickTime"; + break; + + case "wmp": + fe.className = "mceItemWindowsMedia"; + break; + + case "rmp": + fe.className = "mceItemRealMedia"; + break; + } + + if (fe.width != f.width.value || fe.height != f.height.height) + ed.execCommand('mceRepaint'); + + fe.title = serializeParameters(); + fe.width = f.width.value; + fe.height = f.height.value; + fe.style.width = f.width.value + (f.width.value.indexOf('%') == -1 ? 'px' : ''); + fe.style.height = f.height.value + (f.height.value.indexOf('%') == -1 ? 'px' : ''); + fe.align = f.align.options[f.align.selectedIndex].value; + } else { + h = ' 0) { + var html = ""; + + html += ''; + + return html; + } + + return ""; +} + +function getType(v) { + var fo, i, c, el, x, f = document.forms[0]; + + fo = ed.getParam("media_types", "flash=swf;flv=flv;shockwave=dcr;qt=mov,qt,mpg,mp3,mp4,mpeg;shockwave=dcr;wmp=avi,wmv,wm,asf,asx,wmx,wvx;rmp=rm,ra,ram").split(';'); + + // YouTube + if (v.match(/watch\?v=(.+)(.*)/)) { + f.width.value = '425'; + f.height.value = '350'; + f.src.value = 'http://www.youtube.com/v/' + v.match(/v=(.*)(.*)/)[0].split('=')[1]; + return 'flash'; + } + + // Google video + if (v.indexOf('http://video.google.com/videoplay?docid=') == 0) { + f.width.value = '425'; + f.height.value = '326'; + f.src.value = 'http://video.google.com/googleplayer.swf?docId=' + v.substring('http://video.google.com/videoplay?docid='.length) + '&hl=en'; + return 'flash'; + } + + for (i=0; i 0 ? s.substring(0, s.length - 1) : s; + + return s; +} + +function setBool(pl, p, n) { + if (typeof(pl[n]) == "undefined") + return; + + document.forms[0].elements[p + "_" + n].checked = pl[n]; +} + +function setStr(pl, p, n) { + var f = document.forms[0], e = f.elements[(p != null ? p + "_" : '') + n]; + + if (typeof(pl[n]) == "undefined") + return; + + if (e.type == "text") + e.value = pl[n]; + else + selectByValue(f, (p != null ? p + "_" : '') + n, pl[n]); +} + +function getBool(p, n, d, tv, fv) { + var v = document.forms[0].elements[p + "_" + n].checked; + + tv = typeof(tv) == 'undefined' ? 'true' : "'" + jsEncode(tv) + "'"; + fv = typeof(fv) == 'undefined' ? 'false' : "'" + jsEncode(fv) + "'"; + + return (v == d) ? '' : n + (v ? ':' + tv + ',' : ':' + fv + ','); +} + +function getStr(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + if (n == 'src') + v = tinyMCEPopup.editor.convertURL(v, 'src', null); + + return ((n == d || v == '') ? '' : n + ":'" + jsEncode(v) + "',"); +} + +function getInt(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + return ((n == d || v == '') ? '' : n + ":" + v.replace(/[^0-9]+/g, '') + ","); +} + +function jsEncode(s) { + s = s.replace(new RegExp('\\\\', 'g'), '\\\\'); + s = s.replace(new RegExp('"', 'g'), '\\"'); + s = s.replace(new RegExp("'", 'g'), "\\'"); + + return s; +} + +function generatePreview(c) { + var f = document.forms[0], p = document.getElementById('prev'), h = '', cls, pl, n, type, codebase, wp, hp, nw, nh; + + p.innerHTML = ''; + + nw = parseInt(f.width.value); + nh = parseInt(f.height.value); + + if (f.width.value != "" && f.height.value != "") { + if (f.constrain.checked) { + if (c == 'width' && oldWidth != 0) { + wp = nw / oldWidth; + nh = Math.round(wp * nh); + f.height.value = nh; + } else if (c == 'height' && oldHeight != 0) { + hp = nh / oldHeight; + nw = Math.round(hp * nw); + f.width.value = nw; + } + } + } + + if (f.width.value != "") + oldWidth = nw; + + if (f.height.value != "") + oldHeight = nh; + + // After constrain + pl = serializeParameters(); + + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + cls = 'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + type = 'application/x-shockwave-flash'; + break; + + case "shockwave": + cls = 'clsid:166B1BCA-3F9C-11CF-8075-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0'; + type = 'application/x-director'; + break; + + case "qt": + cls = 'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B'; + codebase = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0'; + type = 'video/quicktime'; + break; + + case "wmp": + cls = ed.getParam('media_wmp6_compatible') ? 'clsid:05589FA1-C356-11CE-BF01-00AA0055595A' : 'clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'application/x-mplayer2'; + break; + + case "rmp": + cls = 'clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'audio/x-pn-realaudio-plugin'; + break; + } + + if (pl == '') { + p.innerHTML = ''; + return; + } + + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + if (!pl.src) { + p.innerHTML = ''; + return; + } + + pl.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(pl.src); + pl.width = !pl.width ? 100 : pl.width; + pl.height = !pl.height ? 100 : pl.height; + pl.id = !pl.id ? 'obj' : pl.id; + pl.name = !pl.name ? 'eobj' : pl.name; + pl.align = !pl.align ? '' : pl.align; + + // Avoid annoying warning about insecure items + if (!tinymce.isIE || document.location.protocol != 'https:') { + h += ''; + + for (n in pl) { + h += ''; + + // Add extra url parameter if it's an absolute URL + if (n == 'src' && pl[n].indexOf('://') != -1) + h += ''; + } + } + + h += ''; + + h += ''); + +function init() { + var pl = "", f, val; + var type = "flash", fe, i; + + ed = tinyMCEPopup.editor; + + tinyMCEPopup.resizeToInnerSize(); + f = document.forms[0] + + fe = ed.selection.getNode(); + if (/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + pl = fe.title; + + switch (ed.dom.getAttrib(fe, 'class')) { + case 'mceItemFlash': + type = 'flash'; + break; + + case 'mceItemFlashVideo': + type = 'flv'; + break; + + case 'mceItemShockWave': + type = 'shockwave'; + break; + + case 'mceItemWindowsMedia': + type = 'wmp'; + break; + + case 'mceItemQuickTime': + type = 'qt'; + break; + + case 'mceItemRealMedia': + type = 'rmp'; + break; + } + + document.forms[0].insert.value = ed.getLang('update', 'Insert', true); + } + + document.getElementById('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media'); + document.getElementById('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','qt_qtsrc','media','media'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor'); + + var html = getMediaListHTML('medialist','src','media','media'); + if (html == "") + document.getElementById("linklistrow").style.display = 'none'; + else + document.getElementById("linklistcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('filebrowser')) + document.getElementById('src').style.width = '230px'; + + // Setup form + if (pl != "") { + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + switch (type) { + case "flash": + setBool(pl, 'flash', 'play'); + setBool(pl, 'flash', 'loop'); + setBool(pl, 'flash', 'menu'); + setBool(pl, 'flash', 'swliveconnect'); + setStr(pl, 'flash', 'quality'); + setStr(pl, 'flash', 'scale'); + setStr(pl, 'flash', 'salign'); + setStr(pl, 'flash', 'wmode'); + setStr(pl, 'flash', 'base'); + setStr(pl, 'flash', 'flashvars'); + break; + + case "qt": + setBool(pl, 'qt', 'loop'); + setBool(pl, 'qt', 'autoplay'); + setBool(pl, 'qt', 'cache'); + setBool(pl, 'qt', 'controller'); + setBool(pl, 'qt', 'correction'); + setBool(pl, 'qt', 'enablejavascript'); + setBool(pl, 'qt', 'kioskmode'); + setBool(pl, 'qt', 'autohref'); + setBool(pl, 'qt', 'playeveryframe'); + setBool(pl, 'qt', 'tarsetcache'); + setStr(pl, 'qt', 'scale'); + setStr(pl, 'qt', 'starttime'); + setStr(pl, 'qt', 'endtime'); + setStr(pl, 'qt', 'tarset'); + setStr(pl, 'qt', 'qtsrcchokespeed'); + setStr(pl, 'qt', 'volume'); + setStr(pl, 'qt', 'qtsrc'); + break; + + case "shockwave": + setBool(pl, 'shockwave', 'sound'); + setBool(pl, 'shockwave', 'progress'); + setBool(pl, 'shockwave', 'autostart'); + setBool(pl, 'shockwave', 'swliveconnect'); + setStr(pl, 'shockwave', 'swvolume'); + setStr(pl, 'shockwave', 'swstretchstyle'); + setStr(pl, 'shockwave', 'swstretchhalign'); + setStr(pl, 'shockwave', 'swstretchvalign'); + break; + + case "wmp": + setBool(pl, 'wmp', 'autostart'); + setBool(pl, 'wmp', 'enabled'); + setBool(pl, 'wmp', 'enablecontextmenu'); + setBool(pl, 'wmp', 'fullscreen'); + setBool(pl, 'wmp', 'invokeurls'); + setBool(pl, 'wmp', 'mute'); + setBool(pl, 'wmp', 'stretchtofit'); + setBool(pl, 'wmp', 'windowlessvideo'); + setStr(pl, 'wmp', 'balance'); + setStr(pl, 'wmp', 'baseurl'); + setStr(pl, 'wmp', 'captioningid'); + setStr(pl, 'wmp', 'currentmarker'); + setStr(pl, 'wmp', 'currentposition'); + setStr(pl, 'wmp', 'defaultframe'); + setStr(pl, 'wmp', 'playcount'); + setStr(pl, 'wmp', 'rate'); + setStr(pl, 'wmp', 'uimode'); + setStr(pl, 'wmp', 'volume'); + break; + + case "rmp": + setBool(pl, 'rmp', 'autostart'); + setBool(pl, 'rmp', 'loop'); + setBool(pl, 'rmp', 'autogotourl'); + setBool(pl, 'rmp', 'center'); + setBool(pl, 'rmp', 'imagestatus'); + setBool(pl, 'rmp', 'maintainaspect'); + setBool(pl, 'rmp', 'nojava'); + setBool(pl, 'rmp', 'prefetch'); + setBool(pl, 'rmp', 'shuffle'); + setStr(pl, 'rmp', 'console'); + setStr(pl, 'rmp', 'controls'); + setStr(pl, 'rmp', 'numloop'); + setStr(pl, 'rmp', 'scriptcallbacks'); + break; + } + + setStr(pl, null, 'src'); + setStr(pl, null, 'id'); + setStr(pl, null, 'name'); + setStr(pl, null, 'vspace'); + setStr(pl, null, 'hspace'); + setStr(pl, null, 'bgcolor'); + setStr(pl, null, 'align'); + setStr(pl, null, 'width'); + setStr(pl, null, 'height'); + + if ((val = ed.dom.getAttrib(fe, "width")) != "") + pl.width = f.width.value = val; + + if ((val = ed.dom.getAttrib(fe, "height")) != "") + pl.height = f.height.value = val; + + oldWidth = pl.width ? parseInt(pl.width) : 0; + oldHeight = pl.height ? parseInt(pl.height) : 0; + } else + oldWidth = oldHeight = 0; + + selectByValue(f, 'media_type', type); + changedType(type); + updateColor('bgcolor_pick', 'bgcolor'); + + TinyMCE_EditableSelects.init(); + generatePreview(); +} + +function insertMedia() { + var fe, f = document.forms[0], h; + + tinyMCEPopup.restoreSelection(); + + if (!AutoValidator.validate(f)) { + tinyMCEPopup.alert(ed.getLang('invalid_data')); + return false; + } + + f.width.value = f.width.value == "" ? 100 : f.width.value; + f.height.value = f.height.value == "" ? 100 : f.height.value; + + fe = ed.selection.getNode(); + if (fe != null && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + fe.className = "mceItemFlash"; + break; + + case "flv": + fe.className = "mceItemFlashVideo"; + break; + + case "shockwave": + fe.className = "mceItemShockWave"; + break; + + case "qt": + fe.className = "mceItemQuickTime"; + break; + + case "wmp": + fe.className = "mceItemWindowsMedia"; + break; + + case "rmp": + fe.className = "mceItemRealMedia"; + break; + } + + if (fe.width != f.width.value || fe.height != f.height.height) + ed.execCommand('mceRepaint'); + + fe.title = serializeParameters(); + fe.width = f.width.value; + fe.height = f.height.value; + fe.style.width = f.width.value + (f.width.value.indexOf('%') == -1 ? 'px' : ''); + fe.style.height = f.height.value + (f.height.value.indexOf('%') == -1 ? 'px' : ''); + fe.align = f.align.options[f.align.selectedIndex].value; + } else { + h = ' 0) { + var html = ""; + + html += ''; + + return html; + } + + return ""; +} + +function getType(v) { + var fo, i, c, el, x, f = document.forms[0]; + + fo = ed.getParam("media_types", "flash=swf;flv=flv;shockwave=dcr;qt=mov,qt,mpg,mp3,mp4,mpeg;shockwave=dcr;wmp=avi,wmv,wm,asf,asx,wmx,wvx;rmp=rm,ra,ram").split(';'); + + // YouTube + if (v.match(/watch\?v=(.+)(.*)/)) { + f.width.value = '425'; + f.height.value = '350'; + f.src.value = 'http://www.youtube.com/v/' + v.match(/v=(.*)(.*)/)[0].split('=')[1]; + return 'flash'; + } + + // Google video + if (v.indexOf('http://video.google.com/videoplay?docid=') == 0) { + f.width.value = '425'; + f.height.value = '326'; + f.src.value = 'http://video.google.com/googleplayer.swf?docId=' + v.substring('http://video.google.com/videoplay?docid='.length) + '&hl=en'; + return 'flash'; + } + + for (i=0; i 0 ? s.substring(0, s.length - 1) : s; + + return s; +} + +function setBool(pl, p, n) { + if (typeof(pl[n]) == "undefined") + return; + + document.forms[0].elements[p + "_" + n].checked = pl[n]; +} + +function setStr(pl, p, n) { + var f = document.forms[0], e = f.elements[(p != null ? p + "_" : '') + n]; + + if (typeof(pl[n]) == "undefined") + return; + + if (e.type == "text") + e.value = pl[n]; + else + selectByValue(f, (p != null ? p + "_" : '') + n, pl[n]); +} + +function getBool(p, n, d, tv, fv) { + var v = document.forms[0].elements[p + "_" + n].checked; + + tv = typeof(tv) == 'undefined' ? 'true' : "'" + jsEncode(tv) + "'"; + fv = typeof(fv) == 'undefined' ? 'false' : "'" + jsEncode(fv) + "'"; + + return (v == d) ? '' : n + (v ? ':' + tv + ',' : ':' + fv + ','); +} + +function getStr(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + if (n == 'src') + v = tinyMCEPopup.editor.convertURL(v, 'src', null); + + return ((n == d || v == '') ? '' : n + ":'" + jsEncode(v) + "',"); +} + +function getInt(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + return ((n == d || v == '') ? '' : n + ":" + v.replace(/[^0-9]+/g, '') + ","); +} + +function jsEncode(s) { + s = s.replace(new RegExp('\\\\', 'g'), '\\\\'); + s = s.replace(new RegExp('"', 'g'), '\\"'); + s = s.replace(new RegExp("'", 'g'), "\\'"); + + return s; +} + +function generatePreview(c) { + var f = document.forms[0], p = document.getElementById('prev'), h = '', cls, pl, n, type, codebase, wp, hp, nw, nh; + + p.innerHTML = ''; + + nw = parseInt(f.width.value); + nh = parseInt(f.height.value); + + if (f.width.value != "" && f.height.value != "") { + if (f.constrain.checked) { + if (c == 'width' && oldWidth != 0) { + wp = nw / oldWidth; + nh = Math.round(wp * nh); + f.height.value = nh; + } else if (c == 'height' && oldHeight != 0) { + hp = nh / oldHeight; + nw = Math.round(hp * nw); + f.width.value = nw; + } + } + } + + if (f.width.value != "") + oldWidth = nw; + + if (f.height.value != "") + oldHeight = nh; + + // After constrain + pl = serializeParameters(); + + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + cls = 'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + type = 'application/x-shockwave-flash'; + break; + + case "shockwave": + cls = 'clsid:166B1BCA-3F9C-11CF-8075-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0'; + type = 'application/x-director'; + break; + + case "qt": + cls = 'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B'; + codebase = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0'; + type = 'video/quicktime'; + break; + + case "wmp": + cls = ed.getParam('media_wmp6_compatible') ? 'clsid:05589FA1-C356-11CE-BF01-00AA0055595A' : 'clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'application/x-mplayer2'; + break; + + case "rmp": + cls = 'clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'audio/x-pn-realaudio-plugin'; + break; + } + + if (pl == '') { + p.innerHTML = ''; + return; + } + + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + if (!pl.src) { + p.innerHTML = ''; + return; + } + + pl.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(pl.src); + pl.width = !pl.width ? 100 : pl.width; + pl.height = !pl.height ? 100 : pl.height; + pl.id = !pl.id ? 'obj' : pl.id; + pl.name = !pl.name ? 'eobj' : pl.name; + pl.align = !pl.align ? '' : pl.align; + + // Avoid annoying warning about insecure items + if (!tinymce.isIE || document.location.protocol != 'https:') { + h += ''; + + for (n in pl) { + h += ''; + + // Add extra url parameter if it's an absolute URL + if (n == 'src' && pl[n].indexOf('://') != -1) + h += ''; + } + } + + h += ' + + + {#media_dlg.title} + + + + + + + + + + +
+ +
+
+
+ {#media_dlg.general} +
+
+
+ +
+
+
+
+
+ +
 
+
+
+
+
+
 
+
+
+
+
+ x + px +

+ + +

+
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+ {#media_dlg.advanced} +
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+ + +
+
+
+
+
+
+
+
+
+
+

+ +
+
+

{#media_dlg.flash_options}

+ {#media_dlg.flash_options} +
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ +
+

{#media_dlg.flv_options}

+ {#media_dlg.flv_options} +
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ +
+

{#media_dlg.qt_options}

+ {#media_dlg.qt_options} +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
lolo
+
+
+
+
+ +
+
{#media_dlg.wmp_options}
+
+ {#media_dlg.wmp_options} +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ {#media_dlg.rmp_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+   +
+
+ +
+ {#media_dlg.shockwave_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+
+
+
+
    +
  • +
  • +
+



+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/all-wcprops new file mode 100644 index 0000000..5a050c4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 85 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin_src.js +END +media.htm +K 25 +svn:wc:ra_dav:version-url +V 95 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/media.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/entries new file mode 100644 index 0000000..b1358e9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/entries @@ -0,0 +1,142 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:35:55.822899Z +1018 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.388949Z +4293b412afc9ed2923de50a8ff452bc1 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +8146 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.388949Z +41b5c198b6b33448d41e6b52a6ae0baa +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +12119 + +media.htm +file + + + + +2010-06-04T12:51:45.388949Z +2429dc83f834fffa558cbce15ff22b46 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +32667 + +css +dir + +img +dir + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..4bbe367 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.MediaPlugin",{init:function(b,c){var e=this;e.editor=b;e.url=c;function f(g){return/^(mceItemFlash|mceItemShockWave|mceItemWindowsMedia|mceItemQuickTime|mceItemRealMedia)$/.test(g.className)}b.onPreInit.add(function(){b.serializer.addRules("param[name|value|_mce_value]")});b.addCommand("mceMedia",function(){b.windowManager.open({file:c+"/media.htm",width:430+parseInt(b.getLang("media.delta_width",0)),height:470+parseInt(b.getLang("media.delta_height",0)),inline:1},{plugin_url:c})});b.addButton("media",{title:"media.desc",cmd:"mceMedia"});b.onNodeChange.add(function(h,g,i){g.setActive("media",i.nodeName=="IMG"&&f(i))});b.onInit.add(function(){var g={mceItemFlash:"flash",mceItemShockWave:"shockwave",mceItemWindowsMedia:"windowsmedia",mceItemQuickTime:"quicktime",mceItemRealMedia:"realmedia"};b.selection.onSetContent.add(function(){e._spansToImgs(b.getBody())});b.selection.onBeforeSetContent.add(e._objectsToSpans,e);if(b.settings.content_css!==false){b.dom.loadCSS(c+"/css/content.css")}if(b.theme&&b.theme.onResolveName){b.theme.onResolveName.add(function(h,i){if(i.name=="img"){a(g,function(l,j){if(b.dom.hasClass(i.node,j)){i.name=l;i.title=b.dom.getAttrib(i.node,"title");return false}})}})}if(b&&b.plugins.contextmenu){b.plugins.contextmenu.onContextMenu.add(function(i,h,j){if(j.nodeName=="IMG"&&/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(j.className)){h.add({title:"media.edit",icon:"media",cmd:"mceMedia"})}})}});b.onBeforeSetContent.add(e._objectsToSpans,e);b.onSetContent.add(function(){e._spansToImgs(b.getBody())});b.onPreProcess.add(function(g,i){var h=g.dom;if(i.set){e._spansToImgs(i.node);a(h.select("IMG",i.node),function(k){var j;if(f(k)){j=e._parse(k.title);h.setAttrib(k,"width",h.getAttrib(k,"width",j.width||100));h.setAttrib(k,"height",h.getAttrib(k,"height",j.height||100))}})}if(i.get){a(h.select("IMG",i.node),function(m){var l,j,k;if(g.getParam("media_use_script")){if(f(m)){m.className=m.className.replace(/mceItem/g,"mceTemp")}return}switch(m.className){case"mceItemFlash":l="d27cdb6e-ae6d-11cf-96b8-444553540000";j="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0";k="application/x-shockwave-flash";break;case"mceItemShockWave":l="166b1bca-3f9c-11cf-8075-444553540000";j="http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0";k="application/x-director";break;case"mceItemWindowsMedia":l=g.getParam("media_wmp6_compatible")?"05589fa1-c356-11ce-bf01-00aa0055595a":"6bf52a52-394a-11d3-b153-00c04f79faa6";j="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701";k="application/x-mplayer2";break;case"mceItemQuickTime":l="02bf25d5-8c17-4b23-bc80-d3488abddc6b";j="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0";k="video/quicktime";break;case"mceItemRealMedia":l="cfcdaa03-8be4-11cf-b84b-0020afbbccfa";j="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0";k="audio/x-pn-realaudio-plugin";break}if(l){h.replace(e._buildObj({classid:l,codebase:j,type:k},m),m)}})}});b.onPostProcess.add(function(g,h){h.content=h.content.replace(/_mce_value=/g,"value=")});function d(g,h){h=new RegExp(h+'="([^"]+)"',"g").exec(g);return h?b.dom.decode(h[1]):""}b.onPostProcess.add(function(g,h){if(g.getParam("media_use_script")){h.content=h.content.replace(/]+>/g,function(j){var i=d(j,"class");if(/^(mceTempFlash|mceTempShockWave|mceTempWindowsMedia|mceTempQuickTime|mceTempRealMedia)$/.test(i)){at=e._parse(d(j,"title"));at.width=d(j,"width");at.height=d(j,"height");j=''; + } + + return im; + }); + } + }); + }, + + getInfo : function() { + return { + longname : 'Media', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + _objectsToSpans : function(ed, o) { + var t = this, h = o.content; + + h = h.replace(/]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi, function(a, b, c) { + var o = t._parse(c); + + return '' + }); + + h = h.replace(/]*)>/gi, ''); + h = h.replace(/]*)\/?>/gi, ''); + h = h.replace(/]*)>/gi, ''); + h = h.replace(/<\/(object)([^>]*)>/gi, ''); + h = h.replace(/<\/embed>/gi, ''); + h = h.replace(/]*)>/gi, function(a, b) {return ''}); + h = h.replace(/\/ class=\"mceItemParam\"><\/span>/gi, 'class="mceItemParam">'); + + o.content = h; + }, + + _buildObj : function(o, n) { + var ob, ed = this.editor, dom = ed.dom, p = this._parse(n.title), stc; + + stc = ed.getParam('media_strict', true) && o.type == 'application/x-shockwave-flash'; + + p.width = o.width = dom.getAttrib(n, 'width') || 100; + p.height = o.height = dom.getAttrib(n, 'height') || 100; + + if (p.src) + p.src = ed.convertURL(p.src, 'src', n); + + if (stc) { + ob = dom.create('span', { + id : p.id, + _mce_name : 'object', + type : 'application/x-shockwave-flash', + data : p.src, + style : dom.getAttrib(n, 'style'), + width : o.width, + height : o.height + }); + } else { + ob = dom.create('span', { + id : p.id, + _mce_name : 'object', + classid : "clsid:" + o.classid, + style : dom.getAttrib(n, 'style'), + codebase : o.codebase, + width : o.width, + height : o.height + }); + } + + each (p, function(v, k) { + if (!/^(width|height|codebase|classid|id|_cx|_cy)$/.test(k)) { + // Use url instead of src in IE for Windows media + if (o.type == 'application/x-mplayer2' && k == 'src' && !p.url) + k = 'url'; + + if (v) + dom.add(ob, 'span', {_mce_name : 'param', name : k, '_mce_value' : v}); + } + }); + + if (!stc) + dom.add(ob, 'span', tinymce.extend({_mce_name : 'embed', type : o.type, style : dom.getAttrib(n, 'style')}, p)); + + return ob; + }, + + _spansToImgs : function(p) { + var t = this, dom = t.editor.dom, im, ci; + + each(dom.select('span', p), function(n) { + // Convert object into image + if (dom.getAttrib(n, 'class') == 'mceItemObject') { + ci = dom.getAttrib(n, "classid").toLowerCase().replace(/\s+/g, ''); + + switch (ci) { + case 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'clsid:166b1bca-3f9c-11cf-8075-444553540000': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6': + case 'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95': + case 'clsid:05589fa1-c356-11ce-bf01-00aa0055595a': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + + return; + } + + // Convert embed into image + if (dom.getAttrib(n, 'class') == 'mceItemEmbed') { + switch (dom.getAttrib(n, 'type')) { + case 'application/x-shockwave-flash': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'application/x-director': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'application/x-mplayer2': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'video/quicktime': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'audio/x-pn-realaudio-plugin': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + } + }); + }, + + _createImg : function(cl, n) { + var im, dom = this.editor.dom, pa = {}, ti = '', args; + + args = ['id', 'name', 'width', 'height', 'bgcolor', 'align', 'flashvars', 'src', 'wmode', 'allowfullscreen', 'quality', 'data']; + + // Create image + im = dom.create('img', { + src : this.url + '/img/trans.gif', + width : dom.getAttrib(n, 'width') || 100, + height : dom.getAttrib(n, 'height') || 100, + style : dom.getAttrib(n, 'style'), + 'class' : cl + }); + + // Setup base parameters + each(args, function(na) { + var v = dom.getAttrib(n, na); + + if (v) + pa[na] = v; + }); + + // Add optional parameters + each(dom.select('span', n), function(n) { + if (dom.hasClass(n, 'mceItemParam')) + pa[dom.getAttrib(n, 'name')] = dom.getAttrib(n, '_mce_value'); + }); + + // Use src not movie + if (pa.movie) { + pa.src = pa.movie; + delete pa.movie; + } + + // No src try data + if (!pa.src) { + pa.src = pa.data; + delete pa.data; + } + + // Merge with embed args + n = dom.select('.mceItemEmbed', n)[0]; + if (n) { + each(args, function(na) { + var v = dom.getAttrib(n, na); + + if (v && !pa[na]) + pa[na] = v; + }); + } + + delete pa.width; + delete pa.height; + + im.title = this._serialize(pa); + + return im; + }, + + _parse : function(s) { + return tinymce.util.JSON.parse('{' + s + '}'); + }, + + _serialize : function(o) { + return tinymce.util.JSON.serialize(o).replace(/[{}]/g, ''); + } + }); + + // Register plugin + tinymce.PluginManager.add('media', tinymce.plugins.MediaPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/media.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/media.htm.svn-base new file mode 100644 index 0000000..73a903f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/.svn/text-base/media.htm.svn-base @@ -0,0 +1,817 @@ + + + + {#media_dlg.title} + + + + + + + + + +
+ + +
+
+
+ {#media_dlg.general} + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + +
 
+
+ + + + + + +
x   
+
+
+ +
+ {#media_dlg.preview} + +
+
+ +
+
+ {#media_dlg.advanced} + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +
 
+
+
+ +
+ {#media_dlg.flash_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + + + + + + + +
+
+ +
+ {#media_dlg.flv_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+ +
+ {#media_dlg.qt_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+  
+ + + + + +
 
+
+
+ +
+ {#media_dlg.wmp_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+ +
+ {#media_dlg.rmp_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+   +
+
+ +
+ {#media_dlg.shockwave_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/all-wcprops new file mode 100644 index 0000000..7dcc212 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/css +END +content.css +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/css/content.css +END +media.css +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/entries new file mode 100644 index 0000000..4528c6e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +content.css +file + + + + +2010-06-04T12:51:45.218948Z +4d548fc3798c1aa73988281f67b45654 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +530 + +media.css +file + + + + +2010-06-04T12:51:45.218948Z +ed1c69491da2f06b560e2167505c405f +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1271 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/content.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/content.css.svn-base new file mode 100644 index 0000000..1bf6a75 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/content.css.svn-base @@ -0,0 +1,6 @@ +.mceItemFlash, .mceItemShockWave, .mceItemQuickTime, .mceItemWindowsMedia, .mceItemRealMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc;} +.mceItemShockWave {background-image: url(../img/shockwave.gif);} +.mceItemFlash {background-image:url(../img/flash.gif);} +.mceItemQuickTime {background-image:url(../img/quicktime.gif);} +.mceItemWindowsMedia {background-image:url(../img/windowsmedia.gif);} +.mceItemRealMedia {background-image:url(../img/realmedia.gif);} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/media.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/media.css.svn-base new file mode 100644 index 0000000..2d08794 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/.svn/text-base/media.css.svn-base @@ -0,0 +1,16 @@ +#id, #name, #hspace, #vspace, #class_name, #align { width: 100px } +#hspace, #vspace { width: 50px } +#flash_quality, #flash_align, #flash_scale, #flash_salign, #flash_wmode { width: 100px } +#flash_base, #flash_flashvars { width: 240px } +#width, #height { width: 40px } +#src, #media_type { width: 250px } +#class { width: 120px } +#prev { margin: 0; border: 1px solid black; width: 380px; height: 230px; overflow: auto } +.panel_wrapper div.current { height: 390px; overflow: auto } +#flash_options, #shockwave_options, #qt_options, #wmp_options, #rmp_options { display: none } +.mceAddSelectValue { background-color: #DDDDDD } +#qt_starttime, #qt_endtime, #qt_fov, #qt_href, #qt_moveid, #qt_moviename, #qt_node, #qt_pan, #qt_qtsrc, #qt_qtsrcchokespeed, #qt_target, #qt_tilt, #qt_urlsubstituten, #qt_volume { width: 70px } +#wmp_balance, #wmp_baseurl, #wmp_captioningid, #wmp_currentmarker, #wmp_currentposition, #wmp_defaultframe, #wmp_playcount, #wmp_rate, #wmp_uimode, #wmp_volume { width: 70px } +#rmp_console, #rmp_numloop, #rmp_controls, #rmp_scriptcallbacks { width: 70px } +#shockwave_swvolume, #shockwave_swframe, #shockwave_swurl, #shockwave_swstretchvalign, #shockwave_swstretchhalign, #shockwave_swstretchstyle { width: 90px } +#qt_qtsrc { width: 200px } diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/content.css b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/content.css new file mode 100644 index 0000000..1bf6a75 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/content.css @@ -0,0 +1,6 @@ +.mceItemFlash, .mceItemShockWave, .mceItemQuickTime, .mceItemWindowsMedia, .mceItemRealMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc;} +.mceItemShockWave {background-image: url(../img/shockwave.gif);} +.mceItemFlash {background-image:url(../img/flash.gif);} +.mceItemQuickTime {background-image:url(../img/quicktime.gif);} +.mceItemWindowsMedia {background-image:url(../img/windowsmedia.gif);} +.mceItemRealMedia {background-image:url(../img/realmedia.gif);} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css new file mode 100644 index 0000000..2d08794 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css @@ -0,0 +1,16 @@ +#id, #name, #hspace, #vspace, #class_name, #align { width: 100px } +#hspace, #vspace { width: 50px } +#flash_quality, #flash_align, #flash_scale, #flash_salign, #flash_wmode { width: 100px } +#flash_base, #flash_flashvars { width: 240px } +#width, #height { width: 40px } +#src, #media_type { width: 250px } +#class { width: 120px } +#prev { margin: 0; border: 1px solid black; width: 380px; height: 230px; overflow: auto } +.panel_wrapper div.current { height: 390px; overflow: auto } +#flash_options, #shockwave_options, #qt_options, #wmp_options, #rmp_options { display: none } +.mceAddSelectValue { background-color: #DDDDDD } +#qt_starttime, #qt_endtime, #qt_fov, #qt_href, #qt_moveid, #qt_moviename, #qt_node, #qt_pan, #qt_qtsrc, #qt_qtsrcchokespeed, #qt_target, #qt_tilt, #qt_urlsubstituten, #qt_volume { width: 70px } +#wmp_balance, #wmp_baseurl, #wmp_captioningid, #wmp_currentmarker, #wmp_currentposition, #wmp_defaultframe, #wmp_playcount, #wmp_rate, #wmp_uimode, #wmp_volume { width: 70px } +#rmp_console, #rmp_numloop, #rmp_controls, #rmp_scriptcallbacks { width: 70px } +#shockwave_swvolume, #shockwave_swframe, #shockwave_swurl, #shockwave_swstretchvalign, #shockwave_swstretchhalign, #shockwave_swstretchstyle { width: 90px } +#qt_qtsrc { width: 200px } diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js new file mode 100644 index 0000000..4bbe367 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.MediaPlugin",{init:function(b,c){var e=this;e.editor=b;e.url=c;function f(g){return/^(mceItemFlash|mceItemShockWave|mceItemWindowsMedia|mceItemQuickTime|mceItemRealMedia)$/.test(g.className)}b.onPreInit.add(function(){b.serializer.addRules("param[name|value|_mce_value]")});b.addCommand("mceMedia",function(){b.windowManager.open({file:c+"/media.htm",width:430+parseInt(b.getLang("media.delta_width",0)),height:470+parseInt(b.getLang("media.delta_height",0)),inline:1},{plugin_url:c})});b.addButton("media",{title:"media.desc",cmd:"mceMedia"});b.onNodeChange.add(function(h,g,i){g.setActive("media",i.nodeName=="IMG"&&f(i))});b.onInit.add(function(){var g={mceItemFlash:"flash",mceItemShockWave:"shockwave",mceItemWindowsMedia:"windowsmedia",mceItemQuickTime:"quicktime",mceItemRealMedia:"realmedia"};b.selection.onSetContent.add(function(){e._spansToImgs(b.getBody())});b.selection.onBeforeSetContent.add(e._objectsToSpans,e);if(b.settings.content_css!==false){b.dom.loadCSS(c+"/css/content.css")}if(b.theme&&b.theme.onResolveName){b.theme.onResolveName.add(function(h,i){if(i.name=="img"){a(g,function(l,j){if(b.dom.hasClass(i.node,j)){i.name=l;i.title=b.dom.getAttrib(i.node,"title");return false}})}})}if(b&&b.plugins.contextmenu){b.plugins.contextmenu.onContextMenu.add(function(i,h,j){if(j.nodeName=="IMG"&&/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(j.className)){h.add({title:"media.edit",icon:"media",cmd:"mceMedia"})}})}});b.onBeforeSetContent.add(e._objectsToSpans,e);b.onSetContent.add(function(){e._spansToImgs(b.getBody())});b.onPreProcess.add(function(g,i){var h=g.dom;if(i.set){e._spansToImgs(i.node);a(h.select("IMG",i.node),function(k){var j;if(f(k)){j=e._parse(k.title);h.setAttrib(k,"width",h.getAttrib(k,"width",j.width||100));h.setAttrib(k,"height",h.getAttrib(k,"height",j.height||100))}})}if(i.get){a(h.select("IMG",i.node),function(m){var l,j,k;if(g.getParam("media_use_script")){if(f(m)){m.className=m.className.replace(/mceItem/g,"mceTemp")}return}switch(m.className){case"mceItemFlash":l="d27cdb6e-ae6d-11cf-96b8-444553540000";j="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0";k="application/x-shockwave-flash";break;case"mceItemShockWave":l="166b1bca-3f9c-11cf-8075-444553540000";j="http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0";k="application/x-director";break;case"mceItemWindowsMedia":l=g.getParam("media_wmp6_compatible")?"05589fa1-c356-11ce-bf01-00aa0055595a":"6bf52a52-394a-11d3-b153-00c04f79faa6";j="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701";k="application/x-mplayer2";break;case"mceItemQuickTime":l="02bf25d5-8c17-4b23-bc80-d3488abddc6b";j="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0";k="video/quicktime";break;case"mceItemRealMedia":l="cfcdaa03-8be4-11cf-b84b-0020afbbccfa";j="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0";k="audio/x-pn-realaudio-plugin";break}if(l){h.replace(e._buildObj({classid:l,codebase:j,type:k},m),m)}})}});b.onPostProcess.add(function(g,h){h.content=h.content.replace(/_mce_value=/g,"value=")});function d(g,h){h=new RegExp(h+'="([^"]+)"',"g").exec(g);return h?b.dom.decode(h[1]):""}b.onPostProcess.add(function(g,h){if(g.getParam("media_use_script")){h.content=h.content.replace(/]+>/g,function(j){var i=d(j,"class");if(/^(mceTempFlash|mceTempShockWave|mceTempWindowsMedia|mceTempQuickTime|mceTempRealMedia)$/.test(i)){at=e._parse(d(j,"title"));at.width=d(j,"width");at.height=d(j,"height");j=''; + } + + return im; + }); + } + }); + }, + + getInfo : function() { + return { + longname : 'Media', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + _objectsToSpans : function(ed, o) { + var t = this, h = o.content; + + h = h.replace(/]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi, function(a, b, c) { + var o = t._parse(c); + + return '' + }); + + h = h.replace(/]*)>/gi, ''); + h = h.replace(/]*)\/?>/gi, ''); + h = h.replace(/]*)>/gi, ''); + h = h.replace(/<\/(object)([^>]*)>/gi, ''); + h = h.replace(/<\/embed>/gi, ''); + h = h.replace(/]*)>/gi, function(a, b) {return ''}); + h = h.replace(/\/ class=\"mceItemParam\"><\/span>/gi, 'class="mceItemParam">'); + + o.content = h; + }, + + _buildObj : function(o, n) { + var ob, ed = this.editor, dom = ed.dom, p = this._parse(n.title), stc; + + stc = ed.getParam('media_strict', true) && o.type == 'application/x-shockwave-flash'; + + p.width = o.width = dom.getAttrib(n, 'width') || 100; + p.height = o.height = dom.getAttrib(n, 'height') || 100; + + if (p.src) + p.src = ed.convertURL(p.src, 'src', n); + + if (stc) { + ob = dom.create('span', { + id : p.id, + _mce_name : 'object', + type : 'application/x-shockwave-flash', + data : p.src, + style : dom.getAttrib(n, 'style'), + width : o.width, + height : o.height + }); + } else { + ob = dom.create('span', { + id : p.id, + _mce_name : 'object', + classid : "clsid:" + o.classid, + style : dom.getAttrib(n, 'style'), + codebase : o.codebase, + width : o.width, + height : o.height + }); + } + + each (p, function(v, k) { + if (!/^(width|height|codebase|classid|id|_cx|_cy)$/.test(k)) { + // Use url instead of src in IE for Windows media + if (o.type == 'application/x-mplayer2' && k == 'src' && !p.url) + k = 'url'; + + if (v) + dom.add(ob, 'span', {_mce_name : 'param', name : k, '_mce_value' : v}); + } + }); + + if (!stc) + dom.add(ob, 'span', tinymce.extend({_mce_name : 'embed', type : o.type, style : dom.getAttrib(n, 'style')}, p)); + + return ob; + }, + + _spansToImgs : function(p) { + var t = this, dom = t.editor.dom, im, ci; + + each(dom.select('span', p), function(n) { + // Convert object into image + if (dom.getAttrib(n, 'class') == 'mceItemObject') { + ci = dom.getAttrib(n, "classid").toLowerCase().replace(/\s+/g, ''); + + switch (ci) { + case 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'clsid:166b1bca-3f9c-11cf-8075-444553540000': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6': + case 'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95': + case 'clsid:05589fa1-c356-11ce-bf01-00aa0055595a': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + + return; + } + + // Convert embed into image + if (dom.getAttrib(n, 'class') == 'mceItemEmbed') { + switch (dom.getAttrib(n, 'type')) { + case 'application/x-shockwave-flash': + dom.replace(t._createImg('mceItemFlash', n), n); + break; + + case 'application/x-director': + dom.replace(t._createImg('mceItemShockWave', n), n); + break; + + case 'application/x-mplayer2': + dom.replace(t._createImg('mceItemWindowsMedia', n), n); + break; + + case 'video/quicktime': + dom.replace(t._createImg('mceItemQuickTime', n), n); + break; + + case 'audio/x-pn-realaudio-plugin': + dom.replace(t._createImg('mceItemRealMedia', n), n); + break; + + default: + dom.replace(t._createImg('mceItemFlash', n), n); + } + } + }); + }, + + _createImg : function(cl, n) { + var im, dom = this.editor.dom, pa = {}, ti = '', args; + + args = ['id', 'name', 'width', 'height', 'bgcolor', 'align', 'flashvars', 'src', 'wmode', 'allowfullscreen', 'quality', 'data']; + + // Create image + im = dom.create('img', { + src : this.url + '/img/trans.gif', + width : dom.getAttrib(n, 'width') || 100, + height : dom.getAttrib(n, 'height') || 100, + style : dom.getAttrib(n, 'style'), + 'class' : cl + }); + + // Setup base parameters + each(args, function(na) { + var v = dom.getAttrib(n, na); + + if (v) + pa[na] = v; + }); + + // Add optional parameters + each(dom.select('span', n), function(n) { + if (dom.hasClass(n, 'mceItemParam')) + pa[dom.getAttrib(n, 'name')] = dom.getAttrib(n, '_mce_value'); + }); + + // Use src not movie + if (pa.movie) { + pa.src = pa.movie; + delete pa.movie; + } + + // No src try data + if (!pa.src) { + pa.src = pa.data; + delete pa.data; + } + + // Merge with embed args + n = dom.select('.mceItemEmbed', n)[0]; + if (n) { + each(args, function(na) { + var v = dom.getAttrib(n, na); + + if (v && !pa[na]) + pa[na] = v; + }); + } + + delete pa.width; + delete pa.height; + + im.title = this._serialize(pa); + + return im; + }, + + _parse : function(s) { + return tinymce.util.JSON.parse('{' + s + '}'); + }, + + _serialize : function(o) { + return tinymce.util.JSON.serialize(o).replace(/[{}]/g, ''); + } + }); + + // Register plugin + tinymce.PluginManager.add('media', tinymce.plugins.MediaPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/all-wcprops new file mode 100644 index 0000000..bf2df35 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/all-wcprops @@ -0,0 +1,47 @@ +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img +END +quicktime.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img/quicktime.gif +END +flash.gif +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flash.gif +END +flv_player.swf +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flv_player.swf +END +realmedia.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img/realmedia.gif +END +trans.gif +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img/trans.gif +END +windowsmedia.gif +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img/windowsmedia.gif +END +shockwave.gif +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img/shockwave.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/entries new file mode 100644 index 0000000..26fdf35 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/entries @@ -0,0 +1,266 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +quicktime.gif +file + + + + +2010-06-04T12:51:45.375615Z +9a6a9fdead205b125c07ea37e71ed4f1 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +303 + +flash.gif +file + + + + +2010-06-04T12:51:45.375615Z +6c69b02015d09280332ff8b07e4ea2f3 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +241 + +flv_player.swf +file + + + + +2010-06-04T12:51:45.375615Z +fe011e9725b2722b59bb8ef4991bf6bb +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +11668 + +realmedia.gif +file + + + + +2010-06-04T12:51:45.375615Z +b9734ee16d790e67bea01046feba28b7 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +439 + +trans.gif +file + + + + +2010-06-04T12:51:45.375615Z +12bf9e19374920de3146a64775f46a5e +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +43 + +windowsmedia.gif +file + + + + +2010-06-04T12:51:45.375615Z +c327cd167b3a7bc263d908b0d0154ead +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +415 + +shockwave.gif +file + + + + +2010-06-04T12:51:45.378949Z +baa643b587565755157618032dc93e3c +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +387 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flash.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flash.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flash.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flv_player.swf.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flv_player.swf.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/flv_player.swf.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/quicktime.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/quicktime.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/quicktime.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/realmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/realmedia.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/realmedia.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/shockwave.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/shockwave.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/shockwave.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/trans.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/trans.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/trans.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/windowsmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/windowsmedia.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/prop-base/windowsmedia.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/flash.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/flash.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..cb192e6ceda8d19ad8e7d08dd1cfde0aa72ead2a GIT binary patch literal 241 zcmVOzlLa+Za}7>m0&NpCfJ0FQc3~F7DE)S%o1)Qi1n@vxX46qnD4hRS-NE*Pw!4UvE=#^N( literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/flv_player.swf.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/flv_player.swf.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..042c2ab969e98a6fdbe08848c4a73bd2c41de906 GIT binary patch literal 11668 zcmV;FEo;(4S5pYUVE_PloV|PrTvNvr@V+F3a36As0Rb-#MGjBSfQpD35b>z>Admpj zkkAkitwp@*Rqv`rs-o69lDZ&@y{HKo3{JcK8Rt^ z72Hab0Fi(9n@~bYkV2y_)Fy`HtF#7{J|rojb4e1a7ekY%Jpqu!GtXQ6#>m0qvY zqk05XkPr<=DTomvJ9PBuQB+V+fX0s>j}|Rjgg*T6Llosb@Z|f-K0(8m{He?6zo^!s zgW%o|yBiCa{N=g3_eV+xKc?-B?2)mXBGanczVGz$;(Jq8W!}yB$#d7jwz;Cki@c`f zWnSDHobzK#aT@9u=8^8x_Ib_e#Xl4Y`Zer+8u>-bA6`uVXi-Ep^6uWh%d8KaJS&g= z)KA}qY1=qz((;kczfDdZmcI1pls2gC!tgBV;pBqfKiK7u7MDbR)&C>$gyc05A7uO} zTU6zl(L392O7^D-J^u?tL2G}Nl|dGb6UZS!lq5p+9>gp}0$|zy zkSG#qbPAfg3zp?lIyJ5j#n!UMW{%nE-W&j!ZI})Q-KC5ph&MP(<)Js zTB%fN`{MEmC|{-4pi+ZEZQoGP^zA& zLSxF+rRqEl+hmTqSfx>GRVc3zjiF2!xFY<5N}=@HB8fb_IYAXlu?mZ7o| zrNW>xk}{1xtqwkmRR+Z{LK(lMQ+^9H0Gff% zJX2#B5lWP0dWAs^!o=T2Duogl*TKM!LUG8TsxY9=AQJ=bIZ~7vbc1o5C@Ly0DylPi zB6X=;AxGtErAn8jC@Te$;}vQ{nof_KL}N>PDKwfqMgBNcpw_5zCX}d9MX?4f1q5BH zQjIf;K8tpwpGg@hdc9%-(x|kBAc=g9I)9w8e;9k(1AMm0;^LIo2w|sWvCp)nqQ>Q7OIBoG-c3dwN`BaqJ6M4 zOw%ihS>0nCrK&(trZKR9V0>jIgTY<~VtawF!NoeAp$Mx6j|!@8ZhRE#47wDpaxk_w zZ9bB#483$(tty`=BA>qE(!oTHNMSH2@{4Fs^2!PdRC?S%DtRNC0b9$_Vc`%-0KWsl z4tpyM3N%(xt|-mdt4j=V07SGG+5vUw2tQ$nS`eWC^bEjRP@go6ZIn-bkt%;2?kwgU zO4Mu->COPIH>?q}HbxaOMi1RbgUQ$i;+&MUN@8Pb=p;x%p_xEbqg59ZRT$-mKTO69 z!yNNKBTkW_Sd)Vd6GVm$l)xKwg@qbbTA4-zomHu{D2EgTnM#5}(?In_K|MQ0b&T%O zv0GG-P9IbR152e3=^iR;{1rz?#t z)>Wug`QQd3^L53YQGQveL060kl%kTdQtS=buB4W!HHLm#TBTH%Vl9C#4A_6@i(xPp z0H1>?=P*pb)mTQ;z)w9I8i3J zGPPErptgE+fycR@b$bnIc#*`@ZkZw?a&b6jjeW{^Wky@if#fot%>Nv=VB$=K+nQI}A85~NO@ z;yQJrXo!Rj&atr$y{rUU0DqzfQ5x9-^=WZ&iLR8b!m3t6j%Nl|TsjW-XP^RpW0y9R zhP+-d-V8_q17$oKlV7ICVlALkB!tps zE=VF0Ble%j&I#b{0T@Z_2zhaKCjMnF^;{`HJ&_4XA`*&3d`O3Er%bk5gd~pmH+)It znbiW+kwX*{M7GXJ?zGGS*{0%58U#Gx`7~4m%Z`L)7pW(%aUnJJTn)6*ft2iR7Iw3Z znpPZN@N|_gb3zg~qbxEpv+g2+$k8dl1mz*ez4H_aGEHSIXqm)a$}99Dg(4FOJVoT` zF71o?!4380A$b2cghV3(70zUH=6T58JY;@}r<@RyTD0u*Pmm=98RR|u-!^aAaUUze z8>@VclI3idkLdT(+Lr%Ko{SN}U&;q{HG$&s0FdcqSlJvH{+vyVLnPq?r*F@f zI(GNCT^@`l*P=*lge0iA*jh0`|H2;4^c3_8_W1AAc8TG87F^PSQ{+oVDu`nU;@iG8 z;vq}KLoA|{0}~NhXPUk|O<%OPAYVbc=K!GXi+oKrPI6A?=_HQVB5DyGY*<7n&muwz zb_bqCbdZ{0Y*|FGr9}i=TSTyJiwL%~i2wf{3jYe@=PgD%vZ``2+975(sa(J|3?zK`XS zCPH@M=z<8-?L@qnB$6O^CS9QKQF0gO01Oe$hwvg0F;ZM7;PSCftU5c9FPeN}92aNX zJ)&6AELQYC!iqIZVxz4R>u6(Q%}049n>O|k;1Y;#&B3~48`DlBDA67UcD5!;=cNR~ z5z5oqnHR9%RmAkAw8&i4s#egK;)3&KB;EQFr{9-OUIo1A6c~MXkx0^m^tGpyrtWc4 z5*?grbm+;BQz-F5X2{S`cS$@!iI!UM?vTwXBb|=$7L*zfFd>oFNN7!>)a)~f&L*o# zBu$o*Dpy)1BQ2!#BLIGAnzzNWWgo3FGz<}5Q=3N&Ld)DuR!&)>O6ir2rwgqaGZer$ zPe}GAC4I;C4(UcYG&kSQC*iq$#*dZPR6H|7GI$(EUZqD<)EmqGE z5{9GCc>STP37J;w3t2plEqN#;ZX$qVfse+8N}5XAA?!kung=sUpcxnFfSnvE9|X#A zru!@qgVd-snJs3wr&1dnN0c69OC2_K6w$omI*~OLPg_;d%~Ulrf^z5x8e;N&&^yATxs&TCd(CJ-oKnKR{%vS@4$o+Gkt zxBzVWE=cmaskM=^fMpWID(ZCtJSv+o5Q#sz&X1M_un~|ep=t6M+DfjeoEor#mgiZP z=V$XGsdByxKDJ;t7KwCuW6@0p$F@L-ZHznszqW=~0ey{u*BCkBAx8SrP)!$wW27|5 zHXo#g|1AuYm1L`0VPA?1JoNwH z!O&Q!<|o|V)H|xB{FO2q7z+qVHPmGUurNdj#8o=5l`+x)YkblXKxu} zY1pIn!8U9Xe8ph7G54UWcVpXwuyBQ>l{AyLir$j2H2_niPKMa%IEhA@Ip2e~ql%Cq z3>gTiwx+y>&JL`{1@#X+v2#PHt*JY7mQkGTYr7jPw_4z%rH#E%@WWx~3eH4``?H(? z>9TFkid>wHRwdx)Sg$mT(h^a1FwUH?#3Z4{*;2qOio%A82Acs;1;+W-c$n|4BQynB zW>)?-axt3wM7%6Zvz4a2Bogx+S4|7cGXV%KC2S>9mm7|-Hx!`eydmpUtH}s_so&(B zE2T|s)dAU=h3FEJagx|=hb$_H-SCbWfR779LVWVThoM4#LvFN2y^QAgPT1ez5^!~; zl!+lCA#cKE9)FFQ25~^m1z`(hgN+S}EK?!}zRw1Rz{V`uf&e!;C)O>n;hM$S#sWTS z87K1jZpJeJWW2|7;S(sAvnYeNHM9RLe4ZRvd)NEI@U5|8|ugIm>8*) z%Xx#>#dM|vvCDS@yAV4XKnIFN?mQ9t7p-u2uTI5g!rSAg=0sTaM4%LmVC+_ECIlO^vs4JDBLZ&EVS!{J z#9?oX!&jhCh`|D!%Px{EmMoFHOFEUx69E0k3%VG9WIO3(m4I$`E``xZ`m&5&SP_Z@ z@=P1`%gOZNJ@Xi40aI;j2bT{6FDuwJObgVE`FKMaJ1Z~Novbho|C&T!TR86#cN9cOdLp7vK^BoISnGxtn8HG0&H;#R4W6qxVVEbs z{H+x}c$g1 zpG_0Fp2+tVpg*KBj6CTEJK)phF7v2Ea!<3fS#%hwmFNUApVN~*M#px}TbN-#q9@OR)B3i*0Q?^Cwv)$r*hsAeC%Bl|``w0>2 zQXo(LOr7Nbv;hWhpW1=MeR(JR7~~L+BwBn9`y831_Ay0{0Bc7Nv0osPNOsDpoQS($ zMI0MjC=#%zNQkfdjKF;^H!kgQMQL*5J}6i8g`5UcUePW&jiS7w-SU~-p)!!K2WAHc zPZ5MsAxU6TEu3ioCT^e`kM0=LS8Fq{L3M8t!#5uhW7~Sz@>ejP z3IDH*!`tGFCrshO&}pF=7Ce_)iO1YlxRqRPL=j7o3a|kQAvy}l>Ob~)mQ>;SB|Eor z#91Xi@+81QB$E=l<4t7)PM+7M$)E(1J#-&NBsPa;2Q_O{LYN2Ar4C2p4EGvsO~7sB zh(u(uLLm9Vj0jN^TeI7&M#QUGArfX%YBo)Yk0xNbvLjsC3F(@X4+%qdbjm7_d__c1 zoJ}XP=E2FAJ(o~#)e-bfJCErSUp9k#7yx8jeHd!3lYq2=Mv17SJz*Uk%lnkG1 zvRq(>+w8J{RRtM*afr_=%Cu~Yzjk1Ch``(8uZ}>4;b?`(B+Y}SR{7#Rlt8h6EChRp$6lOftRMFA0$ZuGMvhL!{1Vd4Tsq%M#rM4oAw z9iKIpnk}!>m3x~eZYD)?2uzqsw;en&QKMxDB@J{XKdgB=4P;k@hsT$`6F!RKK!+a3 zr8A#t_WTVyH>G9Y(IYTsW&3TEnRl3&TsPkM+-Hp4=01_{%|?*5)NC7AjFsO!Vw5^J z*E3u6wIEAFM1zzbo(rV=o+2aXPR3A2asW%-_rH|){mt;c-v;mdU!8X&Su^_vJgdKI z5c5E2Cf3Z~H?YV2hw+TK`BUC2ZHyUqo8D*`_V{ShTtv??#=jETnJ*X_MI$|1bXVa5AVDKCif@+*5fHKbb^HrG6?P;jBm9rosSX{-zLOxtv=$mH}G z6p@{UQ{4<9cW?!q!XkIYV zbYN4jadEs{(<1A%-dJmvr;8?@E}HRV#O86vFI#1!m4Cx!KYsddA@y`t>U>C3_U_6* zV06h6lqBwa#8tKtFDF{&>^4`>`2PQuSa3CC!S&y;VBrRhg|Etjj~NR-|BMBCp3b&j z`m@bM@L~K+L)v1=By*W3lE_S3=Qv(qZz|vx{cwSkacP3qTp=OxYIXwt#owX#MXWRC z2I4ic$rOZMx>B<}(HAv2;J%CTl_K!FUhE3bZXyiCuooUAyWx{D_V81SDhLd|?4rFG zijE;@0+GuR>dBh~6`@vD2xS3weSJN0ciGl}>_16wwb}LCM(qXmq6`P_q6`VWD5KtP z9y}eqwYSFCDg{O)>u5$QQ<`O({-1kWbW=~p;X14q7^+7)lR35F$=-NUu zvPRh$+wM{~G~fbyuR10#SEy`oDW84jwe{as4Q$Vh8#nX!vp!!s{l4|b6A)paKYtztc{PL;U2Hrgo-;L}^M>h-(x}{F(}Fl2JvbY2XKe)G zzv1*mBbH=O3;Gl)F$s6?v02LTIevi;rUCD$H9)igjw5AA@{mFI?%e~3xeHOC*PCnS z_s~YpI0VFf0LTmQ-@(LNpkqX8|S(sH6w)^49?S?t6rsux-nX{OQ7xcTjO4 zib5%<6m3C=kQYII>$u&1hb&+- zy1(7NxC#mm*bQeMWeGoN2<(Q+LxtZqxE??i7nlpRZmm$f7jv`LUR9NlgTd!i1uVlP zZcber^Vab9D?*uj@om0tK)DIt2If*N;7$Al!;P&<=!hO{2fV~WO!BjaKp2 zS>ORQX&ovbE<9HP_3;{L$MrHM+5l|a&jOa9&C9uzha0&-E50NBF25k$Cv!cE2_BHS z9zo?BfoIweXpr=AeHHKwv~EMM-}GW`<=W4v;(AKRy4j)l9NaZ;1Y`-z6&sn0xj?pJ zIBw<$Zia~GVHOqz{w7_n0g5?HCtQOv*%goIoeF=mCQI`sf00#FQ{Yapg`Km&7TiZr9a#b62OAn z&e=44;$C9CRG>}9k9ZA2olqp|3@~-k8Y9% z&ST3*L|@&W8^77v86`V(0e}Ex=K(IK;!=LD-;2g%*Bwo5?>1#lxiY!q&yq*8qlKfc z%c@hhj@jt(;rH_|uW>|f2cu8WY$Fi-=VtJqOs@cRQHE$%)}mo^$vUZbq033u@3rRq zULfat0}#$zvVeI^XLJxcV$@knZbuj=$%9)syjFe@Ch(GcSt2FE^S+qcp@yt>)=}+ zp7Rd1*f!OzHYLRWk%PPAzKkx)xrM&N)@G;oJ~=0&(pWs=gcaHA; z^6=hWPd2UUC+}7lTOZrh)HBxq*b~>f!^*r~5Q?`AU0+$>`HzW-Yeq)aO_4SH{pisn z?|V-w67uRUPJdADbpD?A=#PEp9l0&oayDb@`FoY0Uw)oEG|*XGQh%MXuT;JE_L-kV zpI@H$qD{}+L$}->ziZ^=aUb3Zzkj0y^;?`PQH2+l5Hxu`cp5Yt5)bWqGaf=jwKh$-(Q&1N?>7CyW-dc2S zYEg^qP49l)|EhNRIfwI$4nB^lcHVk^od2mJ=Zd6(J8%5`s3QG9-k{s@D_w8D5pW{s z_nV`$$It4$w&9J0Q3rdT3i5We8!~xQ&f1-6ZioIpUGw&By~ErCQy+SKmp|~0>lFz; zes2%Dcjxib+-^1do<0BY>7a-ckE2$fP?t#USFe`-@#mzZDObYI-6+}kJl20+-nOCZ zUMvj^jb14~n-mgXJ>VNhcbEU(>e7SH-b-)$x6j<$N1m)ZfA6&oXTqlMSIquB zE99D;zJB=P%UjQmt$(^}Y^C7NUbi{ab+qG#f3LQD*HK%tQR-vwQUzA?jKOD9j8+pr z_vbA4gU>@8yM^S9ThqEB&2EQB@{~C~i^pj{9dueUHCGipYvZ=zug(2tSep?a);)Ya z-`~5>fx5!C2j(t+^Ycqnf`dydW1FgDPZd?3?^sY*?KX3N>aLN?ChlGJ{e$uuc{>i- zPfMA5Sozm%mx{fkcZ~jc$%FF#ADxewuy^#`6eYH-(&wm0m!KPE&X`1ahru5lNNy4-v#Y4z7m>$4r6*{y5{>$+}`&)$ogkp6{L zb+u1tC}TD~%-(QjU(bLAeU)pj71XWKcqRJGU9vA%<}=ss#|a66*-5L1JuUxoUP95Z z;XUj-9y}n~|M$KNlahvYN#8Y6es)Z#SIN1P(@uAI|5lG*oZ@SaJ-h;@GJM&PJ9nNu zi~h5+e$nfZ%Qr4n_$hOLb?Z?@1DMc%n(qEF@fz6fqV(Pw8_r~hFZH}z`KZh1eYTu^@!PMP zpCT7u{}^f}9gJqu-lmx}IRulqCouYb;$GX~NHaq$WPkwmK^MT9!i?55c;J?lL0*6K z4QMryujzI{$jKq5F--kksSxZ$3G` zt;2~!o6hdKT6g}^xL@lQ$e&znH+;%`;xUom#wDfh&{6Lp10kLLEiw4a}; zIDuAP)Vv)ChJEZIV}o1o=@sDa)R-{;C&PD%3r9w7c-q;^@xr)`%QQgIBU$tI$DsPM~TZtCLia_!cmJ!8M!6F&aStJ$fNQ6HaQG3CS6elc5S##RpqA0r{AvF=pozs2fVM3+IQo9{D96nf>VEXn9-D_xI)gr)#o&!{AM4$5x!LikG@>R3)vx<(x9wr`O?v zx;z`iKeD|p0{m(CIbk`T0D)PFb{oHGI@ASBp z?bn88XucBp)SS8ZN9)RucIyr_x^|#O(#dEf9baN3k(`lq;?@whfRS`2>oa(3w>^U( z8G;NAfP}~s=W@QdScEgR_r8=Nr|fA##%od8G)@eO)q(D5L8z0=5%Cf$d}}2OA|W8X zF^F#iFD=7YsMd=y|B;Sddgd~;u@mCK&?{E!#eo>gnS*i~IQ1m2Esd%G!-QZMSDbiq z%<>2sFFR#h^gzAC82hU|g?s{WV}mbgTK#ceruOOfj6{MDrJ) zV!6^5v~;pVdw6z%X6R-7R7di^MB2Q%&x%H9~#H-8QIUz(Ln45_OAge~rzKY(Z zN$kU;1MVY}0BlLWpOS+YO}Wd789{x0eG|TgoBS|sCOf3TYY$LYg8hB>#s`+_y5EFy z)CP?zNLLVKC{hI#Xv*>By!Zl9Y?VO+bb3{Bkh&x?G7?nZ1~7U8t+<1>X7Cr9P*hA@ zOftB+zizKzKBewZKps5XY6i;Ke4&Bn>%d3@Tm6gZ+=B0g9S(D!OZdT|wxoI+8 z=+X?B&#f8#aj$Jdr=_iXbU1Iv$@eCYi}L&8uYq0s*DpNME6Ba7pw8jFmRg36;}QujUXdwq|5!y7UViX(-j1q2 zCO&6&PS`Pg&$~x%?|G3J=mtUyJTxi2e)?M*&Rl%_>yu~Glc(L^R99CwFDLx=ql49_ zeSLkMV=51<-k$vM;5GI4x;NhV!}+hp7n4G6B~HHC?~~U5@tu31aCUEf*~E$8&FUR; z?a9oyI&W`U-FtGb{9H+o=@2;oY<>5#r{j!=ZqHro>i7MXyK}^XNA^D~_mPOMM+t}3 ze|_=3Wb&TU`%SO6(2ZQZqf&|yfMthy(G*fa6>Yl^Hx8=GtqqH9}^n3 z?n|l4A|t<=x|*Yb?<6<<7TA&>f9U>1dpj5?ep3Zerh8l2F(?MB_nTf-LE=C)bwEc0 zd=pU2pqcEdMpN>MhiCy_w@5%qF4s?{o$NOgP4-e7%Us?WKuxEPeDVi{|B8v^R zB>cGn?UUW+E~#=aaYWFkwhoKc;CAT!w6v!!;h98w>O^~*NS!XbLWOrSlF@Laq(1%H zwQI=TMN<`1aa?+*WrOkuCFk2^oD7pW8IFQy3V04~Lb8bZ?L&=BI^DTJ=v^#E8S4m$fXGF-bTg^FJ?Eia`h^T literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/quicktime.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/quicktime.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..3b0499145b16138249f653a1a3f2c80230fb292c GIT binary patch literal 303 zcmV+~0nq+ONk%w1VGsZi0K^{vH>m7Qv+~s9^fsC5ZpZP=*zu3F=Jxpf8k_5u%JNv6 z=md-84VLU4w)kSE=yI&-yw>b=v+SqE?+kq47pC+YrR?bJ^yu>Zyvpn;hTp*6^mM!O zu+8$^=JX7bb<~J01ZTA{q@86#&8&6~H`Ss{{?p%K!-p%L6P2TpFYz90?pD06UU# BbnE~C literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/realmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/realmedia.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..fdfe0b9ac05869ae845fdd828eaad97cc0c69dbc GIT binary patch literal 439 zcmV;o0Z9HwNk%w1VI=?(0K^{vQcz8xz}f&njBB06v9GQ`Jv%NdDHCI&z`wqZw$(Lw zuFTBL!Pe#<92tv>h)9OE1Xh}vnVEHSaeb-GByg#tqM_B*)YRkdSdqTuipLaF8n=^^LJP4|1^gGRdo_Rl+a*grZQ1hw@Zo1ikN$oB{QbRq&z?QIckdq1aE3;Fq_(WV>Kc7gjQtQh+9OrtFhn-)LUqD<|MOIl_!(Ed#pPRE;S)g;ew3>pd zn`Wa(lc2DGa)peFw3f88dp-|`@*)AXj;@(8hwDr|7Sxsp;&YxjN*Y{PBB!TIU|!b7Zgv0OaG5)&Kwi literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/trans.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/trans.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..388486517fa8da13ebd150e8f65d5096c3e10c3a GIT binary patch literal 43 ncmZ?wbhEHbWMp7un7{x9ia%KxMSyG_5FaGNz{KRj$Y2csb)f_x literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/windowsmedia.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/.svn/text-base/windowsmedia.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..ab50f2d887a0843b116ef598e5a005e5601d18d0 GIT binary patch literal 415 zcmV;Q0bu?|Nk%w1VGjTg0M$PL`E^qkEu+z?1&N?x_*pRg{rx~kg!#|I<>uyug^O^t z0hZGrt*x!>$1C!zn`W5@`ts6_uMW)2%<0NUEKIo?SIPPE=}U0}7Z(?JcX!y=*;bF< zCWz-=h7+2ao9)(dOHM;+X=xs9)%!~xc&ICMZdRYdUQ2$^@9y(6X3NCIz{cM7f^Z=Q z1_tQ95kgl8b%R%OiYTIo7LSdE^@}A^8LW002J#EC2ui01p5U000KOz@O0K01zUifeIyT9%!RzMDgehG|mwLz+Eh; z7Z~iE zrX?OfJ^>XeDJK)xJuWOB3_l1N0Ra>g4Gk^=ED0V6LI?>4;Q|6OB{LplLMRLg8U5-E J?0y6R06W6!pgRBn literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flash.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flash.gif new file mode 100644 index 0000000000000000000000000000000000000000..cb192e6ceda8d19ad8e7d08dd1cfde0aa72ead2a GIT binary patch literal 241 zcmVOzlLa+Za}7>m0&NpCfJ0FQc3~F7DE)S%o1)Qi1n@vxX46qnD4hRS-NE*Pw!4UvE=#^N( literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flv_player.swf b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/flv_player.swf new file mode 100644 index 0000000000000000000000000000000000000000..042c2ab969e98a6fdbe08848c4a73bd2c41de906 GIT binary patch literal 11668 zcmV;FEo;(4S5pYUVE_PloV|PrTvNvr@V+F3a36As0Rb-#MGjBSfQpD35b>z>Admpj zkkAkitwp@*Rqv`rs-o69lDZ&@y{HKo3{JcK8Rt^ z72Hab0Fi(9n@~bYkV2y_)Fy`HtF#7{J|rojb4e1a7ekY%Jpqu!GtXQ6#>m0qvY zqk05XkPr<=DTomvJ9PBuQB+V+fX0s>j}|Rjgg*T6Llosb@Z|f-K0(8m{He?6zo^!s zgW%o|yBiCa{N=g3_eV+xKc?-B?2)mXBGanczVGz$;(Jq8W!}yB$#d7jwz;Cki@c`f zWnSDHobzK#aT@9u=8^8x_Ib_e#Xl4Y`Zer+8u>-bA6`uVXi-Ep^6uWh%d8KaJS&g= z)KA}qY1=qz((;kczfDdZmcI1pls2gC!tgBV;pBqfKiK7u7MDbR)&C>$gyc05A7uO} zTU6zl(L392O7^D-J^u?tL2G}Nl|dGb6UZS!lq5p+9>gp}0$|zy zkSG#qbPAfg3zp?lIyJ5j#n!UMW{%nE-W&j!ZI})Q-KC5ph&MP(<)Js zTB%fN`{MEmC|{-4pi+ZEZQoGP^zA& zLSxF+rRqEl+hmTqSfx>GRVc3zjiF2!xFY<5N}=@HB8fb_IYAXlu?mZ7o| zrNW>xk}{1xtqwkmRR+Z{LK(lMQ+^9H0Gff% zJX2#B5lWP0dWAs^!o=T2Duogl*TKM!LUG8TsxY9=AQJ=bIZ~7vbc1o5C@Ly0DylPi zB6X=;AxGtErAn8jC@Te$;}vQ{nof_KL}N>PDKwfqMgBNcpw_5zCX}d9MX?4f1q5BH zQjIf;K8tpwpGg@hdc9%-(x|kBAc=g9I)9w8e;9k(1AMm0;^LIo2w|sWvCp)nqQ>Q7OIBoG-c3dwN`BaqJ6M4 zOw%ihS>0nCrK&(trZKR9V0>jIgTY<~VtawF!NoeAp$Mx6j|!@8ZhRE#47wDpaxk_w zZ9bB#483$(tty`=BA>qE(!oTHNMSH2@{4Fs^2!PdRC?S%DtRNC0b9$_Vc`%-0KWsl z4tpyM3N%(xt|-mdt4j=V07SGG+5vUw2tQ$nS`eWC^bEjRP@go6ZIn-bkt%;2?kwgU zO4Mu->COPIH>?q}HbxaOMi1RbgUQ$i;+&MUN@8Pb=p;x%p_xEbqg59ZRT$-mKTO69 z!yNNKBTkW_Sd)Vd6GVm$l)xKwg@qbbTA4-zomHu{D2EgTnM#5}(?In_K|MQ0b&T%O zv0GG-P9IbR152e3=^iR;{1rz?#t z)>Wug`QQd3^L53YQGQveL060kl%kTdQtS=buB4W!HHLm#TBTH%Vl9C#4A_6@i(xPp z0H1>?=P*pb)mTQ;z)w9I8i3J zGPPErptgE+fycR@b$bnIc#*`@ZkZw?a&b6jjeW{^Wky@if#fot%>Nv=VB$=K+nQI}A85~NO@ z;yQJrXo!Rj&atr$y{rUU0DqzfQ5x9-^=WZ&iLR8b!m3t6j%Nl|TsjW-XP^RpW0y9R zhP+-d-V8_q17$oKlV7ICVlALkB!tps zE=VF0Ble%j&I#b{0T@Z_2zhaKCjMnF^;{`HJ&_4XA`*&3d`O3Er%bk5gd~pmH+)It znbiW+kwX*{M7GXJ?zGGS*{0%58U#Gx`7~4m%Z`L)7pW(%aUnJJTn)6*ft2iR7Iw3Z znpPZN@N|_gb3zg~qbxEpv+g2+$k8dl1mz*ez4H_aGEHSIXqm)a$}99Dg(4FOJVoT` zF71o?!4380A$b2cghV3(70zUH=6T58JY;@}r<@RyTD0u*Pmm=98RR|u-!^aAaUUze z8>@VclI3idkLdT(+Lr%Ko{SN}U&;q{HG$&s0FdcqSlJvH{+vyVLnPq?r*F@f zI(GNCT^@`l*P=*lge0iA*jh0`|H2;4^c3_8_W1AAc8TG87F^PSQ{+oVDu`nU;@iG8 z;vq}KLoA|{0}~NhXPUk|O<%OPAYVbc=K!GXi+oKrPI6A?=_HQVB5DyGY*<7n&muwz zb_bqCbdZ{0Y*|FGr9}i=TSTyJiwL%~i2wf{3jYe@=PgD%vZ``2+975(sa(J|3?zK`XS zCPH@M=z<8-?L@qnB$6O^CS9QKQF0gO01Oe$hwvg0F;ZM7;PSCftU5c9FPeN}92aNX zJ)&6AELQYC!iqIZVxz4R>u6(Q%}049n>O|k;1Y;#&B3~48`DlBDA67UcD5!;=cNR~ z5z5oqnHR9%RmAkAw8&i4s#egK;)3&KB;EQFr{9-OUIo1A6c~MXkx0^m^tGpyrtWc4 z5*?grbm+;BQz-F5X2{S`cS$@!iI!UM?vTwXBb|=$7L*zfFd>oFNN7!>)a)~f&L*o# zBu$o*Dpy)1BQ2!#BLIGAnzzNWWgo3FGz<}5Q=3N&Ld)DuR!&)>O6ir2rwgqaGZer$ zPe}GAC4I;C4(UcYG&kSQC*iq$#*dZPR6H|7GI$(EUZqD<)EmqGE z5{9GCc>STP37J;w3t2plEqN#;ZX$qVfse+8N}5XAA?!kung=sUpcxnFfSnvE9|X#A zru!@qgVd-snJs3wr&1dnN0c69OC2_K6w$omI*~OLPg_;d%~Ulrf^z5x8e;N&&^yATxs&TCd(CJ-oKnKR{%vS@4$o+Gkt zxBzVWE=cmaskM=^fMpWID(ZCtJSv+o5Q#sz&X1M_un~|ep=t6M+DfjeoEor#mgiZP z=V$XGsdByxKDJ;t7KwCuW6@0p$F@L-ZHznszqW=~0ey{u*BCkBAx8SrP)!$wW27|5 zHXo#g|1AuYm1L`0VPA?1JoNwH z!O&Q!<|o|V)H|xB{FO2q7z+qVHPmGUurNdj#8o=5l`+x)YkblXKxu} zY1pIn!8U9Xe8ph7G54UWcVpXwuyBQ>l{AyLir$j2H2_niPKMa%IEhA@Ip2e~ql%Cq z3>gTiwx+y>&JL`{1@#X+v2#PHt*JY7mQkGTYr7jPw_4z%rH#E%@WWx~3eH4``?H(? z>9TFkid>wHRwdx)Sg$mT(h^a1FwUH?#3Z4{*;2qOio%A82Acs;1;+W-c$n|4BQynB zW>)?-axt3wM7%6Zvz4a2Bogx+S4|7cGXV%KC2S>9mm7|-Hx!`eydmpUtH}s_so&(B zE2T|s)dAU=h3FEJagx|=hb$_H-SCbWfR779LVWVThoM4#LvFN2y^QAgPT1ez5^!~; zl!+lCA#cKE9)FFQ25~^m1z`(hgN+S}EK?!}zRw1Rz{V`uf&e!;C)O>n;hM$S#sWTS z87K1jZpJeJWW2|7;S(sAvnYeNHM9RLe4ZRvd)NEI@U5|8|ugIm>8*) z%Xx#>#dM|vvCDS@yAV4XKnIFN?mQ9t7p-u2uTI5g!rSAg=0sTaM4%LmVC+_ECIlO^vs4JDBLZ&EVS!{J z#9?oX!&jhCh`|D!%Px{EmMoFHOFEUx69E0k3%VG9WIO3(m4I$`E``xZ`m&5&SP_Z@ z@=P1`%gOZNJ@Xi40aI;j2bT{6FDuwJObgVE`FKMaJ1Z~Novbho|C&T!TR86#cN9cOdLp7vK^BoISnGxtn8HG0&H;#R4W6qxVVEbs z{H+x}c$g1 zpG_0Fp2+tVpg*KBj6CTEJK)phF7v2Ea!<3fS#%hwmFNUApVN~*M#px}TbN-#q9@OR)B3i*0Q?^Cwv)$r*hsAeC%Bl|``w0>2 zQXo(LOr7Nbv;hWhpW1=MeR(JR7~~L+BwBn9`y831_Ay0{0Bc7Nv0osPNOsDpoQS($ zMI0MjC=#%zNQkfdjKF;^H!kgQMQL*5J}6i8g`5UcUePW&jiS7w-SU~-p)!!K2WAHc zPZ5MsAxU6TEu3ioCT^e`kM0=LS8Fq{L3M8t!#5uhW7~Sz@>ejP z3IDH*!`tGFCrshO&}pF=7Ce_)iO1YlxRqRPL=j7o3a|kQAvy}l>Ob~)mQ>;SB|Eor z#91Xi@+81QB$E=l<4t7)PM+7M$)E(1J#-&NBsPa;2Q_O{LYN2Ar4C2p4EGvsO~7sB zh(u(uLLm9Vj0jN^TeI7&M#QUGArfX%YBo)Yk0xNbvLjsC3F(@X4+%qdbjm7_d__c1 zoJ}XP=E2FAJ(o~#)e-bfJCErSUp9k#7yx8jeHd!3lYq2=Mv17SJz*Uk%lnkG1 zvRq(>+w8J{RRtM*afr_=%Cu~Yzjk1Ch``(8uZ}>4;b?`(B+Y}SR{7#Rlt8h6EChRp$6lOftRMFA0$ZuGMvhL!{1Vd4Tsq%M#rM4oAw z9iKIpnk}!>m3x~eZYD)?2uzqsw;en&QKMxDB@J{XKdgB=4P;k@hsT$`6F!RKK!+a3 zr8A#t_WTVyH>G9Y(IYTsW&3TEnRl3&TsPkM+-Hp4=01_{%|?*5)NC7AjFsO!Vw5^J z*E3u6wIEAFM1zzbo(rV=o+2aXPR3A2asW%-_rH|){mt;c-v;mdU!8X&Su^_vJgdKI z5c5E2Cf3Z~H?YV2hw+TK`BUC2ZHyUqo8D*`_V{ShTtv??#=jETnJ*X_MI$|1bXVa5AVDKCif@+*5fHKbb^HrG6?P;jBm9rosSX{-zLOxtv=$mH}G z6p@{UQ{4<9cW?!q!XkIYV zbYN4jadEs{(<1A%-dJmvr;8?@E}HRV#O86vFI#1!m4Cx!KYsddA@y`t>U>C3_U_6* zV06h6lqBwa#8tKtFDF{&>^4`>`2PQuSa3CC!S&y;VBrRhg|Etjj~NR-|BMBCp3b&j z`m@bM@L~K+L)v1=By*W3lE_S3=Qv(qZz|vx{cwSkacP3qTp=OxYIXwt#owX#MXWRC z2I4ic$rOZMx>B<}(HAv2;J%CTl_K!FUhE3bZXyiCuooUAyWx{D_V81SDhLd|?4rFG zijE;@0+GuR>dBh~6`@vD2xS3weSJN0ciGl}>_16wwb}LCM(qXmq6`P_q6`VWD5KtP z9y}eqwYSFCDg{O)>u5$QQ<`O({-1kWbW=~p;X14q7^+7)lR35F$=-NUu zvPRh$+wM{~G~fbyuR10#SEy`oDW84jwe{as4Q$Vh8#nX!vp!!s{l4|b6A)paKYtztc{PL;U2Hrgo-;L}^M>h-(x}{F(}Fl2JvbY2XKe)G zzv1*mBbH=O3;Gl)F$s6?v02LTIevi;rUCD$H9)igjw5AA@{mFI?%e~3xeHOC*PCnS z_s~YpI0VFf0LTmQ-@(LNpkqX8|S(sH6w)^49?S?t6rsux-nX{OQ7xcTjO4 zib5%<6m3C=kQYII>$u&1hb&+- zy1(7NxC#mm*bQeMWeGoN2<(Q+LxtZqxE??i7nlpRZmm$f7jv`LUR9NlgTd!i1uVlP zZcber^Vab9D?*uj@om0tK)DIt2If*N;7$Al!;P&<=!hO{2fV~WO!BjaKp2 zS>ORQX&ovbE<9HP_3;{L$MrHM+5l|a&jOa9&C9uzha0&-E50NBF25k$Cv!cE2_BHS z9zo?BfoIweXpr=AeHHKwv~EMM-}GW`<=W4v;(AKRy4j)l9NaZ;1Y`-z6&sn0xj?pJ zIBw<$Zia~GVHOqz{w7_n0g5?HCtQOv*%goIoeF=mCQI`sf00#FQ{Yapg`Km&7TiZr9a#b62OAn z&e=44;$C9CRG>}9k9ZA2olqp|3@~-k8Y9% z&ST3*L|@&W8^77v86`V(0e}Ex=K(IK;!=LD-;2g%*Bwo5?>1#lxiY!q&yq*8qlKfc z%c@hhj@jt(;rH_|uW>|f2cu8WY$Fi-=VtJqOs@cRQHE$%)}mo^$vUZbq033u@3rRq zULfat0}#$zvVeI^XLJxcV$@knZbuj=$%9)syjFe@Ch(GcSt2FE^S+qcp@yt>)=}+ zp7Rd1*f!OzHYLRWk%PPAzKkx)xrM&N)@G;oJ~=0&(pWs=gcaHA; z^6=hWPd2UUC+}7lTOZrh)HBxq*b~>f!^*r~5Q?`AU0+$>`HzW-Yeq)aO_4SH{pisn z?|V-w67uRUPJdADbpD?A=#PEp9l0&oayDb@`FoY0Uw)oEG|*XGQh%MXuT;JE_L-kV zpI@H$qD{}+L$}->ziZ^=aUb3Zzkj0y^;?`PQH2+l5Hxu`cp5Yt5)bWqGaf=jwKh$-(Q&1N?>7CyW-dc2S zYEg^qP49l)|EhNRIfwI$4nB^lcHVk^od2mJ=Zd6(J8%5`s3QG9-k{s@D_w8D5pW{s z_nV`$$It4$w&9J0Q3rdT3i5We8!~xQ&f1-6ZioIpUGw&By~ErCQy+SKmp|~0>lFz; zes2%Dcjxib+-^1do<0BY>7a-ckE2$fP?t#USFe`-@#mzZDObYI-6+}kJl20+-nOCZ zUMvj^jb14~n-mgXJ>VNhcbEU(>e7SH-b-)$x6j<$N1m)ZfA6&oXTqlMSIquB zE99D;zJB=P%UjQmt$(^}Y^C7NUbi{ab+qG#f3LQD*HK%tQR-vwQUzA?jKOD9j8+pr z_vbA4gU>@8yM^S9ThqEB&2EQB@{~C~i^pj{9dueUHCGipYvZ=zug(2tSep?a);)Ya z-`~5>fx5!C2j(t+^Ycqnf`dydW1FgDPZd?3?^sY*?KX3N>aLN?ChlGJ{e$uuc{>i- zPfMA5Sozm%mx{fkcZ~jc$%FF#ADxewuy^#`6eYH-(&wm0m!KPE&X`1ahru5lNNy4-v#Y4z7m>$4r6*{y5{>$+}`&)$ogkp6{L zb+u1tC}TD~%-(QjU(bLAeU)pj71XWKcqRJGU9vA%<}=ss#|a66*-5L1JuUxoUP95Z z;XUj-9y}n~|M$KNlahvYN#8Y6es)Z#SIN1P(@uAI|5lG*oZ@SaJ-h;@GJM&PJ9nNu zi~h5+e$nfZ%Qr4n_$hOLb?Z?@1DMc%n(qEF@fz6fqV(Pw8_r~hFZH}z`KZh1eYTu^@!PMP zpCT7u{}^f}9gJqu-lmx}IRulqCouYb;$GX~NHaq$WPkwmK^MT9!i?55c;J?lL0*6K z4QMryujzI{$jKq5F--kksSxZ$3G` zt;2~!o6hdKT6g}^xL@lQ$e&znH+;%`;xUom#wDfh&{6Lp10kLLEiw4a}; zIDuAP)Vv)ChJEZIV}o1o=@sDa)R-{;C&PD%3r9w7c-q;^@xr)`%QQgIBU$tI$DsPM~TZtCLia_!cmJ!8M!6F&aStJ$fNQ6HaQG3CS6elc5S##RpqA0r{AvF=pozs2fVM3+IQo9{D96nf>VEXn9-D_xI)gr)#o&!{AM4$5x!LikG@>R3)vx<(x9wr`O?v zx;z`iKeD|p0{m(CIbk`T0D)PFb{oHGI@ASBp z?bn88XucBp)SS8ZN9)RucIyr_x^|#O(#dEf9baN3k(`lq;?@whfRS`2>oa(3w>^U( z8G;NAfP}~s=W@QdScEgR_r8=Nr|fA##%od8G)@eO)q(D5L8z0=5%Cf$d}}2OA|W8X zF^F#iFD=7YsMd=y|B;Sddgd~;u@mCK&?{E!#eo>gnS*i~IQ1m2Esd%G!-QZMSDbiq z%<>2sFFR#h^gzAC82hU|g?s{WV}mbgTK#ceruOOfj6{MDrJ) zV!6^5v~;pVdw6z%X6R-7R7di^MB2Q%&x%H9~#H-8QIUz(Ln45_OAge~rzKY(Z zN$kU;1MVY}0BlLWpOS+YO}Wd789{x0eG|TgoBS|sCOf3TYY$LYg8hB>#s`+_y5EFy z)CP?zNLLVKC{hI#Xv*>By!Zl9Y?VO+bb3{Bkh&x?G7?nZ1~7U8t+<1>X7Cr9P*hA@ zOftB+zizKzKBewZKps5XY6i;Ke4&Bn>%d3@Tm6gZ+=B0g9S(D!OZdT|wxoI+8 z=+X?B&#f8#aj$Jdr=_iXbU1Iv$@eCYi}L&8uYq0s*DpNME6Ba7pw8jFmRg36;}QujUXdwq|5!y7UViX(-j1q2 zCO&6&PS`Pg&$~x%?|G3J=mtUyJTxi2e)?M*&Rl%_>yu~Glc(L^R99CwFDLx=ql49_ zeSLkMV=51<-k$vM;5GI4x;NhV!}+hp7n4G6B~HHC?~~U5@tu31aCUEf*~E$8&FUR; z?a9oyI&W`U-FtGb{9H+o=@2;oY<>5#r{j!=ZqHro>i7MXyK}^XNA^D~_mPOMM+t}3 ze|_=3Wb&TU`%SO6(2ZQZqf&|yfMthy(G*fa6>Yl^Hx8=GtqqH9}^n3 z?n|l4A|t<=x|*Yb?<6<<7TA&>f9U>1dpj5?ep3Zerh8l2F(?MB_nTf-LE=C)bwEc0 zd=pU2pqcEdMpN>MhiCy_w@5%qF4s?{o$NOgP4-e7%Us?WKuxEPeDVi{|B8v^R zB>cGn?UUW+E~#=aaYWFkwhoKc;CAT!w6v!!;h98w>O^~*NS!XbLWOrSlF@Laq(1%H zwQI=TMN<`1aa?+*WrOkuCFk2^oD7pW8IFQy3V04~Lb8bZ?L&=BI^DTJ=v^#E8S4m$fXGF-bTg^FJ?Eia`h^T literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/quicktime.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/quicktime.gif new file mode 100644 index 0000000000000000000000000000000000000000..3b0499145b16138249f653a1a3f2c80230fb292c GIT binary patch literal 303 zcmV+~0nq+ONk%w1VGsZi0K^{vH>m7Qv+~s9^fsC5ZpZP=*zu3F=Jxpf8k_5u%JNv6 z=md-84VLU4w)kSE=yI&-yw>b=v+SqE?+kq47pC+YrR?bJ^yu>Zyvpn;hTp*6^mM!O zu+8$^=JX7bb<~J01ZTA{q@86#&8&6~H`Ss{{?p%K!-p%L6P2TpFYz90?pD06UU# BbnE~C literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/realmedia.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/realmedia.gif new file mode 100644 index 0000000000000000000000000000000000000000..fdfe0b9ac05869ae845fdd828eaad97cc0c69dbc GIT binary patch literal 439 zcmV;o0Z9HwNk%w1VI=?(0K^{vQcz8xz}f&njBB06v9GQ`Jv%NdDHCI&z`wqZw$(Lw zuFTBL!Pe#<92tv>h)9OE1Xh}vnVEHSaeb-GByg#tqM_B*)YRkdSdqTuipLaF8n=^^LJP4|1^gGRdo_Rl+a*grZQ1hw@Zo1ikN$oB{QbRq&z?QIckdq1aE3;Fq_(WV>Kc7gjQtQh+9OrtFhn-)LUqD<|MOIl_!(Ed#pPRE;S)g;ew3>pd zn`Wa(lc2DGa)peFw3f88dp-|`@*)AXj;@(8hwDr|7Sxsp;&YxjN*Y{PBB!TIU|!b7Zgv0OaG5)&Kwi literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/trans.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/trans.gif new file mode 100644 index 0000000000000000000000000000000000000000..388486517fa8da13ebd150e8f65d5096c3e10c3a GIT binary patch literal 43 ncmZ?wbhEHbWMp7un7{x9ia%KxMSyG_5FaGNz{KRj$Y2csb)f_x literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/windowsmedia.gif b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/img/windowsmedia.gif new file mode 100644 index 0000000000000000000000000000000000000000..ab50f2d887a0843b116ef598e5a005e5601d18d0 GIT binary patch literal 415 zcmV;Q0bu?|Nk%w1VGjTg0M$PL`E^qkEu+z?1&N?x_*pRg{rx~kg!#|I<>uyug^O^t z0hZGrt*x!>$1C!zn`W5@`ts6_uMW)2%<0NUEKIo?SIPPE=}U0}7Z(?JcX!y=*;bF< zCWz-=h7+2ao9)(dOHM;+X=xs9)%!~xc&ICMZdRYdUQ2$^@9y(6X3NCIz{cM7f^Z=Q z1_tQ95kgl8b%R%OiYTIo7LSdE^@}A^8LW002J#EC2ui01p5U000KOz@O0K01zUifeIyT9%!RzMDgehG|mwLz+Eh; z7Z~iE zrX?OfJ^>XeDJK)xJuWOB3_l1N0Ra>g4Gk^=ED0V6LI?>4;Q|6OB{LplLMRLg8U5-E J?0y6R06W6!pgRBn literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/all-wcprops new file mode 100644 index 0000000..19517b5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/js +END +embed.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/js/embed.js +END +media.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/js/media.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/entries new file mode 100644 index 0000000..5afd7ef --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/media_orig/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +embed.js +file + + + + +2010-06-04T12:51:45.385614Z +39ebc57f44e1cc683724e1c1ff761894 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1938 + +media.js +file + + + + +2010-06-04T12:51:45.385614Z +5fac3b4e732edda25a2810884f607bdf +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +18564 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/text-base/embed.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/text-base/embed.js.svn-base new file mode 100644 index 0000000..f8dc810 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/media_orig/js/.svn/text-base/embed.js.svn-base @@ -0,0 +1,73 @@ +/** + * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose. + */ + +function writeFlash(p) { + writeEmbed( + 'D27CDB6E-AE6D-11cf-96B8-444553540000', + 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0', + 'application/x-shockwave-flash', + p + ); +} + +function writeShockWave(p) { + writeEmbed( + '166B1BCA-3F9C-11CF-8075-444553540000', + 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0', + 'application/x-director', + p + ); +} + +function writeQuickTime(p) { + writeEmbed( + '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B', + 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0', + 'video/quicktime', + p + ); +} + +function writeRealMedia(p) { + writeEmbed( + 'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA', + 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0', + 'audio/x-pn-realaudio-plugin', + p + ); +} + +function writeWindowsMedia(p) { + p.url = p.src; + writeEmbed( + '6BF52A52-394A-11D3-B153-00C04F79FAA6', + 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701', + 'application/x-mplayer2', + p + ); +} + +function writeEmbed(cls, cb, mt, p) { + var h = '', n; + + h += ''; + + h += ''); + +function init() { + var pl = "", f, val; + var type = "flash", fe, i; + + ed = tinyMCEPopup.editor; + + tinyMCEPopup.resizeToInnerSize(); + f = document.forms[0] + + fe = ed.selection.getNode(); + if (/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + pl = fe.title; + + switch (ed.dom.getAttrib(fe, 'class')) { + case 'mceItemFlash': + type = 'flash'; + break; + + case 'mceItemFlashVideo': + type = 'flv'; + break; + + case 'mceItemShockWave': + type = 'shockwave'; + break; + + case 'mceItemWindowsMedia': + type = 'wmp'; + break; + + case 'mceItemQuickTime': + type = 'qt'; + break; + + case 'mceItemRealMedia': + type = 'rmp'; + break; + } + + document.forms[0].insert.value = ed.getLang('update', 'Insert', true); + } + + document.getElementById('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media'); + document.getElementById('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','qt_qtsrc','media','media'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor'); + + var html = getMediaListHTML('medialist','src','media','media'); + if (html == "") + document.getElementById("linklistrow").style.display = 'none'; + else + document.getElementById("linklistcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('filebrowser')) + document.getElementById('src').style.width = '230px'; + + // Setup form + if (pl != "") { + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + switch (type) { + case "flash": + setBool(pl, 'flash', 'play'); + setBool(pl, 'flash', 'loop'); + setBool(pl, 'flash', 'menu'); + setBool(pl, 'flash', 'swliveconnect'); + setStr(pl, 'flash', 'quality'); + setStr(pl, 'flash', 'scale'); + setStr(pl, 'flash', 'salign'); + setStr(pl, 'flash', 'wmode'); + setStr(pl, 'flash', 'base'); + setStr(pl, 'flash', 'flashvars'); + break; + + case "qt": + setBool(pl, 'qt', 'loop'); + setBool(pl, 'qt', 'autoplay'); + setBool(pl, 'qt', 'cache'); + setBool(pl, 'qt', 'controller'); + setBool(pl, 'qt', 'correction'); + setBool(pl, 'qt', 'enablejavascript'); + setBool(pl, 'qt', 'kioskmode'); + setBool(pl, 'qt', 'autohref'); + setBool(pl, 'qt', 'playeveryframe'); + setBool(pl, 'qt', 'tarsetcache'); + setStr(pl, 'qt', 'scale'); + setStr(pl, 'qt', 'starttime'); + setStr(pl, 'qt', 'endtime'); + setStr(pl, 'qt', 'tarset'); + setStr(pl, 'qt', 'qtsrcchokespeed'); + setStr(pl, 'qt', 'volume'); + setStr(pl, 'qt', 'qtsrc'); + break; + + case "shockwave": + setBool(pl, 'shockwave', 'sound'); + setBool(pl, 'shockwave', 'progress'); + setBool(pl, 'shockwave', 'autostart'); + setBool(pl, 'shockwave', 'swliveconnect'); + setStr(pl, 'shockwave', 'swvolume'); + setStr(pl, 'shockwave', 'swstretchstyle'); + setStr(pl, 'shockwave', 'swstretchhalign'); + setStr(pl, 'shockwave', 'swstretchvalign'); + break; + + case "wmp": + setBool(pl, 'wmp', 'autostart'); + setBool(pl, 'wmp', 'enabled'); + setBool(pl, 'wmp', 'enablecontextmenu'); + setBool(pl, 'wmp', 'fullscreen'); + setBool(pl, 'wmp', 'invokeurls'); + setBool(pl, 'wmp', 'mute'); + setBool(pl, 'wmp', 'stretchtofit'); + setBool(pl, 'wmp', 'windowlessvideo'); + setStr(pl, 'wmp', 'balance'); + setStr(pl, 'wmp', 'baseurl'); + setStr(pl, 'wmp', 'captioningid'); + setStr(pl, 'wmp', 'currentmarker'); + setStr(pl, 'wmp', 'currentposition'); + setStr(pl, 'wmp', 'defaultframe'); + setStr(pl, 'wmp', 'playcount'); + setStr(pl, 'wmp', 'rate'); + setStr(pl, 'wmp', 'uimode'); + setStr(pl, 'wmp', 'volume'); + break; + + case "rmp": + setBool(pl, 'rmp', 'autostart'); + setBool(pl, 'rmp', 'loop'); + setBool(pl, 'rmp', 'autogotourl'); + setBool(pl, 'rmp', 'center'); + setBool(pl, 'rmp', 'imagestatus'); + setBool(pl, 'rmp', 'maintainaspect'); + setBool(pl, 'rmp', 'nojava'); + setBool(pl, 'rmp', 'prefetch'); + setBool(pl, 'rmp', 'shuffle'); + setStr(pl, 'rmp', 'console'); + setStr(pl, 'rmp', 'controls'); + setStr(pl, 'rmp', 'numloop'); + setStr(pl, 'rmp', 'scriptcallbacks'); + break; + } + + setStr(pl, null, 'src'); + setStr(pl, null, 'id'); + setStr(pl, null, 'name'); + setStr(pl, null, 'vspace'); + setStr(pl, null, 'hspace'); + setStr(pl, null, 'bgcolor'); + setStr(pl, null, 'align'); + setStr(pl, null, 'width'); + setStr(pl, null, 'height'); + + if ((val = ed.dom.getAttrib(fe, "width")) != "") + pl.width = f.width.value = val; + + if ((val = ed.dom.getAttrib(fe, "height")) != "") + pl.height = f.height.value = val; + + oldWidth = pl.width ? parseInt(pl.width) : 0; + oldHeight = pl.height ? parseInt(pl.height) : 0; + } else + oldWidth = oldHeight = 0; + + selectByValue(f, 'media_type', type); + changedType(type); + updateColor('bgcolor_pick', 'bgcolor'); + + TinyMCE_EditableSelects.init(); + generatePreview(); +} + +function insertMedia() { + var fe, f = document.forms[0], h; + + tinyMCEPopup.restoreSelection(); + + if (!AutoValidator.validate(f)) { + tinyMCEPopup.alert(ed.getLang('invalid_data')); + return false; + } + + f.width.value = f.width.value == "" ? 100 : f.width.value; + f.height.value = f.height.value == "" ? 100 : f.height.value; + + fe = ed.selection.getNode(); + if (fe != null && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + fe.className = "mceItemFlash"; + break; + + case "flv": + fe.className = "mceItemFlashVideo"; + break; + + case "shockwave": + fe.className = "mceItemShockWave"; + break; + + case "qt": + fe.className = "mceItemQuickTime"; + break; + + case "wmp": + fe.className = "mceItemWindowsMedia"; + break; + + case "rmp": + fe.className = "mceItemRealMedia"; + break; + } + + if (fe.width != f.width.value || fe.height != f.height.value) + ed.execCommand('mceRepaint'); + + fe.title = serializeParameters(); + fe.width = f.width.value; + fe.height = f.height.value; + fe.style.width = f.width.value + (f.width.value.indexOf('%') == -1 ? 'px' : ''); + fe.style.height = f.height.value + (f.height.value.indexOf('%') == -1 ? 'px' : ''); + fe.align = f.align.options[f.align.selectedIndex].value; + } else { + h = ' 0) { + var html = ""; + + html += ''; + + return html; + } + + return ""; +} + +function getType(v) { + var fo, i, c, el, x, f = document.forms[0]; + + fo = ed.getParam("media_types", "flash=swf;flv=flv;shockwave=dcr;qt=mov,qt,mpg,mp3,mp4,mpeg;shockwave=dcr;wmp=avi,wmv,wm,asf,asx,wmx,wvx;rmp=rm,ra,ram").split(';'); + + // YouTube + if (v.match(/watch\?v=(.+)(.*)/)) { + f.width.value = '425'; + f.height.value = '350'; + f.src.value = 'http://www.youtube.com/v/' + v.match(/v=(.*)(.*)/)[0].split('=')[1]; + return 'flash'; + } + + // Google video + if (v.indexOf('http://video.google.com/videoplay?docid=') == 0) { + f.width.value = '425'; + f.height.value = '326'; + f.src.value = 'http://video.google.com/googleplayer.swf?docId=' + v.substring('http://video.google.com/videoplay?docid='.length) + '&hl=en'; + return 'flash'; + } + + for (i=0; i 0 ? s.substring(0, s.length - 1) : s; + + return s; +} + +function setBool(pl, p, n) { + if (typeof(pl[n]) == "undefined") + return; + + document.forms[0].elements[p + "_" + n].checked = pl[n] != 'false'; +} + +function setStr(pl, p, n) { + var f = document.forms[0], e = f.elements[(p != null ? p + "_" : '') + n]; + + if (typeof(pl[n]) == "undefined") + return; + + if (e.type == "text") + e.value = pl[n]; + else + selectByValue(f, (p != null ? p + "_" : '') + n, pl[n]); +} + +function getBool(p, n, d, tv, fv) { + var v = document.forms[0].elements[p + "_" + n].checked; + + tv = typeof(tv) == 'undefined' ? 'true' : "'" + jsEncode(tv) + "'"; + fv = typeof(fv) == 'undefined' ? 'false' : "'" + jsEncode(fv) + "'"; + + return (v == d) ? '' : n + (v ? ':' + tv + ',' : ":\'" + fv + "\',"); +} + +function getStr(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + if (n == 'src') + v = tinyMCEPopup.editor.convertURL(v, 'src', null); + + return ((n == d || v == '') ? '' : n + ":'" + jsEncode(v) + "',"); +} + +function getInt(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + return ((n == d || v == '') ? '' : n + ":" + v.replace(/[^0-9]+/g, '') + ","); +} + +function jsEncode(s) { + s = s.replace(new RegExp('\\\\', 'g'), '\\\\'); + s = s.replace(new RegExp('"', 'g'), '\\"'); + s = s.replace(new RegExp("'", 'g'), "\\'"); + + return s; +} + +function generatePreview(c) { + var f = document.forms[0], p = document.getElementById('prev'), h = '', cls, pl, n, type, codebase, wp, hp, nw, nh; + + p.innerHTML = ''; + + nw = parseInt(f.width.value); + nh = parseInt(f.height.value); + + if (f.width.value != "" && f.height.value != "") { + if (f.constrain.checked) { + if (c == 'width' && oldWidth != 0) { + wp = nw / oldWidth; + nh = Math.round(wp * nh); + f.height.value = nh; + } else if (c == 'height' && oldHeight != 0) { + hp = nh / oldHeight; + nw = Math.round(hp * nw); + f.width.value = nw; + } + } + } + + if (f.width.value != "") + oldWidth = nw; + + if (f.height.value != "") + oldHeight = nh; + + // After constrain + pl = serializeParameters(); + + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + cls = 'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + type = 'application/x-shockwave-flash'; + break; + + case "shockwave": + cls = 'clsid:166B1BCA-3F9C-11CF-8075-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0'; + type = 'application/x-director'; + break; + + case "qt": + cls = 'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B'; + codebase = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0'; + type = 'video/quicktime'; + break; + + case "wmp": + cls = ed.getParam('media_wmp6_compatible') ? 'clsid:05589FA1-C356-11CE-BF01-00AA0055595A' : 'clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'application/x-mplayer2'; + break; + + case "rmp": + cls = 'clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'audio/x-pn-realaudio-plugin'; + break; + } + + if (pl == '') { + p.innerHTML = ''; + return; + } + + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + if (!pl.src) { + p.innerHTML = ''; + return; + } + + pl.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(pl.src); + pl.width = !pl.width ? 100 : pl.width; + pl.height = !pl.height ? 100 : pl.height; + pl.id = !pl.id ? 'obj' : pl.id; + pl.name = !pl.name ? 'eobj' : pl.name; + pl.align = !pl.align ? '' : pl.align; + + // Avoid annoying warning about insecure items + if (!tinymce.isIE || document.location.protocol != 'https:') { + h += ''; + + for (n in pl) { + h += ''; + + // Add extra url parameter if it's an absolute URL + if (n == 'src' && pl[n].indexOf('://') != -1) + h += ''; + } + } + + h += ''; + + h += ''); + +function init() { + var pl = "", f, val; + var type = "flash", fe, i; + + ed = tinyMCEPopup.editor; + + tinyMCEPopup.resizeToInnerSize(); + f = document.forms[0] + + fe = ed.selection.getNode(); + if (/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + pl = fe.title; + + switch (ed.dom.getAttrib(fe, 'class')) { + case 'mceItemFlash': + type = 'flash'; + break; + + case 'mceItemFlashVideo': + type = 'flv'; + break; + + case 'mceItemShockWave': + type = 'shockwave'; + break; + + case 'mceItemWindowsMedia': + type = 'wmp'; + break; + + case 'mceItemQuickTime': + type = 'qt'; + break; + + case 'mceItemRealMedia': + type = 'rmp'; + break; + } + + document.forms[0].insert.value = ed.getLang('update', 'Insert', true); + } + + document.getElementById('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media'); + document.getElementById('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','qt_qtsrc','media','media'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor'); + + var html = getMediaListHTML('medialist','src','media','media'); + if (html == "") + document.getElementById("linklistrow").style.display = 'none'; + else + document.getElementById("linklistcontainer").innerHTML = html; + + // Resize some elements + if (isVisible('filebrowser')) + document.getElementById('src').style.width = '230px'; + + // Setup form + if (pl != "") { + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + switch (type) { + case "flash": + setBool(pl, 'flash', 'play'); + setBool(pl, 'flash', 'loop'); + setBool(pl, 'flash', 'menu'); + setBool(pl, 'flash', 'swliveconnect'); + setStr(pl, 'flash', 'quality'); + setStr(pl, 'flash', 'scale'); + setStr(pl, 'flash', 'salign'); + setStr(pl, 'flash', 'wmode'); + setStr(pl, 'flash', 'base'); + setStr(pl, 'flash', 'flashvars'); + break; + + case "qt": + setBool(pl, 'qt', 'loop'); + setBool(pl, 'qt', 'autoplay'); + setBool(pl, 'qt', 'cache'); + setBool(pl, 'qt', 'controller'); + setBool(pl, 'qt', 'correction'); + setBool(pl, 'qt', 'enablejavascript'); + setBool(pl, 'qt', 'kioskmode'); + setBool(pl, 'qt', 'autohref'); + setBool(pl, 'qt', 'playeveryframe'); + setBool(pl, 'qt', 'tarsetcache'); + setStr(pl, 'qt', 'scale'); + setStr(pl, 'qt', 'starttime'); + setStr(pl, 'qt', 'endtime'); + setStr(pl, 'qt', 'tarset'); + setStr(pl, 'qt', 'qtsrcchokespeed'); + setStr(pl, 'qt', 'volume'); + setStr(pl, 'qt', 'qtsrc'); + break; + + case "shockwave": + setBool(pl, 'shockwave', 'sound'); + setBool(pl, 'shockwave', 'progress'); + setBool(pl, 'shockwave', 'autostart'); + setBool(pl, 'shockwave', 'swliveconnect'); + setStr(pl, 'shockwave', 'swvolume'); + setStr(pl, 'shockwave', 'swstretchstyle'); + setStr(pl, 'shockwave', 'swstretchhalign'); + setStr(pl, 'shockwave', 'swstretchvalign'); + break; + + case "wmp": + setBool(pl, 'wmp', 'autostart'); + setBool(pl, 'wmp', 'enabled'); + setBool(pl, 'wmp', 'enablecontextmenu'); + setBool(pl, 'wmp', 'fullscreen'); + setBool(pl, 'wmp', 'invokeurls'); + setBool(pl, 'wmp', 'mute'); + setBool(pl, 'wmp', 'stretchtofit'); + setBool(pl, 'wmp', 'windowlessvideo'); + setStr(pl, 'wmp', 'balance'); + setStr(pl, 'wmp', 'baseurl'); + setStr(pl, 'wmp', 'captioningid'); + setStr(pl, 'wmp', 'currentmarker'); + setStr(pl, 'wmp', 'currentposition'); + setStr(pl, 'wmp', 'defaultframe'); + setStr(pl, 'wmp', 'playcount'); + setStr(pl, 'wmp', 'rate'); + setStr(pl, 'wmp', 'uimode'); + setStr(pl, 'wmp', 'volume'); + break; + + case "rmp": + setBool(pl, 'rmp', 'autostart'); + setBool(pl, 'rmp', 'loop'); + setBool(pl, 'rmp', 'autogotourl'); + setBool(pl, 'rmp', 'center'); + setBool(pl, 'rmp', 'imagestatus'); + setBool(pl, 'rmp', 'maintainaspect'); + setBool(pl, 'rmp', 'nojava'); + setBool(pl, 'rmp', 'prefetch'); + setBool(pl, 'rmp', 'shuffle'); + setStr(pl, 'rmp', 'console'); + setStr(pl, 'rmp', 'controls'); + setStr(pl, 'rmp', 'numloop'); + setStr(pl, 'rmp', 'scriptcallbacks'); + break; + } + + setStr(pl, null, 'src'); + setStr(pl, null, 'id'); + setStr(pl, null, 'name'); + setStr(pl, null, 'vspace'); + setStr(pl, null, 'hspace'); + setStr(pl, null, 'bgcolor'); + setStr(pl, null, 'align'); + setStr(pl, null, 'width'); + setStr(pl, null, 'height'); + + if ((val = ed.dom.getAttrib(fe, "width")) != "") + pl.width = f.width.value = val; + + if ((val = ed.dom.getAttrib(fe, "height")) != "") + pl.height = f.height.value = val; + + oldWidth = pl.width ? parseInt(pl.width) : 0; + oldHeight = pl.height ? parseInt(pl.height) : 0; + } else + oldWidth = oldHeight = 0; + + selectByValue(f, 'media_type', type); + changedType(type); + updateColor('bgcolor_pick', 'bgcolor'); + + TinyMCE_EditableSelects.init(); + generatePreview(); +} + +function insertMedia() { + var fe, f = document.forms[0], h; + + tinyMCEPopup.restoreSelection(); + + if (!AutoValidator.validate(f)) { + tinyMCEPopup.alert(ed.getLang('invalid_data')); + return false; + } + + f.width.value = f.width.value == "" ? 100 : f.width.value; + f.height.value = f.height.value == "" ? 100 : f.height.value; + + fe = ed.selection.getNode(); + if (fe != null && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(ed.dom.getAttrib(fe, 'class'))) { + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + fe.className = "mceItemFlash"; + break; + + case "flv": + fe.className = "mceItemFlashVideo"; + break; + + case "shockwave": + fe.className = "mceItemShockWave"; + break; + + case "qt": + fe.className = "mceItemQuickTime"; + break; + + case "wmp": + fe.className = "mceItemWindowsMedia"; + break; + + case "rmp": + fe.className = "mceItemRealMedia"; + break; + } + + if (fe.width != f.width.value || fe.height != f.height.value) + ed.execCommand('mceRepaint'); + + fe.title = serializeParameters(); + fe.width = f.width.value; + fe.height = f.height.value; + fe.style.width = f.width.value + (f.width.value.indexOf('%') == -1 ? 'px' : ''); + fe.style.height = f.height.value + (f.height.value.indexOf('%') == -1 ? 'px' : ''); + fe.align = f.align.options[f.align.selectedIndex].value; + } else { + h = ' 0) { + var html = ""; + + html += ''; + + return html; + } + + return ""; +} + +function getType(v) { + var fo, i, c, el, x, f = document.forms[0]; + + fo = ed.getParam("media_types", "flash=swf;flv=flv;shockwave=dcr;qt=mov,qt,mpg,mp3,mp4,mpeg;shockwave=dcr;wmp=avi,wmv,wm,asf,asx,wmx,wvx;rmp=rm,ra,ram").split(';'); + + // YouTube + if (v.match(/watch\?v=(.+)(.*)/)) { + f.width.value = '425'; + f.height.value = '350'; + f.src.value = 'http://www.youtube.com/v/' + v.match(/v=(.*)(.*)/)[0].split('=')[1]; + return 'flash'; + } + + // Google video + if (v.indexOf('http://video.google.com/videoplay?docid=') == 0) { + f.width.value = '425'; + f.height.value = '326'; + f.src.value = 'http://video.google.com/googleplayer.swf?docId=' + v.substring('http://video.google.com/videoplay?docid='.length) + '&hl=en'; + return 'flash'; + } + + for (i=0; i 0 ? s.substring(0, s.length - 1) : s; + + return s; +} + +function setBool(pl, p, n) { + if (typeof(pl[n]) == "undefined") + return; + + document.forms[0].elements[p + "_" + n].checked = pl[n] != 'false'; +} + +function setStr(pl, p, n) { + var f = document.forms[0], e = f.elements[(p != null ? p + "_" : '') + n]; + + if (typeof(pl[n]) == "undefined") + return; + + if (e.type == "text") + e.value = pl[n]; + else + selectByValue(f, (p != null ? p + "_" : '') + n, pl[n]); +} + +function getBool(p, n, d, tv, fv) { + var v = document.forms[0].elements[p + "_" + n].checked; + + tv = typeof(tv) == 'undefined' ? 'true' : "'" + jsEncode(tv) + "'"; + fv = typeof(fv) == 'undefined' ? 'false' : "'" + jsEncode(fv) + "'"; + + return (v == d) ? '' : n + (v ? ':' + tv + ',' : ":\'" + fv + "\',"); +} + +function getStr(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + if (n == 'src') + v = tinyMCEPopup.editor.convertURL(v, 'src', null); + + return ((n == d || v == '') ? '' : n + ":'" + jsEncode(v) + "',"); +} + +function getInt(p, n, d) { + var e = document.forms[0].elements[(p != null ? p + "_" : "") + n]; + var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value; + + return ((n == d || v == '') ? '' : n + ":" + v.replace(/[^0-9]+/g, '') + ","); +} + +function jsEncode(s) { + s = s.replace(new RegExp('\\\\', 'g'), '\\\\'); + s = s.replace(new RegExp('"', 'g'), '\\"'); + s = s.replace(new RegExp("'", 'g'), "\\'"); + + return s; +} + +function generatePreview(c) { + var f = document.forms[0], p = document.getElementById('prev'), h = '', cls, pl, n, type, codebase, wp, hp, nw, nh; + + p.innerHTML = ''; + + nw = parseInt(f.width.value); + nh = parseInt(f.height.value); + + if (f.width.value != "" && f.height.value != "") { + if (f.constrain.checked) { + if (c == 'width' && oldWidth != 0) { + wp = nw / oldWidth; + nh = Math.round(wp * nh); + f.height.value = nh; + } else if (c == 'height' && oldHeight != 0) { + hp = nh / oldHeight; + nw = Math.round(hp * nw); + f.width.value = nw; + } + } + } + + if (f.width.value != "") + oldWidth = nw; + + if (f.height.value != "") + oldHeight = nh; + + // After constrain + pl = serializeParameters(); + + switch (f.media_type.options[f.media_type.selectedIndex].value) { + case "flash": + cls = 'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'; + type = 'application/x-shockwave-flash'; + break; + + case "shockwave": + cls = 'clsid:166B1BCA-3F9C-11CF-8075-444553540000'; + codebase = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0'; + type = 'application/x-director'; + break; + + case "qt": + cls = 'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B'; + codebase = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0'; + type = 'video/quicktime'; + break; + + case "wmp": + cls = ed.getParam('media_wmp6_compatible') ? 'clsid:05589FA1-C356-11CE-BF01-00AA0055595A' : 'clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'application/x-mplayer2'; + break; + + case "rmp": + cls = 'clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA'; + codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701'; + type = 'audio/x-pn-realaudio-plugin'; + break; + } + + if (pl == '') { + p.innerHTML = ''; + return; + } + + pl = tinyMCEPopup.editor.plugins.media._parse(pl); + + if (!pl.src) { + p.innerHTML = ''; + return; + } + + pl.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(pl.src); + pl.width = !pl.width ? 100 : pl.width; + pl.height = !pl.height ? 100 : pl.height; + pl.id = !pl.id ? 'obj' : pl.id; + pl.name = !pl.name ? 'eobj' : pl.name; + pl.align = !pl.align ? '' : pl.align; + + // Avoid annoying warning about insecure items + if (!tinymce.isIE || document.location.protocol != 'https:') { + h += ''; + + for (n in pl) { + h += ''; + + // Add extra url parameter if it's an absolute URL + if (n == 'src' && pl[n].indexOf('://') != -1) + h += ''; + } + } + + h += ' + + + {#media_dlg.title} + + + + + + + + + +
+ + +
+
+
+ {#media_dlg.general} + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + +
 
+
+ + + + + + +
x   
+
+
+ +
+ {#media_dlg.preview} + +
+
+ +
+
+ {#media_dlg.advanced} + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +
 
+
+
+ +
+ {#media_dlg.flash_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + + + + + + + +
+
+ +
+ {#media_dlg.flv_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+ +
+ {#media_dlg.qt_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+  
+ + + + + +
 
+
+
+ +
+ {#media_dlg.wmp_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+ +
+ {#media_dlg.rmp_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+   +
+
+ +
+ {#media_dlg.shockwave_options} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+ + + + + +
+
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/all-wcprops new file mode 100644 index 0000000..9459610 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/nonbreaking +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/entries new file mode 100644 index 0000000..53fd571 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/nonbreaking +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.248948Z +f060d50dea8eae559e959618fc980c7c +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +952 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.248948Z +85f4a48c4a86577b1fa7d15227a5183e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1528 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..f2dbbff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Nonbreaking",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceNonBreaking",function(){a.execCommand("mceInsertContent",false,(a.plugins.visualchars&&a.plugins.visualchars.state)?'·':" ")});a.addButton("nonbreaking",{title:"nonbreaking.nonbreaking_desc",cmd:"mceNonBreaking"});if(a.getParam("nonbreaking_force_tab")){a.onKeyDown.add(function(d,f){if(tinymce.isIE&&f.keyCode==9){d.execCommand("mceNonBreaking");d.execCommand("mceNonBreaking");d.execCommand("mceNonBreaking");tinymce.dom.Event.cancel(f)}})}},getInfo:function(){return{longname:"Nonbreaking space",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("nonbreaking",tinymce.plugins.Nonbreaking)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..e3b078b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,53 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Nonbreaking', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceNonBreaking', function() { + ed.execCommand('mceInsertContent', false, (ed.plugins.visualchars && ed.plugins.visualchars.state) ? '·' : ' '); + }); + + // Register buttons + ed.addButton('nonbreaking', {title : 'nonbreaking.nonbreaking_desc', cmd : 'mceNonBreaking'}); + + if (ed.getParam('nonbreaking_force_tab')) { + ed.onKeyDown.add(function(ed, e) { + if (tinymce.isIE && e.keyCode == 9) { + ed.execCommand('mceNonBreaking'); + ed.execCommand('mceNonBreaking'); + ed.execCommand('mceNonBreaking'); + tinymce.dom.Event.cancel(e); + } + }); + } + }, + + getInfo : function() { + return { + longname : 'Nonbreaking space', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + + // Private methods + }); + + // Register plugin + tinymce.PluginManager.add('nonbreaking', tinymce.plugins.Nonbreaking); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js new file mode 100644 index 0000000..f2dbbff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Nonbreaking",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceNonBreaking",function(){a.execCommand("mceInsertContent",false,(a.plugins.visualchars&&a.plugins.visualchars.state)?'·':" ")});a.addButton("nonbreaking",{title:"nonbreaking.nonbreaking_desc",cmd:"mceNonBreaking"});if(a.getParam("nonbreaking_force_tab")){a.onKeyDown.add(function(d,f){if(tinymce.isIE&&f.keyCode==9){d.execCommand("mceNonBreaking");d.execCommand("mceNonBreaking");d.execCommand("mceNonBreaking");tinymce.dom.Event.cancel(f)}})}},getInfo:function(){return{longname:"Nonbreaking space",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("nonbreaking",tinymce.plugins.Nonbreaking)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js new file mode 100644 index 0000000..e3b078b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js @@ -0,0 +1,53 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Nonbreaking', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceNonBreaking', function() { + ed.execCommand('mceInsertContent', false, (ed.plugins.visualchars && ed.plugins.visualchars.state) ? '·' : ' '); + }); + + // Register buttons + ed.addButton('nonbreaking', {title : 'nonbreaking.nonbreaking_desc', cmd : 'mceNonBreaking'}); + + if (ed.getParam('nonbreaking_force_tab')) { + ed.onKeyDown.add(function(ed, e) { + if (tinymce.isIE && e.keyCode == 9) { + ed.execCommand('mceNonBreaking'); + ed.execCommand('mceNonBreaking'); + ed.execCommand('mceNonBreaking'); + tinymce.dom.Event.cancel(e); + } + }); + } + }, + + getInfo : function() { + return { + longname : 'Nonbreaking space', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + + // Private methods + }); + + // Register plugin + tinymce.PluginManager.add('nonbreaking', tinymce.plugins.Nonbreaking); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/all-wcprops new file mode 100644 index 0000000..17a7f45 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/noneditable +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/entries new file mode 100644 index 0000000..942e606 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/noneditable +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.518948Z +3f456605e83505bb0571144cc5f14b59 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1364 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.518948Z +6ecdc7bf292835bead510d9d031eed83 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2319 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..9945cd8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var a=tinymce.dom.Event;tinymce.create("tinymce.plugins.NonEditablePlugin",{init:function(d,e){var f=this,c,b;f.editor=d;c=d.getParam("noneditable_editable_class","mceEditable");b=d.getParam("noneditable_noneditable_class","mceNonEditable");d.onNodeChange.addToTop(function(h,g,k){var j,i;j=h.dom.getParent(h.selection.getStart(),function(l){return h.dom.hasClass(l,b)});i=h.dom.getParent(h.selection.getEnd(),function(l){return h.dom.hasClass(l,b)});if(j||i){f._setDisabled(1);return false}else{f._setDisabled(0)}})},getInfo:function(){return{longname:"Non editable elements",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_block:function(c,d){var b=d.keyCode;if((b>32&&b<41)||(b>111&&b<124)){return}return a.cancel(d)},_setDisabled:function(d){var c=this,b=c.editor;tinymce.each(b.controlManager.controls,function(e){e.setDisabled(d)});if(d!==c.disabled){if(d){b.onKeyDown.addToTop(c._block);b.onKeyPress.addToTop(c._block);b.onKeyUp.addToTop(c._block);b.onPaste.addToTop(c._block)}else{b.onKeyDown.remove(c._block);b.onKeyPress.remove(c._block);b.onKeyUp.remove(c._block);b.onPaste.remove(c._block)}c.disabled=d}}});tinymce.PluginManager.add("noneditable",tinymce.plugins.NonEditablePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..656c971 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,90 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var Event = tinymce.dom.Event; + + tinymce.create('tinymce.plugins.NonEditablePlugin', { + init : function(ed, url) { + var t = this, editClass, nonEditClass; + + t.editor = ed; + editClass = ed.getParam("noneditable_editable_class", "mceEditable"); + nonEditClass = ed.getParam("noneditable_noneditable_class", "mceNonEditable"); + + ed.onNodeChange.addToTop(function(ed, cm, n) { + var sc, ec; + + // Block if start or end is inside a non editable element + sc = ed.dom.getParent(ed.selection.getStart(), function(n) { + return ed.dom.hasClass(n, nonEditClass); + }); + + ec = ed.dom.getParent(ed.selection.getEnd(), function(n) { + return ed.dom.hasClass(n, nonEditClass); + }); + + // Block or unblock + if (sc || ec) { + t._setDisabled(1); + return false; + } else + t._setDisabled(0); + }); + }, + + getInfo : function() { + return { + longname : 'Non editable elements', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _block : function(ed, e) { + var k = e.keyCode; + + // Don't block arrow keys, pg up/down, and F1-F12 + if ((k > 32 && k < 41) || (k > 111 && k < 124)) + return; + + return Event.cancel(e); + }, + + _setDisabled : function(s) { + var t = this, ed = t.editor; + + tinymce.each(ed.controlManager.controls, function(c) { + c.setDisabled(s); + }); + + if (s !== t.disabled) { + if (s) { + ed.onKeyDown.addToTop(t._block); + ed.onKeyPress.addToTop(t._block); + ed.onKeyUp.addToTop(t._block); + ed.onPaste.addToTop(t._block); + } else { + ed.onKeyDown.remove(t._block); + ed.onKeyPress.remove(t._block); + ed.onKeyUp.remove(t._block); + ed.onPaste.remove(t._block); + } + + t.disabled = s; + } + } + }); + + // Register plugin + tinymce.PluginManager.add('noneditable', tinymce.plugins.NonEditablePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js new file mode 100644 index 0000000..9945cd8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.dom.Event;tinymce.create("tinymce.plugins.NonEditablePlugin",{init:function(d,e){var f=this,c,b;f.editor=d;c=d.getParam("noneditable_editable_class","mceEditable");b=d.getParam("noneditable_noneditable_class","mceNonEditable");d.onNodeChange.addToTop(function(h,g,k){var j,i;j=h.dom.getParent(h.selection.getStart(),function(l){return h.dom.hasClass(l,b)});i=h.dom.getParent(h.selection.getEnd(),function(l){return h.dom.hasClass(l,b)});if(j||i){f._setDisabled(1);return false}else{f._setDisabled(0)}})},getInfo:function(){return{longname:"Non editable elements",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_block:function(c,d){var b=d.keyCode;if((b>32&&b<41)||(b>111&&b<124)){return}return a.cancel(d)},_setDisabled:function(d){var c=this,b=c.editor;tinymce.each(b.controlManager.controls,function(e){e.setDisabled(d)});if(d!==c.disabled){if(d){b.onKeyDown.addToTop(c._block);b.onKeyPress.addToTop(c._block);b.onKeyUp.addToTop(c._block);b.onPaste.addToTop(c._block)}else{b.onKeyDown.remove(c._block);b.onKeyPress.remove(c._block);b.onKeyUp.remove(c._block);b.onPaste.remove(c._block)}c.disabled=d}}});tinymce.PluginManager.add("noneditable",tinymce.plugins.NonEditablePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js new file mode 100644 index 0000000..656c971 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js @@ -0,0 +1,90 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var Event = tinymce.dom.Event; + + tinymce.create('tinymce.plugins.NonEditablePlugin', { + init : function(ed, url) { + var t = this, editClass, nonEditClass; + + t.editor = ed; + editClass = ed.getParam("noneditable_editable_class", "mceEditable"); + nonEditClass = ed.getParam("noneditable_noneditable_class", "mceNonEditable"); + + ed.onNodeChange.addToTop(function(ed, cm, n) { + var sc, ec; + + // Block if start or end is inside a non editable element + sc = ed.dom.getParent(ed.selection.getStart(), function(n) { + return ed.dom.hasClass(n, nonEditClass); + }); + + ec = ed.dom.getParent(ed.selection.getEnd(), function(n) { + return ed.dom.hasClass(n, nonEditClass); + }); + + // Block or unblock + if (sc || ec) { + t._setDisabled(1); + return false; + } else + t._setDisabled(0); + }); + }, + + getInfo : function() { + return { + longname : 'Non editable elements', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _block : function(ed, e) { + var k = e.keyCode; + + // Don't block arrow keys, pg up/down, and F1-F12 + if ((k > 32 && k < 41) || (k > 111 && k < 124)) + return; + + return Event.cancel(e); + }, + + _setDisabled : function(s) { + var t = this, ed = t.editor; + + tinymce.each(ed.controlManager.controls, function(c) { + c.setDisabled(s); + }); + + if (s !== t.disabled) { + if (s) { + ed.onKeyDown.addToTop(t._block); + ed.onKeyPress.addToTop(t._block); + ed.onKeyUp.addToTop(t._block); + ed.onPaste.addToTop(t._block); + } else { + ed.onKeyDown.remove(t._block); + ed.onKeyPress.remove(t._block); + ed.onKeyUp.remove(t._block); + ed.onPaste.remove(t._block); + } + + t.disabled = s; + } + } + }); + + // Register plugin + tinymce.PluginManager.add('noneditable', tinymce.plugins.NonEditablePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/all-wcprops new file mode 100644 index 0000000..f308b5b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/entries new file mode 100644 index 0000000..3317a04 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/entries @@ -0,0 +1,102 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.475615Z +895bcb74c5c6941dd8f7e6c9bd1b29c8 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1463 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.478969Z +a3619dfb7e2f1764691326f38d088b10 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2246 + +css +dir + +img +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..a212f69 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.PageBreakPlugin",{init:function(b,d){var f='',a="mcePageBreak",c=b.getParam("pagebreak_separator",""),e;e=new RegExp(c.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,function(g){return"\\"+g}),"g");b.addCommand("mcePageBreak",function(){b.execCommand("mceInsertContent",0,f)});b.addButton("pagebreak",{title:"pagebreak.desc",cmd:a});b.onInit.add(function(){if(b.settings.content_css!==false){b.dom.loadCSS(d+"/css/content.css")}if(b.theme.onResolveName){b.theme.onResolveName.add(function(g,h){if(h.node.nodeName=="IMG"&&b.dom.hasClass(h.node,a)){h.name="pagebreak"}})}});b.onClick.add(function(g,h){h=h.target;if(h.nodeName==="IMG"&&g.dom.hasClass(h,a)){g.selection.select(h)}});b.onNodeChange.add(function(h,g,i){g.setActive("pagebreak",i.nodeName==="IMG"&&h.dom.hasClass(i,a))});b.onBeforeSetContent.add(function(g,h){h.content=h.content.replace(e,f)});b.onPostProcess.add(function(g,h){if(h.get){h.content=h.content.replace(/]+>/g,function(i){if(i.indexOf('class="mcePageBreak')!==-1){i=c}return i})}})},getInfo:function(){return{longname:"PageBreak",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("pagebreak",tinymce.plugins.PageBreakPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..4e1eb0a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,77 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.PageBreakPlugin', { + init : function(ed, url) { + var pb = '', cls = 'mcePageBreak', sep = ed.getParam('pagebreak_separator', ''), pbRE; + + pbRE = new RegExp(sep.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g, function(a) {return '\\' + a;}), 'g'); + + // Register commands + ed.addCommand('mcePageBreak', function() { + ed.execCommand('mceInsertContent', 0, pb); + }); + + // Register buttons + ed.addButton('pagebreak', {title : 'pagebreak.desc', cmd : cls}); + + ed.onInit.add(function() { + if (ed.settings.content_css !== false) + ed.dom.loadCSS(url + "/css/content.css"); + + if (ed.theme.onResolveName) { + ed.theme.onResolveName.add(function(th, o) { + if (o.node.nodeName == 'IMG' && ed.dom.hasClass(o.node, cls)) + o.name = 'pagebreak'; + }); + } + }); + + ed.onClick.add(function(ed, e) { + e = e.target; + + if (e.nodeName === 'IMG' && ed.dom.hasClass(e, cls)) + ed.selection.select(e); + }); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('pagebreak', n.nodeName === 'IMG' && ed.dom.hasClass(n, cls)); + }); + + ed.onBeforeSetContent.add(function(ed, o) { + o.content = o.content.replace(pbRE, pb); + }); + + ed.onPostProcess.add(function(ed, o) { + if (o.get) + o.content = o.content.replace(/]+>/g, function(im) { + if (im.indexOf('class="mcePageBreak') !== -1) + im = sep; + + return im; + }); + }); + }, + + getInfo : function() { + return { + longname : 'PageBreak', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('pagebreak', tinymce.plugins.PageBreakPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/all-wcprops new file mode 100644 index 0000000..67e6856 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/css +END +content.css +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/entries new file mode 100644 index 0000000..4da53eb --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +content.css +file + + + + +2010-06-04T12:51:44.468958Z +d9664762a610f2b5f7b10b5781f3299a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +169 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/text-base/content.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/text-base/content.css.svn-base new file mode 100644 index 0000000..c949d58 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/.svn/text-base/content.css.svn-base @@ -0,0 +1 @@ +.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../img/pagebreak.gif) no-repeat center top;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css new file mode 100644 index 0000000..c949d58 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/css/content.css @@ -0,0 +1 @@ +.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../img/pagebreak.gif) no-repeat center top;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js new file mode 100644 index 0000000..a212f69 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.PageBreakPlugin",{init:function(b,d){var f='',a="mcePageBreak",c=b.getParam("pagebreak_separator",""),e;e=new RegExp(c.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,function(g){return"\\"+g}),"g");b.addCommand("mcePageBreak",function(){b.execCommand("mceInsertContent",0,f)});b.addButton("pagebreak",{title:"pagebreak.desc",cmd:a});b.onInit.add(function(){if(b.settings.content_css!==false){b.dom.loadCSS(d+"/css/content.css")}if(b.theme.onResolveName){b.theme.onResolveName.add(function(g,h){if(h.node.nodeName=="IMG"&&b.dom.hasClass(h.node,a)){h.name="pagebreak"}})}});b.onClick.add(function(g,h){h=h.target;if(h.nodeName==="IMG"&&g.dom.hasClass(h,a)){g.selection.select(h)}});b.onNodeChange.add(function(h,g,i){g.setActive("pagebreak",i.nodeName==="IMG"&&h.dom.hasClass(i,a))});b.onBeforeSetContent.add(function(g,h){h.content=h.content.replace(e,f)});b.onPostProcess.add(function(g,h){if(h.get){h.content=h.content.replace(/]+>/g,function(i){if(i.indexOf('class="mcePageBreak')!==-1){i=c}return i})}})},getInfo:function(){return{longname:"PageBreak",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("pagebreak",tinymce.plugins.PageBreakPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js new file mode 100644 index 0000000..4e1eb0a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js @@ -0,0 +1,77 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.PageBreakPlugin', { + init : function(ed, url) { + var pb = '', cls = 'mcePageBreak', sep = ed.getParam('pagebreak_separator', ''), pbRE; + + pbRE = new RegExp(sep.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g, function(a) {return '\\' + a;}), 'g'); + + // Register commands + ed.addCommand('mcePageBreak', function() { + ed.execCommand('mceInsertContent', 0, pb); + }); + + // Register buttons + ed.addButton('pagebreak', {title : 'pagebreak.desc', cmd : cls}); + + ed.onInit.add(function() { + if (ed.settings.content_css !== false) + ed.dom.loadCSS(url + "/css/content.css"); + + if (ed.theme.onResolveName) { + ed.theme.onResolveName.add(function(th, o) { + if (o.node.nodeName == 'IMG' && ed.dom.hasClass(o.node, cls)) + o.name = 'pagebreak'; + }); + } + }); + + ed.onClick.add(function(ed, e) { + e = e.target; + + if (e.nodeName === 'IMG' && ed.dom.hasClass(e, cls)) + ed.selection.select(e); + }); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setActive('pagebreak', n.nodeName === 'IMG' && ed.dom.hasClass(n, cls)); + }); + + ed.onBeforeSetContent.add(function(ed, o) { + o.content = o.content.replace(pbRE, pb); + }); + + ed.onPostProcess.add(function(ed, o) { + if (o.get) + o.content = o.content.replace(/]+>/g, function(im) { + if (im.indexOf('class="mcePageBreak') !== -1) + im = sep; + + return im; + }); + }); + }, + + getInfo : function() { + return { + longname : 'PageBreak', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('pagebreak', tinymce.plugins.PageBreakPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/all-wcprops new file mode 100644 index 0000000..7b1286d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/img +END +pagebreak.gif +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gif +END +trans.gif +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/entries new file mode 100644 index 0000000..a25f961 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/pagebreak/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +pagebreak.gif +file + + + + +2010-06-04T12:51:44.475615Z +48872075f721bf57a517e3275d61c0ba +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +325 + +trans.gif +file + + + + +2010-06-04T12:51:44.475615Z +12bf9e19374920de3146a64775f46a5e +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +43 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/pagebreak.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/pagebreak.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/pagebreak.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/trans.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/trans.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/prop-base/trans.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/text-base/pagebreak.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/text-base/pagebreak.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..acdf4085f3068c4c0a1d6855f4b80dae8bac3068 GIT binary patch literal 325 zcmV-L0lNN2Nk%w1VPpUd0J9GO`>v<{=;ru;boX6P{`2zsmyZ3>&HK5t_;hIbi-G;z z+4`cI{KdfcXj}GCLjV8&A^8LW000jFEC2ui0Av6R000E?@X1N5y*TU5yZ>M)j$|1M z4Ouvb$pHu>IW8BZq|n;U0s@T!VM5~w1_+1X!EiVl!&PITYdjT!ffYfpt{jAfv%qvh zA63WUHSlr7LkeyaV4(pM0f50(II?RD4RtMg4-E+tFhdAy5{3c=0}3Bg9Y8`B2To20 zR%SO62L%9}0H+dzoKB$+2TOwzUrwi{XiBM^4V#>63q3!LsU3u93zH8CdwqY%62;1g z0g8ze$k93lWExp`CUe|K4qOWk17ZeJ0|5pDP6+}};{>bI@lOWj=kf}r2sHp7w9-Ie XK%9UG6W(*AX-vY05F<*&5CH%?Gwy&_ literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/text-base/trans.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/.svn/text-base/trans.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..388486517fa8da13ebd150e8f65d5096c3e10c3a GIT binary patch literal 43 ncmZ?wbhEHbWMp7un7{x9ia%KxMSyG_5FaGNz{KRj$Y2csb)f_x literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gif b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/pagebreak.gif new file mode 100644 index 0000000000000000000000000000000000000000..acdf4085f3068c4c0a1d6855f4b80dae8bac3068 GIT binary patch literal 325 zcmV-L0lNN2Nk%w1VPpUd0J9GO`>v<{=;ru;boX6P{`2zsmyZ3>&HK5t_;hIbi-G;z z+4`cI{KdfcXj}GCLjV8&A^8LW000jFEC2ui0Av6R000E?@X1N5y*TU5yZ>M)j$|1M z4Ouvb$pHu>IW8BZq|n;U0s@T!VM5~w1_+1X!EiVl!&PITYdjT!ffYfpt{jAfv%qvh zA63WUHSlr7LkeyaV4(pM0f50(II?RD4RtMg4-E+tFhdAy5{3c=0}3Bg9Y8`B2To20 zR%SO62L%9}0H+dzoKB$+2TOwzUrwi{XiBM^4V#>63q3!LsU3u93zH8CdwqY%62;1g z0g8ze$k93lWExp`CUe|K4qOWk17ZeJ0|5pDP6+}};{>bI@lOWj=kf}r2sHp7w9-Ie XK%9UG6W(*AX-vY05F<*&5CH%?Gwy&_ literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gif b/assets/tinymce/jscripts/tiny_mce/plugins/pagebreak/img/trans.gif new file mode 100644 index 0000000000000000000000000000000000000000..388486517fa8da13ebd150e8f65d5096c3e10c3a GIT binary patch literal 43 ncmZ?wbhEHbWMp7un7{x9ia%KxMSyG_5FaGNz{KRj$Y2csb)f_x literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/all-wcprops new file mode 100644 index 0000000..63f8d50 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/all-wcprops @@ -0,0 +1,35 @@ +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste +END +pasteword.htm +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js +END +pastetext.htm +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm +END +blank.htm +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/entries new file mode 100644 index 0000000..2d69f28 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/entries @@ -0,0 +1,207 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T15:53:48.445020Z +1026 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +pasteword.htm +file + + + + +2010-06-04T12:51:46.618968Z +9172538000ba12060268bbae12f6fbe3 +2010-05-26T15:53:48.445020Z +1026 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +1200 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.618968Z +440a8d2db00c066e73c87d6937247a95 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +8712 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.622281Z +987ce874e04479c94f7ee74b8d9f1e70 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +12633 + +css +dir + +pastetext.htm +file + + + + +2010-06-04T12:51:46.622281Z +a83b2f9eb0861b1bd5db22e57da4280d +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1340 + +js +dir + +blank.htm +file + + + + +2010-06-04T12:51:46.622281Z +88783f6e539184616896268bca04c25e +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +495 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/blank.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/blank.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/blank.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pastetext.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pastetext.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pastetext.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pasteword.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pasteword.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/prop-base/pasteword.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/blank.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/blank.htm.svn-base new file mode 100644 index 0000000..f841206 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/blank.htm.svn-base @@ -0,0 +1,22 @@ + + +blank_page + + + + + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..2224455 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var Event=tinymce.dom.Event;tinymce.create('tinymce.plugins.PastePlugin',{init:function(ed,url){var t=this;t.editor=ed;ed.addCommand('mcePasteText',function(ui,v){if(ui){if((ed.getParam('paste_use_dialog',true))||(!tinymce.isIE)){ed.windowManager.open({file:url+'/pastetext.htm',width:450,height:450,inline:1},{plugin_url:url});}else t._insertText(clipboardData.getData("Text"),true);}else t._insertText(v.html,v.linebreaks);});ed.addCommand('mcePasteWord',function(ui,v){if(ui){if((ed.getParam('paste_use_dialog',true))||(!tinymce.isIE)){ed.windowManager.open({file:url+'/pasteword.htm',width:720,height:580,inline:1},{plugin_url:url});}else t._insertText(t._clipboardHTML());}else t._insertWordContent(v);});ed.addCommand('mceSelectAll',function(){ed.execCommand('selectall');});ed.addButton('pastetext',{title:'paste.paste_text_desc',cmd:'mcePasteText',ui:true});ed.addButton('pasteword',{title:'paste.paste_word_desc',cmd:'mcePasteWord',ui:true});ed.addButton('selectall',{title:'paste.selectall_desc',cmd:'mceSelectAll'});if(ed.getParam("paste_auto_cleanup_on_paste",false)){ed.onPaste.add(function(ed,e){return t._handlePasteEvent(e)});}if(!tinymce.isIE&&ed.getParam("paste_auto_cleanup_on_paste",false)){ed.onKeyDown.add(function(ed,e){if(e.ctrlKey&&e.keyCode==86){window.setTimeout(function(){ed.execCommand("mcePasteText",true);},1);Event.cancel(e);}});}},getInfo:function(){return{longname:'Paste text/word',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste',version:tinymce.majorVersion+"."+tinymce.minorVersion};},_handlePasteEvent:function(e){var html=this._clipboardHTML(),ed=this.editor,sel=ed.selection,r;if(ed&&(r=sel.getRng())&&r.text.length>0)ed.execCommand('delete');if(html&&html.length>0)ed.execCommand('mcePasteWord',false,html);return Event.cancel(e);},_insertText:function(content,bLinebreaks){content=this.editor.dom.encode(content);if(content&&content.length>0){if(!this.editor.selection.isCollapsed())this.editor.execCommand("Delete");if(bLinebreaks){if(this.editor.getParam("paste_create_paragraphs",true)){var rl=this.editor.getParam("paste_replace_list",'\u2122,TM,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');for(var i=0;i

');content=content.replace(/\r\r/g,'

');content=content.replace(/\n\n/g,'

');if((pos=content.indexOf('

'))!=-1){this.editor.execCommand("Delete");var node=this.editor.selection.getNode();var breakElms=[];do{if(node.nodeType==1){if(node.nodeName=="TD"||node.nodeName=="BODY")break;breakElms[breakElms.length]=node;}}while(node=node.parentNode);var before="",after="

";before+=content.substring(0,pos);for(var i=0;i";after+="<"+breakElms[(breakElms.length-1)-i].nodeName+">";}before+="

";content=before+content.substring(pos+7)+after;}}if(this.editor.getParam("paste_create_linebreaks",true)){content=content.replace(/\r\n/g,'
');content=content.replace(/\r/g,'
');content=content.replace(/\n/g,'
');}}this.editor.execCommand("mceInsertRawHTML",false,content);}},_insertWordContent:function(content){var t=this,ed=t.editor;if(content&&content.length>0){var bull=String.fromCharCode(8226);var middot=String.fromCharCode(183);if(ed.getParam('paste_insert_word_content_callback'))content=ed.execCallback('paste_insert_word_content_callback','before',content);var rl=ed.getParam("paste_replace_list",'\u2122,TM,\u2026,...,\x93|\x94|\u201c|\u201d,",\x60|\x91|\x92|\u2018|\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');for(var i=0;i(.*?)<\/p>','gi'),'

$1

');}content=content.replace(new RegExp('tab-stops: list [0-9]+.0pt">','gi'),'">'+"--list--");content=content.replace(new RegExp(bull+"(.*?)
","gi"),"

"+middot+"$1

");content=content.replace(new RegExp('','gi'),""+bull);content=content.replace(/<\/o:p>/gi,"");content=content.replace(new RegExp('
]+>/g,"");if(this.editor.getParam("paste_remove_spans",true))content=content.replace(/<\/?span[^>]*>/gi,"");if(this.editor.getParam("paste_remove_styles",true))content=content.replace(new RegExp('<(\\w[^>]*) style="([^"]*)"([^>]*)','gi'),"<$1$3");content=content.replace(/<\/?font[^>]*>/gi,"");switch(this.editor.getParam("paste_strip_class_attributes","all")){case"all":content=content.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi,"<$1$3");break;case"mso":content=content.replace(new RegExp('<(\\w[^>]*) class="?mso([^ |>]*)([^>]*)','gi'),"<$1$3");break;}content=content.replace(new RegExp('href="?'+this._reEscape(""+document.location)+'','gi'),'href="'+this.editor.documentBaseURI.getURI());content=content.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi,"<$1$3");content=content.replace(/<\\?\?xml[^>]*>/gi,"");content=content.replace(/<\/?\w+:[^>]*>/gi,"");content=content.replace(/-- page break --\s*

 <\/p>/gi,"");content=content.replace(/-- page break --/gi,"");if(!this.editor.getParam('force_p_newlines')){content=content.replace('','','gi');content=content.replace('

','

','gi');}if(!tinymce.isIE&&!this.editor.getParam('force_p_newlines')){content=content.replace(/<\/?p[^>]*>/gi,"");}content=content.replace(/<\/?div[^>]*>/gi,"");if(this.editor.getParam("paste_convert_middot_lists",true)){var div=ed.dom.create("div",null,content);var className=this.editor.getParam("paste_unindented_list_class","unIndentedList");while(this._convertMiddots(div,"--list--"));while(this._convertMiddots(div,middot,className));while(this._convertMiddots(div,bull));content=div.innerHTML;}if(this.editor.getParam("paste_convert_headers_to_strong",false)){content=content.replace(/ <\/h[1-6]>/gi,'

  

');content=content.replace(//gi,'

');content=content.replace(/<\/h[1-6]>/gi,'

');content=content.replace(/ <\/b>/gi,'  ');content=content.replace(/^( )*/gi,'');}content=content.replace(/--list--/gi,"");if(ed.getParam('paste_insert_word_content_callback'))content=ed.execCallback('paste_insert_word_content_callback','after',content);this.editor.execCommand("mceInsertContent",false,content);if(this.editor.getParam('paste_force_cleanup_wordpaste',true)){var ed=this.editor;window.setTimeout(function(){ed.execCommand("mceCleanup");},1);}}},_reEscape:function(s){var l="?.\\*[](){}+^$:";var o="";for(var i=0;i 0) + ed.execCommand('delete'); + + if (html && html.length > 0) + ed.execCommand('mcePasteWord', false, html); + + return Event.cancel(e); + }, + + _insertText : function(content, bLinebreaks) { + content = this.editor.dom.encode(content); + + if (content && content.length > 0) { + // Delete any highlighted text before pasting + if (!this.editor.selection.isCollapsed()) + this.editor.execCommand("Delete"); + + if (bLinebreaks) { + // Special paragraph treatment + if (this.editor.getParam("paste_create_paragraphs", true)) { + var rl = this.editor.getParam("paste_replace_list", '\u2122,TM,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(','); + for (var i=0; i

'); + content = content.replace(/\r\r/g, '

'); + content = content.replace(/\n\n/g, '

'); + + // Has paragraphs + if ((pos = content.indexOf('

')) != -1) { + this.editor.execCommand("Delete"); + + var node = this.editor.selection.getNode(); + + // Get list of elements to break + var breakElms = []; + + do { + if (node.nodeType == 1) { + // Don't break tables and break at body + if (node.nodeName == "TD" || node.nodeName == "BODY") + break; + + breakElms[breakElms.length] = node; + } + } while(node = node.parentNode); + + var before = "", after = "

"; + before += content.substring(0, pos); + + for (var i=0; i"; + after += "<" + breakElms[(breakElms.length-1)-i].nodeName + ">"; + } + + before += "

"; + content = before + content.substring(pos+7) + after; + } + } + + if (this.editor.getParam("paste_create_linebreaks", true)) { + content = content.replace(/\r\n/g, '
'); + content = content.replace(/\r/g, '
'); + content = content.replace(/\n/g, '
'); + } + } + + this.editor.execCommand("mceInsertRawHTML", false, content); + } + }, + + _insertWordContent : function(content) { + var t = this, ed = t.editor; + + if (content && content.length > 0) { + // Cleanup Word content + var bull = String.fromCharCode(8226); + var middot = String.fromCharCode(183); + + if (ed.getParam('paste_insert_word_content_callback')) + content = ed.execCallback('paste_insert_word_content_callback', 'before', content); + + var rl = ed.getParam("paste_replace_list", '\u2122,TM,\u2026,...,\x93|\x94|\u201c|\u201d,",\x60|\x91|\x92|\u2018|\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(','); + for (var i=0; i(.*?)<\/p>', 'gi'), '

$1

'); + } + + content = content.replace(new RegExp('tab-stops: list [0-9]+.0pt">', 'gi'), '">' + "--list--"); + content = content.replace(new RegExp(bull + "(.*?)
", "gi"), "

" + middot + "$1

"); + content = content.replace(new RegExp('', 'gi'), "" + bull); // Covert to bull list + content = content.replace(/<\/o:p>/gi, ""); + content = content.replace(new RegExp('
]+>/g, ""); // Header elements + + if (this.editor.getParam("paste_remove_spans", true)) + content = content.replace(/<\/?span[^>]*>/gi, ""); + + if (this.editor.getParam("paste_remove_styles", true)) + content = content.replace(new RegExp('<(\\w[^>]*) style="([^"]*)"([^>]*)', 'gi'), "<$1$3"); + + content = content.replace(/<\/?font[^>]*>/gi, ""); + + // Strips class attributes. + switch (this.editor.getParam("paste_strip_class_attributes", "all")) { + case "all": + content = content.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3"); + break; + + case "mso": + content = content.replace(new RegExp('<(\\w[^>]*) class="?mso([^ |>]*)([^>]*)', 'gi'), "<$1$3"); + break; + } + + content = content.replace(new RegExp('href="?' + this._reEscape("" + document.location) + '', 'gi'), 'href="' + this.editor.documentBaseURI.getURI()); + content = content.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3"); + content = content.replace(/<\\?\?xml[^>]*>/gi, ""); + content = content.replace(/<\/?\w+:[^>]*>/gi, ""); + content = content.replace(/-- page break --\s*

 <\/p>/gi, ""); // Remove pagebreaks + content = content.replace(/-- page break --/gi, ""); // Remove pagebreaks + + // content = content.replace(/\/? */gi, "");   + // content = content.replace(/

 <\/p>/gi, ''); + + if (!this.editor.getParam('force_p_newlines')) { + content = content.replace('', '' ,'gi'); + content = content.replace('

', '

' ,'gi'); + } + + if (!tinymce.isIE && !this.editor.getParam('force_p_newlines')) { + content = content.replace(/<\/?p[^>]*>/gi, ""); + } + + content = content.replace(/<\/?div[^>]*>/gi, ""); + + // Convert all middlot lists to UL lists + if (this.editor.getParam("paste_convert_middot_lists", true)) { + var div = ed.dom.create("div", null, content); + + // Convert all middot paragraphs to li elements + var className = this.editor.getParam("paste_unindented_list_class", "unIndentedList"); + + while (this._convertMiddots(div, "--list--")) ; // bull + while (this._convertMiddots(div, middot, className)) ; // Middot + while (this._convertMiddots(div, bull)) ; // bull + + content = div.innerHTML; + } + + // Replace all headers with strong and fix some other issues + if (this.editor.getParam("paste_convert_headers_to_strong", false)) { + content = content.replace(/ <\/h[1-6]>/gi, '

  

'); + content = content.replace(//gi, '

'); + content = content.replace(/<\/h[1-6]>/gi, '

'); + content = content.replace(/ <\/b>/gi, '  '); + content = content.replace(/^( )*/gi, ''); + } + + content = content.replace(/--list--/gi, ""); // Remove --list-- + + if (ed.getParam('paste_insert_word_content_callback')) + content = ed.execCallback('paste_insert_word_content_callback', 'after', content); + + // Insert cleaned content + this.editor.execCommand("mceInsertContent", false, content); + + if (this.editor.getParam('paste_force_cleanup_wordpaste', true)) { + var ed = this.editor; + + window.setTimeout(function() { + ed.execCommand("mceCleanup"); + }, 1); // Do normal cleanup detached from this thread + } + } + }, + + _reEscape : function(s) { + var l = "?.\\*[](){}+^$:"; + var o = ""; + + for (var i=0; i + + {#paste.paste_text_desc} + + + + + + +
+
{#paste.paste_text_desc}
+ +
+ +
+ +
+ +
{#paste_dlg.text_title}
+ + + +
+
+ +
+ +
+ +
+
+
+ + \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/pasteword.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/pasteword.htm.svn-base new file mode 100644 index 0000000..f2dab70 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/.svn/text-base/pasteword.htm.svn-base @@ -0,0 +1,23 @@ + + + + {#paste.paste_word_desc} + + + + + + +
+
{#paste.paste_word_desc}
+

{#paste_dlg.word_title}

+
+
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm b/assets/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm new file mode 100755 index 0000000..f841206 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm @@ -0,0 +1,22 @@ + + +blank_page + + + + + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/all-wcprops new file mode 100644 index 0000000..19ddfb5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/css +END +pasteword.css +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css +END +blank.css +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/entries new file mode 100644 index 0000000..d20f466 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste/css +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +pasteword.css +file + + + + +2010-06-04T12:51:46.602281Z +2042313f6628ef2b742c74aba0fd9b60 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +46 + +blank.css +file + + + + +2010-06-04T12:51:46.605615Z +c15c875a4c54efa8554bca63aee6ecb9 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +395 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/blank.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/blank.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/blank.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/pasteword.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/pasteword.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/prop-base/pasteword.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/blank.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/blank.css.svn-base new file mode 100644 index 0000000..f1ab113 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/blank.css.svn-base @@ -0,0 +1,14 @@ +html, body {height:98%} +body { +background-color: #FFFFFF; +font-family: Verdana, Arial, Helvetica, sans-serif; +font-size: 10px; +scrollbar-3dlight-color: #F0F0EE; +scrollbar-arrow-color: #676662; +scrollbar-base-color: #F0F0EE; +scrollbar-darkshadow-color: #DDDDDD; +scrollbar-face-color: #E0E0DD; +scrollbar-highlight-color: #F0F0EE; +scrollbar-shadow-color: #F0F0EE; +scrollbar-track-color: #F5F5F5; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/pasteword.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/pasteword.css.svn-base new file mode 100644 index 0000000..77685fd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/.svn/text-base/pasteword.css.svn-base @@ -0,0 +1,3 @@ +.sourceIframe { + border: 1px solid #808080; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css new file mode 100755 index 0000000..f1ab113 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css @@ -0,0 +1,14 @@ +html, body {height:98%} +body { +background-color: #FFFFFF; +font-family: Verdana, Arial, Helvetica, sans-serif; +font-size: 10px; +scrollbar-3dlight-color: #F0F0EE; +scrollbar-arrow-color: #676662; +scrollbar-base-color: #F0F0EE; +scrollbar-darkshadow-color: #DDDDDD; +scrollbar-face-color: #E0E0DD; +scrollbar-highlight-color: #F0F0EE; +scrollbar-shadow-color: #F0F0EE; +scrollbar-track-color: #F5F5F5; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css new file mode 100755 index 0000000..77685fd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css @@ -0,0 +1,3 @@ +.sourceIframe { + border: 1px solid #808080; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js new file mode 100755 index 0000000..2224455 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js @@ -0,0 +1 @@ +(function(){var Event=tinymce.dom.Event;tinymce.create('tinymce.plugins.PastePlugin',{init:function(ed,url){var t=this;t.editor=ed;ed.addCommand('mcePasteText',function(ui,v){if(ui){if((ed.getParam('paste_use_dialog',true))||(!tinymce.isIE)){ed.windowManager.open({file:url+'/pastetext.htm',width:450,height:450,inline:1},{plugin_url:url});}else t._insertText(clipboardData.getData("Text"),true);}else t._insertText(v.html,v.linebreaks);});ed.addCommand('mcePasteWord',function(ui,v){if(ui){if((ed.getParam('paste_use_dialog',true))||(!tinymce.isIE)){ed.windowManager.open({file:url+'/pasteword.htm',width:720,height:580,inline:1},{plugin_url:url});}else t._insertText(t._clipboardHTML());}else t._insertWordContent(v);});ed.addCommand('mceSelectAll',function(){ed.execCommand('selectall');});ed.addButton('pastetext',{title:'paste.paste_text_desc',cmd:'mcePasteText',ui:true});ed.addButton('pasteword',{title:'paste.paste_word_desc',cmd:'mcePasteWord',ui:true});ed.addButton('selectall',{title:'paste.selectall_desc',cmd:'mceSelectAll'});if(ed.getParam("paste_auto_cleanup_on_paste",false)){ed.onPaste.add(function(ed,e){return t._handlePasteEvent(e)});}if(!tinymce.isIE&&ed.getParam("paste_auto_cleanup_on_paste",false)){ed.onKeyDown.add(function(ed,e){if(e.ctrlKey&&e.keyCode==86){window.setTimeout(function(){ed.execCommand("mcePasteText",true);},1);Event.cancel(e);}});}},getInfo:function(){return{longname:'Paste text/word',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste',version:tinymce.majorVersion+"."+tinymce.minorVersion};},_handlePasteEvent:function(e){var html=this._clipboardHTML(),ed=this.editor,sel=ed.selection,r;if(ed&&(r=sel.getRng())&&r.text.length>0)ed.execCommand('delete');if(html&&html.length>0)ed.execCommand('mcePasteWord',false,html);return Event.cancel(e);},_insertText:function(content,bLinebreaks){content=this.editor.dom.encode(content);if(content&&content.length>0){if(!this.editor.selection.isCollapsed())this.editor.execCommand("Delete");if(bLinebreaks){if(this.editor.getParam("paste_create_paragraphs",true)){var rl=this.editor.getParam("paste_replace_list",'\u2122,TM,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');for(var i=0;i

');content=content.replace(/\r\r/g,'

');content=content.replace(/\n\n/g,'

');if((pos=content.indexOf('

'))!=-1){this.editor.execCommand("Delete");var node=this.editor.selection.getNode();var breakElms=[];do{if(node.nodeType==1){if(node.nodeName=="TD"||node.nodeName=="BODY")break;breakElms[breakElms.length]=node;}}while(node=node.parentNode);var before="",after="

";before+=content.substring(0,pos);for(var i=0;i";after+="<"+breakElms[(breakElms.length-1)-i].nodeName+">";}before+="

";content=before+content.substring(pos+7)+after;}}if(this.editor.getParam("paste_create_linebreaks",true)){content=content.replace(/\r\n/g,'
');content=content.replace(/\r/g,'
');content=content.replace(/\n/g,'
');}}this.editor.execCommand("mceInsertRawHTML",false,content);}},_insertWordContent:function(content){var t=this,ed=t.editor;if(content&&content.length>0){var bull=String.fromCharCode(8226);var middot=String.fromCharCode(183);if(ed.getParam('paste_insert_word_content_callback'))content=ed.execCallback('paste_insert_word_content_callback','before',content);var rl=ed.getParam("paste_replace_list",'\u2122,TM,\u2026,...,\x93|\x94|\u201c|\u201d,",\x60|\x91|\x92|\u2018|\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');for(var i=0;i(.*?)<\/p>','gi'),'

$1

');}content=content.replace(new RegExp('tab-stops: list [0-9]+.0pt">','gi'),'">'+"--list--");content=content.replace(new RegExp(bull+"(.*?)
","gi"),"

"+middot+"$1

");content=content.replace(new RegExp('','gi'),""+bull);content=content.replace(/<\/o:p>/gi,"");content=content.replace(new RegExp('
]+>/g,"");if(this.editor.getParam("paste_remove_spans",true))content=content.replace(/<\/?span[^>]*>/gi,"");if(this.editor.getParam("paste_remove_styles",true))content=content.replace(new RegExp('<(\\w[^>]*) style="([^"]*)"([^>]*)','gi'),"<$1$3");content=content.replace(/<\/?font[^>]*>/gi,"");switch(this.editor.getParam("paste_strip_class_attributes","all")){case"all":content=content.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi,"<$1$3");break;case"mso":content=content.replace(new RegExp('<(\\w[^>]*) class="?mso([^ |>]*)([^>]*)','gi'),"<$1$3");break;}content=content.replace(new RegExp('href="?'+this._reEscape(""+document.location)+'','gi'),'href="'+this.editor.documentBaseURI.getURI());content=content.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi,"<$1$3");content=content.replace(/<\\?\?xml[^>]*>/gi,"");content=content.replace(/<\/?\w+:[^>]*>/gi,"");content=content.replace(/-- page break --\s*

 <\/p>/gi,"");content=content.replace(/-- page break --/gi,"");if(!this.editor.getParam('force_p_newlines')){content=content.replace('','','gi');content=content.replace('

','

','gi');}if(!tinymce.isIE&&!this.editor.getParam('force_p_newlines')){content=content.replace(/<\/?p[^>]*>/gi,"");}content=content.replace(/<\/?div[^>]*>/gi,"");if(this.editor.getParam("paste_convert_middot_lists",true)){var div=ed.dom.create("div",null,content);var className=this.editor.getParam("paste_unindented_list_class","unIndentedList");while(this._convertMiddots(div,"--list--"));while(this._convertMiddots(div,middot,className));while(this._convertMiddots(div,bull));content=div.innerHTML;}if(this.editor.getParam("paste_convert_headers_to_strong",false)){content=content.replace(/ <\/h[1-6]>/gi,'

  

');content=content.replace(//gi,'

');content=content.replace(/<\/h[1-6]>/gi,'

');content=content.replace(/ <\/b>/gi,'  ');content=content.replace(/^( )*/gi,'');}content=content.replace(/--list--/gi,"");if(ed.getParam('paste_insert_word_content_callback'))content=ed.execCallback('paste_insert_word_content_callback','after',content);this.editor.execCommand("mceInsertContent",false,content);if(this.editor.getParam('paste_force_cleanup_wordpaste',true)){var ed=this.editor;window.setTimeout(function(){ed.execCommand("mceCleanup");},1);}}},_reEscape:function(s){var l="?.\\*[](){}+^$:";var o="";for(var i=0;i 0) + ed.execCommand('delete'); + + if (html && html.length > 0) + ed.execCommand('mcePasteWord', false, html); + + return Event.cancel(e); + }, + + _insertText : function(content, bLinebreaks) { + content = this.editor.dom.encode(content); + + if (content && content.length > 0) { + // Delete any highlighted text before pasting + if (!this.editor.selection.isCollapsed()) + this.editor.execCommand("Delete"); + + if (bLinebreaks) { + // Special paragraph treatment + if (this.editor.getParam("paste_create_paragraphs", true)) { + var rl = this.editor.getParam("paste_replace_list", '\u2122,TM,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(','); + for (var i=0; i

'); + content = content.replace(/\r\r/g, '

'); + content = content.replace(/\n\n/g, '

'); + + // Has paragraphs + if ((pos = content.indexOf('

')) != -1) { + this.editor.execCommand("Delete"); + + var node = this.editor.selection.getNode(); + + // Get list of elements to break + var breakElms = []; + + do { + if (node.nodeType == 1) { + // Don't break tables and break at body + if (node.nodeName == "TD" || node.nodeName == "BODY") + break; + + breakElms[breakElms.length] = node; + } + } while(node = node.parentNode); + + var before = "", after = "

"; + before += content.substring(0, pos); + + for (var i=0; i"; + after += "<" + breakElms[(breakElms.length-1)-i].nodeName + ">"; + } + + before += "

"; + content = before + content.substring(pos+7) + after; + } + } + + if (this.editor.getParam("paste_create_linebreaks", true)) { + content = content.replace(/\r\n/g, '
'); + content = content.replace(/\r/g, '
'); + content = content.replace(/\n/g, '
'); + } + } + + this.editor.execCommand("mceInsertRawHTML", false, content); + } + }, + + _insertWordContent : function(content) { + var t = this, ed = t.editor; + + if (content && content.length > 0) { + // Cleanup Word content + var bull = String.fromCharCode(8226); + var middot = String.fromCharCode(183); + + if (ed.getParam('paste_insert_word_content_callback')) + content = ed.execCallback('paste_insert_word_content_callback', 'before', content); + + var rl = ed.getParam("paste_replace_list", '\u2122,TM,\u2026,...,\x93|\x94|\u201c|\u201d,",\x60|\x91|\x92|\u2018|\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(','); + for (var i=0; i(.*?)<\/p>', 'gi'), '

$1

'); + } + + content = content.replace(new RegExp('tab-stops: list [0-9]+.0pt">', 'gi'), '">' + "--list--"); + content = content.replace(new RegExp(bull + "(.*?)
", "gi"), "

" + middot + "$1

"); + content = content.replace(new RegExp('', 'gi'), "" + bull); // Covert to bull list + content = content.replace(/<\/o:p>/gi, ""); + content = content.replace(new RegExp('
]+>/g, ""); // Header elements + + if (this.editor.getParam("paste_remove_spans", true)) + content = content.replace(/<\/?span[^>]*>/gi, ""); + + if (this.editor.getParam("paste_remove_styles", true)) + content = content.replace(new RegExp('<(\\w[^>]*) style="([^"]*)"([^>]*)', 'gi'), "<$1$3"); + + content = content.replace(/<\/?font[^>]*>/gi, ""); + + // Strips class attributes. + switch (this.editor.getParam("paste_strip_class_attributes", "all")) { + case "all": + content = content.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3"); + break; + + case "mso": + content = content.replace(new RegExp('<(\\w[^>]*) class="?mso([^ |>]*)([^>]*)', 'gi'), "<$1$3"); + break; + } + + content = content.replace(new RegExp('href="?' + this._reEscape("" + document.location) + '', 'gi'), 'href="' + this.editor.documentBaseURI.getURI()); + content = content.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3"); + content = content.replace(/<\\?\?xml[^>]*>/gi, ""); + content = content.replace(/<\/?\w+:[^>]*>/gi, ""); + content = content.replace(/-- page break --\s*

 <\/p>/gi, ""); // Remove pagebreaks + content = content.replace(/-- page break --/gi, ""); // Remove pagebreaks + + // content = content.replace(/\/? */gi, "");   + // content = content.replace(/

 <\/p>/gi, ''); + + if (!this.editor.getParam('force_p_newlines')) { + content = content.replace('', '' ,'gi'); + content = content.replace('

', '

' ,'gi'); + } + + if (!tinymce.isIE && !this.editor.getParam('force_p_newlines')) { + content = content.replace(/<\/?p[^>]*>/gi, ""); + } + + content = content.replace(/<\/?div[^>]*>/gi, ""); + + // Convert all middlot lists to UL lists + if (this.editor.getParam("paste_convert_middot_lists", true)) { + var div = ed.dom.create("div", null, content); + + // Convert all middot paragraphs to li elements + var className = this.editor.getParam("paste_unindented_list_class", "unIndentedList"); + + while (this._convertMiddots(div, "--list--")) ; // bull + while (this._convertMiddots(div, middot, className)) ; // Middot + while (this._convertMiddots(div, bull)) ; // bull + + content = div.innerHTML; + } + + // Replace all headers with strong and fix some other issues + if (this.editor.getParam("paste_convert_headers_to_strong", false)) { + content = content.replace(/ <\/h[1-6]>/gi, '

  

'); + content = content.replace(//gi, '

'); + content = content.replace(/<\/h[1-6]>/gi, '

'); + content = content.replace(/ <\/b>/gi, '  '); + content = content.replace(/^( )*/gi, ''); + } + + content = content.replace(/--list--/gi, ""); // Remove --list-- + + if (ed.getParam('paste_insert_word_content_callback')) + content = ed.execCallback('paste_insert_word_content_callback', 'after', content); + + // Insert cleaned content + this.editor.execCommand("mceInsertContent", false, content); + + if (this.editor.getParam('paste_force_cleanup_wordpaste', true)) { + var ed = this.editor; + + window.setTimeout(function() { + ed.execCommand("mceCleanup"); + }, 1); // Do normal cleanup detached from this thread + } + } + }, + + _reEscape : function(s) { + var l = "?.\\*[](){}+^$:"; + var o = ""; + + for (var i=0; i + + {#paste.paste_text_desc} + + + + + + +
+
{#paste.paste_text_desc}
+ +
+ +
+ +
+ +
{#paste_dlg.text_title}
+ + + +
+
+ +
+ +
+ +
+
+
+ + \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm b/assets/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm new file mode 100755 index 0000000..f2dab70 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm @@ -0,0 +1,23 @@ + + + + {#paste.paste_word_desc} + + + + + + +
+
{#paste.paste_word_desc}
+

{#paste_dlg.word_title}

+
+
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/all-wcprops new file mode 100644 index 0000000..f06feec --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 85 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig +END +pasteword.htm +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin_src.js +END +pastetext.htm +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/entries new file mode 100644 index 0000000..26f154d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/entries @@ -0,0 +1,170 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:35:55.822899Z +1018 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +pasteword.htm +file + + + + +2010-06-04T12:51:46.198531Z +8b9459b98f9a70ed684832326bf1cdf6 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +783 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.198531Z +f56838ca22980e306c2d503287c932a6 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +13423 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.198531Z +da660e8fff83fbce03143375831a1524 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +31696 + +pastetext.htm +file + + + + +2010-06-04T12:51:46.198531Z +8f217769e59a5dd67843c7c17c842f41 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1209 + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..78fd6d7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var c=tinymce.each,d=null,a={paste_auto_cleanup_on_paste:true,paste_block_drop:false,paste_retain_style_properties:"none",paste_strip_class_attributes:"mso",paste_remove_spans:false,paste_remove_styles:false,paste_remove_styles_if_webkit:true,paste_convert_middot_lists:true,paste_convert_headers_to_strong:false,paste_dialog_width:"450",paste_dialog_height:"400",paste_text_use_dialog:false,paste_text_sticky:false,paste_text_notifyalways:false,paste_text_linebreaktype:"p",paste_text_replacements:[[/\u2026/g,"..."],[/[\x93\x94\u201c\u201d]/g,'"'],[/[\x60\x91\x92\u2018\u2019]/g,"'"]]};function b(e,f){return e.getParam(f,a[f])}tinymce.create("tinymce.plugins.PastePlugin",{init:function(e,f){var g=this;g.editor=e;g.url=f;g.onPreProcess=new tinymce.util.Dispatcher(g);g.onPostProcess=new tinymce.util.Dispatcher(g);g.onPreProcess.add(g._preProcess);g.onPostProcess.add(g._postProcess);g.onPreProcess.add(function(j,k){e.execCallback("paste_preprocess",j,k)});g.onPostProcess.add(function(j,k){e.execCallback("paste_postprocess",j,k)});e.pasteAsPlainText=false;function i(l,j){var k=e.dom;g.onPreProcess.dispatch(g,l);l.node=k.create("div",0,l.content);g.onPostProcess.dispatch(g,l);l.content=e.serializer.serialize(l.node,{getInner:1});if((!j)&&(e.pasteAsPlainText)){g._insertPlainText(e,k,l.content);if(!b(e,"paste_text_sticky")){e.pasteAsPlainText=false;e.controlManager.setActive("pastetext",false)}}else{if(/<(p|h[1-6]|ul|ol)/.test(l.content)){g._insertBlockContent(e,k,l.content)}else{g._insert(l.content)}}}e.addCommand("mceInsertClipboardContent",function(j,k){i(k,true)});if(!b(e,"paste_text_use_dialog")){e.addCommand("mcePasteText",function(k,j){var l=tinymce.util.Cookie;e.pasteAsPlainText=!e.pasteAsPlainText;e.controlManager.setActive("pastetext",e.pasteAsPlainText);if((e.pasteAsPlainText)&&(!l.get("tinymcePasteText"))){if(b(e,"paste_text_sticky")){e.windowManager.alert("Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.")}else{e.windowManager.alert("Paste is now in plain text mode. Click again to toggle back to regular paste mode.")}if(!b(e,"paste_text_notifyalways")){l.set("tinymcePasteText","1",new Date(new Date().getFullYear()+1,12,31))}}})}e.addButton("pastetext",{title:"paste.paste_text_desc",cmd:"mcePasteText"});e.addButton("selectall",{title:"paste.selectall_desc",cmd:"selectall"});function h(s){var m,q,k,l=e.selection,p=e.dom,r=e.getBody(),j;if(p.get("_mcePaste")){return}m=p.add(r,"div",{id:"_mcePaste","class":"mcePaste"},"\uFEFF");if(r!=e.getDoc().body){j=p.getPos(e.selection.getStart(),r).y}else{j=r.scrollTop}p.setStyles(m,{position:"absolute",left:-10000,top:j,width:1,height:1,overflow:"hidden"});if(tinymce.isIE){k=p.doc.body.createTextRange();k.moveToElementText(m);k.execCommand("Paste");p.remove(m);if(m.innerHTML==="\uFEFF"){e.execCommand("mcePasteWord");s.preventDefault();return}i({content:m.innerHTML});return tinymce.dom.Event.cancel(s)}else{function o(n){n.preventDefault()}p.bind(e.getDoc(),"mousedown",o);p.bind(e.getDoc(),"keydown",o);q=e.selection.getRng();m=m.firstChild;k=e.getDoc().createRange();k.setStart(m,0);k.setEnd(m,1);l.setRng(k);window.setTimeout(function(){var t="",n=p.select("div.mcePaste");c(n,function(u){c(p.select("div.mcePaste",u),function(v){p.remove(v,1)});t+=(p.select("> span.Apple-style-span div",u)[0]||p.select("> span.Apple-style-span",u)[0]||u).innerHTML});c(n,function(u){p.remove(u)});if(q){l.setRng(q)}i({content:t});p.unbind(e.getDoc(),"mousedown",o);p.unbind(e.getDoc(),"keydown",o)},0)}}if(b(e,"paste_auto_cleanup_on_paste")){if(tinymce.isOpera||/Firefox\/2/.test(navigator.userAgent)){e.onKeyDown.add(function(j,k){if(((tinymce.isMac?k.metaKey:k.ctrlKey)&&k.keyCode==86)||(k.shiftKey&&k.keyCode==45)){h(k)}})}else{e.onPaste.addToTop(function(j,k){return h(k)})}}if(b(e,"paste_block_drop")){e.onInit.add(function(){e.dom.bind(e.getBody(),["dragend","dragover","draggesture","dragdrop","drop","drag"],function(j){j.preventDefault();j.stopPropagation();return false})})}g._legacySupport()},getInfo:function(){return{longname:"Paste text/word",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_preProcess:function(i,f){var l=this.editor,k=f.content,q=tinymce.grep,p=tinymce.explode,g=tinymce.trim,m,j;function e(h){c(h,function(o){if(o.constructor==RegExp){k=k.replace(o,"")}else{k=k.replace(o[0],o[1])}})}if(/class="?Mso|style="[^"]*\bmso-|w:WordDocument/i.test(k)||f.wordContent){f.wordContent=true;e([/^\s*( )+/gi,/( |]*>)+\s*$/gi]);if(b(l,"paste_convert_headers_to_strong")){k=k.replace(/

]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi,"

$1

")}if(b(l,"paste_convert_middot_lists")){e([[//gi,"$&__MCE_ITEM__"],[/(]+(?:mso-list:|:\s*symbol)[^>]+>)/gi,"$1__MCE_ITEM__"]])}e([//gi,/<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s\/>]))[^>]*>/gi,[/<(\/?)s>/gi,"<$1strike>"],[/ /gi,"\u00a0"]]);do{m=k.length;k=k.replace(/(<[a-z][^>]*\s)(?:id|name|language|type|on\w+|\w+:\w+)=(?:"[^"]*"|\w+)\s?/gi,"$1")}while(m!=k.length);if(b(l,"paste_retain_style_properties").replace(/^none$/i,"").length==0){k=k.replace(/<\/?span[^>]*>/gi,"")}else{e([[/([\s\u00a0]*)<\/span>/gi,function(o,h){return(h.length>0)?h.replace(/./," ").slice(Math.floor(h.length/2)).split("").join("\u00a0"):""}],[/(<[a-z][^>]*)\sstyle="([^"]*)"/gi,function(u,h,t){var v=[],o=0,r=p(g(t).replace(/"/gi,"'"),";");c(r,function(s){var w,y,z=p(s,":");function x(A){return A+((A!=="0")&&(/\d$/.test(A)))?"px":""}if(z.length==2){w=z[0].toLowerCase();y=z[1].toLowerCase();switch(w){case"mso-padding-alt":case"mso-padding-top-alt":case"mso-padding-right-alt":case"mso-padding-bottom-alt":case"mso-padding-left-alt":case"mso-margin-alt":case"mso-margin-top-alt":case"mso-margin-right-alt":case"mso-margin-bottom-alt":case"mso-margin-left-alt":case"mso-table-layout-alt":case"mso-height":case"mso-width":case"mso-vertical-align-alt":v[o++]=w.replace(/^mso-|-alt$/g,"")+":"+x(y);return;case"horiz-align":v[o++]="text-align:"+y;return;case"vert-align":v[o++]="vertical-align:"+y;return;case"font-color":case"mso-foreground":v[o++]="color:"+y;return;case"mso-background":case"mso-highlight":v[o++]="background:"+y;return;case"mso-default-height":v[o++]="min-height:"+x(y);return;case"mso-default-width":v[o++]="min-width:"+x(y);return;case"mso-padding-between-alt":v[o++]="border-collapse:separate;border-spacing:"+x(y);return;case"text-line-through":if((y=="single")||(y=="double")){v[o++]="text-decoration:line-through"}return;case"mso-zero-height":if(y=="yes"){v[o++]="display:none"}return}if(/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/.test(w)){return}v[o++]=w+":"+z[1]}});if(o>0){return h+' style="'+v.join(";")+'"'}else{return h}}]])}}if(b(l,"paste_convert_headers_to_strong")){e([[/]*>/gi,"

"],[/<\/h[1-6][^>]*>/gi,"

"]])}j=b(l,"paste_strip_class_attributes");if(j!=="none"){function n(r,o){if(j==="all"){return""}var h=q(p(o.replace(/^(["'])(.*)\1$/,"$2")," "),function(s){return(/^(?!mso)/i.test(s))});return h.length?' class="'+h.join(" ")+'"':""}k=k.replace(/ class="([^"]+)"/gi,n);k=k.replace(/ class=(\w+)/gi,n)}if(b(l,"paste_remove_spans")){k=k.replace(/<\/?span[^>]*>/gi,"")}f.content=k},_postProcess:function(h,j){var g=this,f=g.editor,i=f.dom,e;if(j.wordContent){c(i.select("a",j.node),function(k){if(!k.href||k.href.indexOf("#_Toc")!=-1){i.remove(k,1)}});if(b(f,"paste_convert_middot_lists")){g._convertLists(h,j)}e=b(f,"paste_retain_style_properties");if((tinymce.is(e,"string"))&&(e!=="all")&&(e!=="*")){e=tinymce.explode(e.replace(/^none$/i,""));c(i.select("*",j.node),function(n){var o={},l=0,m,p,k;if(e){for(m=0;m0){i.setStyles(n,o)}else{if(n.nodeName=="SPAN"&&!n.className){i.remove(n,true)}}})}}if(b(f,"paste_remove_styles")||(b(f,"paste_remove_styles_if_webkit")&&tinymce.isWebKit)){c(i.select("*[style]",j.node),function(k){k.removeAttribute("style");k.removeAttribute("_mce_style")})}else{if(tinymce.isWebKit){c(i.select("*",j.node),function(k){k.removeAttribute("_mce_style")})}}},_convertLists:function(h,f){var j=h.editor.dom,i,m,e=-1,g,n=[],l,k;c(j.select("p",f.node),function(u){var r,v="",t,s,o,q;for(r=u.firstChild;r&&r.nodeType==3;r=r.nextSibling){v+=r.nodeValue}v=u.innerHTML.replace(/<\/?\w+[^>]*>/gi,"").replace(/ /g,"\u00a0");if(/^(__MCE_ITEM__)+[\u2022\u00b7\u00a7\u00d8o]\s*\u00a0*/.test(v)){t="ul"}if(/^__MCE_ITEM__\s*\w+\.\s*\u00a0{2,}/.test(v)){t="ol"}if(t){g=parseFloat(u.style.marginLeft||0);if(g>e){n.push(g)}if(!i||t!=l){i=j.create(t);j.insertAfter(i,u)}else{if(g>e){i=m.appendChild(j.create(t))}else{if(g]*>/gi,"");if(t=="ul"&&/^[\u2022\u00b7\u00a7\u00d8o]/.test(p)){j.remove(w)}else{if(/^[\s\S]*\w+\.( |\u00a0)*\s*/.test(p)){j.remove(w)}}});s=u.innerHTML;if(t=="ul"){s=u.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^[\u2022\u00b7\u00a7\u00d8o]\s*( |\u00a0)+\s*/,"")}else{s=u.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^\s*\w+\.( |\u00a0)+\s*/,"")}m=i.appendChild(j.create("li",0,s));j.remove(u);e=g;l=t}else{i=e=0}});k=f.node.innerHTML;if(k.indexOf("__MCE_ITEM__")!=-1){f.node.innerHTML=k.replace(/__MCE_ITEM__/g,"")}},_insertBlockContent:function(l,h,m){var f,j,g=l.selection,q,n,e,o,i,k="mce_marker";function p(t){var s;if(tinymce.isIE){s=l.getDoc().body.createTextRange();s.moveToElementText(t);s.collapse(false);s.select()}else{g.select(t,1);g.collapse(false)}}this._insert(' ',1);j=h.get(k);f=h.getParent(j,"p,h1,h2,h3,h4,h5,h6,ul,ol,th,td");if(f&&!/TD|TH/.test(f.nodeName)){j=h.split(f,j);c(h.create("div",0,m).childNodes,function(r){q=j.parentNode.insertBefore(r.cloneNode(true),j)});p(q)}else{h.setOuterHTML(j,m);g.select(l.getBody(),1);g.collapse(0)}while(n=h.get(k)){h.remove(n)}n=g.getStart();e=h.getViewPort(l.getWin());o=l.dom.getPos(n).y;i=n.clientHeight;if(oe.y+e.h){l.getDoc().body.scrollTop=o0)){if(!d){d=("34,quot,38,amp,39,apos,60,lt,62,gt,"+j.serializer.settings.entities).split(",")}if(/<(?:p|br|h[1-6]|ul|ol|dl|table|t[rdh]|div|blockquote|fieldset|pre|address|center)[^>]*>/i.test(v)){q([/[\n\r]+/g])}else{q([/\r+/g])}q([[/<\/(?:p|h[1-6]|ul|ol|dl|table|div|blockquote|fieldset|pre|address|center)>/gi,"\n\n"],[/]*>|<\/tr>/gi,"\n"],[/<\/t[dh]>\s*]*>/gi,"\t"],/<[a-z!\/?][^>]*>/gi,[/ /gi," "],[/&(#\d+|[a-z0-9]{1,10});/gi,function(i,h){if(h.charAt(0)==="#"){return String.fromCharCode(h.slice(1))}else{return((i=y(d,h))>0)?String.fromCharCode(d[i-1]):" "}}],[/(?:(?!\n)\s)*(\n+)(?:(?!\n)\s)*/gi,"$1"],[/\n{3,}/g,"\n\n"],/^\s+|\s+$/g]);v=x.encode(v);if(!s.isCollapsed()){z.execCommand("Delete",false,null)}if(m(o,"array")||(m(o,"array"))){q(o)}else{if(m(o,"string")){q(new RegExp(o,"gi"))}}if(g=="none"){q([[/\n+/g," "]])}else{if(g=="br"){q([[/\n/g,"
"]])}else{q([/^\s+|\s+$/g,[/\n\n/g,"

"],[/\n/g,"
"]])}}if((l=v.indexOf("

"))!=-1){k=v.lastIndexOf("

");r=s.getNode();e=[];do{if(r.nodeType==1){if(r.nodeName=="TD"||r.nodeName=="BODY"){break}e[e.length]=r}}while(r=r.parentNode);if(e.length>0){p=v.substring(0,l);f="";for(t=0,u=e.length;t";f+="<"+e[e.length-t-1].nodeName.toLowerCase()+">"}if(l==k){v=p+f+v.substring(l+7)}else{v=p+v.substring(l+4,k+4)+f+v.substring(k+7)}}}j.execCommand("mceInsertRawHTML",false,v+' ');window.setTimeout(function(){var h=x.get("_plain_text_marker"),B,i,A,w;s.select(h,false);z.execCommand("Delete",false,null);h=null;B=s.getStart();i=x.getViewPort(n);A=x.getPos(B).y;w=B.clientHeight;if((Ai.y+i.h)){z.body.scrollTop=A

]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi, "

$1

"); + } + + if (getParam(ed, "paste_convert_middot_lists")) { + process([ + [//gi, '$&__MCE_ITEM__'], // Convert supportLists to a list item marker + [/(]+(?:mso-list:|:\s*symbol)[^>]+>)/gi, '$1__MCE_ITEM__'] // Convert mso-list and symbol spans to item markers + ]); + } + + process([ + // Word comments like conditional comments etc + //gi, + + // Remove comments, scripts (e.g., msoShowComment), XML tag, VML content, MS Office namespaced tags, and a few other tags + /<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s\/>]))[^>]*>/gi, + + // Convert into for line-though + [/<(\/?)s>/gi, "<$1strike>"], + + // Replace nsbp entites to char since it's easier to handle + [/ /gi, "\u00a0"] + ]); + + // Remove bad attributes, with or without quotes, ensuring that attribute text is really inside a tag. + // If JavaScript had a RegExp look-behind, we could have integrated this with the last process() array and got rid of the loop. But alas, it does not, so we cannot. + do { + len = h.length; + h = h.replace(/(<[a-z][^>]*\s)(?:id|name|language|type|on\w+|\w+:\w+)=(?:"[^"]*"|\w+)\s?/gi, "$1"); + } while (len != h.length); + + // Remove all spans if no styles is to be retained + if (getParam(ed, "paste_retain_style_properties").replace(/^none$/i, "").length == 0) { + h = h.replace(/<\/?span[^>]*>/gi, ""); + } else { + // We're keeping styles, so at least clean them up. + // CSS Reference: http://msdn.microsoft.com/en-us/library/aa155477.aspx + + process([ + // Convert ___ to string of alternating breaking/non-breaking spaces of same length + [/([\s\u00a0]*)<\/span>/gi, + function(str, spaces) { + return (spaces.length > 0)? spaces.replace(/./, " ").slice(Math.floor(spaces.length/2)).split("").join("\u00a0") : ""; + } + ], + + // Examine all styles: delete junk, transform some, and keep the rest + [/(<[a-z][^>]*)\sstyle="([^"]*)"/gi, + function(str, tag, style) { + var n = [], + i = 0, + s = explode(trim(style).replace(/"/gi, "'"), ";"); + + // Examine each style definition within the tag's style attribute + each(s, function(v) { + var name, value, + parts = explode(v, ":"); + + function ensureUnits(v) { + return v + ((v !== "0") && (/\d$/.test(v)))? "px" : ""; + } + + if (parts.length == 2) { + name = parts[0].toLowerCase(); + value = parts[1].toLowerCase(); + + // Translate certain MS Office styles into their CSS equivalents + switch (name) { + case "mso-padding-alt": + case "mso-padding-top-alt": + case "mso-padding-right-alt": + case "mso-padding-bottom-alt": + case "mso-padding-left-alt": + case "mso-margin-alt": + case "mso-margin-top-alt": + case "mso-margin-right-alt": + case "mso-margin-bottom-alt": + case "mso-margin-left-alt": + case "mso-table-layout-alt": + case "mso-height": + case "mso-width": + case "mso-vertical-align-alt": + n[i++] = name.replace(/^mso-|-alt$/g, "") + ":" + ensureUnits(value); + return; + + case "horiz-align": + n[i++] = "text-align:" + value; + return; + + case "vert-align": + n[i++] = "vertical-align:" + value; + return; + + case "font-color": + case "mso-foreground": + n[i++] = "color:" + value; + return; + + case "mso-background": + case "mso-highlight": + n[i++] = "background:" + value; + return; + + case "mso-default-height": + n[i++] = "min-height:" + ensureUnits(value); + return; + + case "mso-default-width": + n[i++] = "min-width:" + ensureUnits(value); + return; + + case "mso-padding-between-alt": + n[i++] = "border-collapse:separate;border-spacing:" + ensureUnits(value); + return; + + case "text-line-through": + if ((value == "single") || (value == "double")) { + n[i++] = "text-decoration:line-through"; + } + return; + + case "mso-zero-height": + if (value == "yes") { + n[i++] = "display:none"; + } + return; + } + + // Eliminate all MS Office style definitions that have no CSS equivalent by examining the first characters in the name + if (/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/.test(name)) { + return; + } + + // If it reached this point, it must be a valid CSS style + n[i++] = name + ":" + parts[1]; // Lower-case name, but keep value case + } + }); + + // If style attribute contained any valid styles the re-write it; otherwise delete style attribute. + if (i > 0) { + return tag + ' style="' + n.join(';') + '"'; + } else { + return tag; + } + } + ] + ]); + } + } + + // Replace headers with + if (getParam(ed, "paste_convert_headers_to_strong")) { + process([ + [/]*>/gi, "

"], + [/<\/h[1-6][^>]*>/gi, "

"] + ]); + } + + // Class attribute options are: leave all as-is ("none"), remove all ("all"), or remove only those starting with mso ("mso"). + // Note:- paste_strip_class_attributes: "none", verify_css_classes: true is also a good variation. + stripClass = getParam(ed, "paste_strip_class_attributes"); + + if (stripClass !== "none") { + function removeClasses(match, g1) { + if (stripClass === "all") + return ''; + + var cls = grep(explode(g1.replace(/^(["'])(.*)\1$/, "$2"), " "), + function(v) { + return (/^(?!mso)/i.test(v)); + } + ); + + return cls.length ? ' class="' + cls.join(" ") + '"' : ''; + }; + + h = h.replace(/ class="([^"]+)"/gi, removeClasses); + h = h.replace(/ class=(\w+)/gi, removeClasses); + } + + // Remove spans option + if (getParam(ed, "paste_remove_spans")) { + h = h.replace(/<\/?span[^>]*>/gi, ""); + } + + //console.log('After preprocess:' + h); + + o.content = h; + }, + + /** + * Various post process items. + */ + _postProcess : function(pl, o) { + var t = this, ed = t.editor, dom = ed.dom, styleProps; + + if (o.wordContent) { + // Remove named anchors or TOC links + each(dom.select('a', o.node), function(a) { + if (!a.href || a.href.indexOf('#_Toc') != -1) + dom.remove(a, 1); + }); + + if (getParam(ed, "paste_convert_middot_lists")) { + t._convertLists(pl, o); + } + + // Process styles + styleProps = getParam(ed, "paste_retain_style_properties"); // retained properties + + // Process only if a string was specified and not equal to "all" or "*" + if ((tinymce.is(styleProps, "string")) && (styleProps !== "all") && (styleProps !== "*")) { + styleProps = tinymce.explode(styleProps.replace(/^none$/i, "")); + + // Retains some style properties + each(dom.select('*', o.node), function(el) { + var newStyle = {}, npc = 0, i, sp, sv; + + // Store a subset of the existing styles + if (styleProps) { + for (i = 0; i < styleProps.length; i++) { + sp = styleProps[i]; + sv = dom.getStyle(el, sp); + + if (sv) { + newStyle[sp] = sv; + npc++; + } + } + } + + // Remove all of the existing styles + dom.setAttrib(el, 'style', ''); + + if (styleProps && npc > 0) + dom.setStyles(el, newStyle); // Add back the stored subset of styles + else // Remove empty span tags that do not have class attributes + if (el.nodeName == 'SPAN' && !el.className) + dom.remove(el, true); + }); + } + } + + // Remove all style information or only specifically on WebKit to avoid the style bug on that browser + if (getParam(ed, "paste_remove_styles") || (getParam(ed, "paste_remove_styles_if_webkit") && tinymce.isWebKit)) { + each(dom.select('*[style]', o.node), function(el) { + el.removeAttribute('style'); + el.removeAttribute('_mce_style'); + }); + } else { + if (tinymce.isWebKit) { + // We need to compress the styles on WebKit since if you paste it will become + // Removing the mce_style that contains the real value will force the Serializer engine to compress the styles + each(dom.select('*', o.node), function(el) { + el.removeAttribute('_mce_style'); + }); + } + } + }, + + /** + * Converts the most common bullet and number formats in Office into a real semantic UL/LI list. + */ + _convertLists : function(pl, o) { + var dom = pl.editor.dom, listElm, li, lastMargin = -1, margin, levels = [], lastType, html; + + // Convert middot lists into real semantic lists + each(dom.select('p', o.node), function(p) { + var sib, val = '', type, html, idx, parents; + + // Get text node value at beginning of paragraph + for (sib = p.firstChild; sib && sib.nodeType == 3; sib = sib.nextSibling) + val += sib.nodeValue; + + val = p.innerHTML.replace(/<\/?\w+[^>]*>/gi, '').replace(/ /g, '\u00a0'); + + // Detect unordered lists look for bullets + if (/^(__MCE_ITEM__)+[\u2022\u00b7\u00a7\u00d8o]\s*\u00a0*/.test(val)) + type = 'ul'; + + // Detect ordered lists 1., a. or ixv. + if (/^__MCE_ITEM__\s*\w+\.\s*\u00a0{2,}/.test(val)) + type = 'ol'; + + // Check if node value matches the list pattern: o   + if (type) { + margin = parseFloat(p.style.marginLeft || 0); + + if (margin > lastMargin) + levels.push(margin); + + if (!listElm || type != lastType) { + listElm = dom.create(type); + dom.insertAfter(listElm, p); + } else { + // Nested list element + if (margin > lastMargin) { + listElm = li.appendChild(dom.create(type)); + } else if (margin < lastMargin) { + // Find parent level based on margin value + idx = tinymce.inArray(levels, margin); + parents = dom.getParents(listElm.parentNode, type); + listElm = parents[parents.length - 1 - idx] || listElm; + } + } + + // Remove middot or number spans if they exists + each(dom.select('span', p), function(span) { + var html = span.innerHTML.replace(/<\/?\w+[^>]*>/gi, ''); + + // Remove span with the middot or the number + if (type == 'ul' && /^[\u2022\u00b7\u00a7\u00d8o]/.test(html)) + dom.remove(span); + else if (/^[\s\S]*\w+\.( |\u00a0)*\s*/.test(html)) + dom.remove(span); + }); + + html = p.innerHTML; + + // Remove middot/list items + if (type == 'ul') + html = p.innerHTML.replace(/__MCE_ITEM__/g, '').replace(/^[\u2022\u00b7\u00a7\u00d8o]\s*( |\u00a0)+\s*/, ''); + else + html = p.innerHTML.replace(/__MCE_ITEM__/g, '').replace(/^\s*\w+\.( |\u00a0)+\s*/, ''); + + // Create li and add paragraph data into the new li + li = listElm.appendChild(dom.create('li', 0, html)); + dom.remove(p); + + lastMargin = margin; + lastType = type; + } else + listElm = lastMargin = 0; // End list element + }); + + // Remove any left over makers + html = o.node.innerHTML; + if (html.indexOf('__MCE_ITEM__') != -1) + o.node.innerHTML = html.replace(/__MCE_ITEM__/g, ''); + }, + + /** + * This method will split the current block parent and insert the contents inside the split position. + * This logic can be improved so text nodes at the start/end remain in the start/end block elements + */ + _insertBlockContent : function(ed, dom, content) { + var parentBlock, marker, sel = ed.selection, last, elm, vp, y, elmHeight, markerId = 'mce_marker'; + + function select(n) { + var r; + + if (tinymce.isIE) { + r = ed.getDoc().body.createTextRange(); + r.moveToElementText(n); + r.collapse(false); + r.select(); + } else { + sel.select(n, 1); + sel.collapse(false); + } + } + + // Insert a marker for the caret position + this._insert(' ', 1); + marker = dom.get(markerId); + parentBlock = dom.getParent(marker, 'p,h1,h2,h3,h4,h5,h6,ul,ol,th,td'); + + // If it's a parent block but not a table cell + if (parentBlock && !/TD|TH/.test(parentBlock.nodeName)) { + // Split parent block + marker = dom.split(parentBlock, marker); + + // Insert nodes before the marker + each(dom.create('div', 0, content).childNodes, function(n) { + last = marker.parentNode.insertBefore(n.cloneNode(true), marker); + }); + + // Move caret after marker + select(last); + } else { + dom.setOuterHTML(marker, content); + sel.select(ed.getBody(), 1); + sel.collapse(0); + } + + // Remove marker if it's left + while (elm = dom.get(markerId)) + dom.remove(elm); + + // Get element, position and height + elm = sel.getStart(); + vp = dom.getViewPort(ed.getWin()); + y = ed.dom.getPos(elm).y; + elmHeight = elm.clientHeight; + + // Is element within viewport if not then scroll it into view + if (y < vp.y || y + elmHeight > vp.y + vp.h) + ed.getDoc().body.scrollTop = y < vp.y ? y : y - vp.h + 25; + }, + + /** + * Inserts the specified contents at the caret position. + */ + _insert : function(h, skip_undo) { + var ed = this.editor; + + // First delete the contents seems to work better on WebKit + if (!ed.selection.isCollapsed()) + ed.getDoc().execCommand('Delete', false, null); + + // It's better to use the insertHTML method on Gecko since it will combine paragraphs correctly before inserting the contents + ed.execCommand(tinymce.isGecko ? 'insertHTML' : 'mceInsertContent', false, h, {skip_undo : skip_undo}); + }, + + /** + * Instead of the old plain text method which tried to re-create a paste operation, the + * new approach adds a plain text mode toggle switch that changes the behavior of paste. + * This function is passed the same input that the regular paste plugin produces. + * It performs additional scrubbing and produces (and inserts) the plain text. + * This approach leverages all of the great existing functionality in the paste + * plugin, and requires minimal changes to add the new functionality. + * Speednet - June 2009 + */ + _insertPlainText : function(ed, dom, h) { + var i, len, pos, rpos, node, breakElms, before, after, + w = ed.getWin(), + d = ed.getDoc(), + sel = ed.selection, + is = tinymce.is, + inArray = tinymce.inArray, + linebr = getParam(ed, "paste_text_linebreaktype"), + rl = getParam(ed, "paste_text_replacements"); + + function process(items) { + each(items, function(v) { + if (v.constructor == RegExp) + h = h.replace(v, ""); + else + h = h.replace(v[0], v[1]); + }); + }; + + if ((typeof(h) === "string") && (h.length > 0)) { + if (!entities) + entities = ("34,quot,38,amp,39,apos,60,lt,62,gt," + ed.serializer.settings.entities).split(","); + + // If HTML content with line-breaking tags, then remove all cr/lf chars because only tags will break a line + if (/<(?:p|br|h[1-6]|ul|ol|dl|table|t[rdh]|div|blockquote|fieldset|pre|address|center)[^>]*>/i.test(h)) { + process([ + /[\n\r]+/g + ]); + } else { + // Otherwise just get rid of carriage returns (only need linefeeds) + process([ + /\r+/g + ]); + } + + process([ + [/<\/(?:p|h[1-6]|ul|ol|dl|table|div|blockquote|fieldset|pre|address|center)>/gi, "\n\n"], // Block tags get a blank line after them + [/]*>|<\/tr>/gi, "\n"], // Single linebreak for
tags and table rows + [/<\/t[dh]>\s*]*>/gi, "\t"], // Table cells get tabs betweem them + /<[a-z!\/?][^>]*>/gi, // Delete all remaining tags + [/ /gi, " "], // Convert non-break spaces to regular spaces (remember, *plain text*) + [ + // HTML entity + /&(#\d+|[a-z0-9]{1,10});/gi, + + // Replace with actual character + function(e, s) { + if (s.charAt(0) === "#") { + return String.fromCharCode(s.slice(1)); + } + else { + return ((e = inArray(entities, s)) > 0)? String.fromCharCode(entities[e-1]) : " "; + } + } + ], + [/(?:(?!\n)\s)*(\n+)(?:(?!\n)\s)*/gi, "$1"], // Cool little RegExp deletes whitespace around linebreak chars. + [/\n{3,}/g, "\n\n"], // Max. 2 consecutive linebreaks + /^\s+|\s+$/g // Trim the front & back + ]); + + h = dom.encode(h); + + // Delete any highlighted text before pasting + if (!sel.isCollapsed()) { + d.execCommand("Delete", false, null); + } + + // Perform default or custom replacements + if (is(rl, "array") || (is(rl, "array"))) { + process(rl); + } + else if (is(rl, "string")) { + process(new RegExp(rl, "gi")); + } + + // Treat paragraphs as specified in the config + if (linebr == "none") { + process([ + [/\n+/g, " "] + ]); + } + else if (linebr == "br") { + process([ + [/\n/g, "
"] + ]); + } + else { + process([ + /^\s+|\s+$/g, + [/\n\n/g, "

"], + [/\n/g, "
"] + ]); + } + + // This next piece of code handles the situation where we're pasting more than one paragraph of plain + // text, and we are pasting the content into the middle of a block node in the editor. The block + // node gets split at the selection point into "Para A" and "Para B" (for the purposes of explaining). + // The first paragraph of the pasted text is appended to "Para A", and the last paragraph of the + // pasted text is prepended to "Para B". Any other paragraphs of pasted text are placed between + // "Para A" and "Para B". This code solves a host of problems with the original plain text plugin and + // now handles styles correctly. (Pasting plain text into a styled paragraph is supposed to make the + // plain text take the same style as the existing paragraph.) + if ((pos = h.indexOf("

")) != -1) { + rpos = h.lastIndexOf("

"); + node = sel.getNode(); + breakElms = []; // Get list of elements to break + + do { + if (node.nodeType == 1) { + // Don't break tables and break at body + if (node.nodeName == "TD" || node.nodeName == "BODY") { + break; + } + + breakElms[breakElms.length] = node; + } + } while (node = node.parentNode); + + // Are we in the middle of a block node? + if (breakElms.length > 0) { + before = h.substring(0, pos); + after = ""; + + for (i=0, len=breakElms.length; i"; + after += "<" + breakElms[breakElms.length-i-1].nodeName.toLowerCase() + ">"; + } + + if (pos == rpos) { + h = before + after + h.substring(pos+7); + } + else { + h = before + h.substring(pos+4, rpos+4) + after + h.substring(rpos+7); + } + } + } + + // Insert content at the caret, plus add a marker for repositioning the caret + ed.execCommand("mceInsertRawHTML", false, h + ' '); + + // Reposition the caret to the marker, which was placed immediately after the inserted content. + // Needs to be done asynchronously (in window.setTimeout) or else it doesn't work in all browsers. + // The second part of the code scrolls the content up if the caret is positioned off-screen. + // This is only necessary for WebKit browsers, but it doesn't hurt to use for all. + window.setTimeout(function() { + var marker = dom.get('_plain_text_marker'), + elm, vp, y, elmHeight; + + sel.select(marker, false); + d.execCommand("Delete", false, null); + marker = null; + + // Get element, position and height + elm = sel.getStart(); + vp = dom.getViewPort(w); + y = dom.getPos(elm).y; + elmHeight = elm.clientHeight; + + // Is element within viewport if not then scroll it into view + if ((y < vp.y) || (y + elmHeight > vp.y + vp.h)) { + d.body.scrollTop = y < vp.y ? y : y - vp.h + 25; + } + }, 0); + } + }, + + /** + * This method will open the old style paste dialogs. Some users might want the old behavior but still use the new cleanup engine. + */ + _legacySupport : function() { + var t = this, ed = t.editor; + + // Register command(s) for backwards compatibility + ed.addCommand("mcePasteWord", function() { + ed.windowManager.open({ + file: t.url + "/pasteword.htm", + width: parseInt(getParam(ed, "paste_dialog_width")), + height: parseInt(getParam(ed, "paste_dialog_height")), + inline: 1 + }); + }); + + if (getParam(ed, "paste_text_use_dialog")) { + ed.addCommand("mcePasteText", function() { + ed.windowManager.open({ + file : t.url + "/pastetext.htm", + width: parseInt(getParam(ed, "paste_dialog_width")), + height: parseInt(getParam(ed, "paste_dialog_height")), + inline : 1 + }); + }); + } + + // Register button for backwards compatibility + ed.addButton("pasteword", {title : "paste.paste_word_desc", cmd : "mcePasteWord"}); + } + }); + + // Register plugin + tinymce.PluginManager.add("paste", tinymce.plugins.PastePlugin); +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pastetext.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pastetext.htm.svn-base new file mode 100644 index 0000000..b655945 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pastetext.htm.svn-base @@ -0,0 +1,27 @@ + + + {#paste.paste_text_desc} + + + + +

+
{#paste.paste_text_desc}
+ +
+ +
+ +
+ +
{#paste_dlg.text_title}
+ + + +
+ + +
+
+ + \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pasteword.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pasteword.htm.svn-base new file mode 100644 index 0000000..0f6bb41 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/.svn/text-base/pasteword.htm.svn-base @@ -0,0 +1,21 @@ + + + {#paste.paste_word_desc} + + + + +
+
{#paste.paste_word_desc}
+ +
{#paste_dlg.word_title}
+ +
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js new file mode 100644 index 0000000..78fd6d7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js @@ -0,0 +1 @@ +(function(){var c=tinymce.each,d=null,a={paste_auto_cleanup_on_paste:true,paste_block_drop:false,paste_retain_style_properties:"none",paste_strip_class_attributes:"mso",paste_remove_spans:false,paste_remove_styles:false,paste_remove_styles_if_webkit:true,paste_convert_middot_lists:true,paste_convert_headers_to_strong:false,paste_dialog_width:"450",paste_dialog_height:"400",paste_text_use_dialog:false,paste_text_sticky:false,paste_text_notifyalways:false,paste_text_linebreaktype:"p",paste_text_replacements:[[/\u2026/g,"..."],[/[\x93\x94\u201c\u201d]/g,'"'],[/[\x60\x91\x92\u2018\u2019]/g,"'"]]};function b(e,f){return e.getParam(f,a[f])}tinymce.create("tinymce.plugins.PastePlugin",{init:function(e,f){var g=this;g.editor=e;g.url=f;g.onPreProcess=new tinymce.util.Dispatcher(g);g.onPostProcess=new tinymce.util.Dispatcher(g);g.onPreProcess.add(g._preProcess);g.onPostProcess.add(g._postProcess);g.onPreProcess.add(function(j,k){e.execCallback("paste_preprocess",j,k)});g.onPostProcess.add(function(j,k){e.execCallback("paste_postprocess",j,k)});e.pasteAsPlainText=false;function i(l,j){var k=e.dom;g.onPreProcess.dispatch(g,l);l.node=k.create("div",0,l.content);g.onPostProcess.dispatch(g,l);l.content=e.serializer.serialize(l.node,{getInner:1});if((!j)&&(e.pasteAsPlainText)){g._insertPlainText(e,k,l.content);if(!b(e,"paste_text_sticky")){e.pasteAsPlainText=false;e.controlManager.setActive("pastetext",false)}}else{if(/<(p|h[1-6]|ul|ol)/.test(l.content)){g._insertBlockContent(e,k,l.content)}else{g._insert(l.content)}}}e.addCommand("mceInsertClipboardContent",function(j,k){i(k,true)});if(!b(e,"paste_text_use_dialog")){e.addCommand("mcePasteText",function(k,j){var l=tinymce.util.Cookie;e.pasteAsPlainText=!e.pasteAsPlainText;e.controlManager.setActive("pastetext",e.pasteAsPlainText);if((e.pasteAsPlainText)&&(!l.get("tinymcePasteText"))){if(b(e,"paste_text_sticky")){e.windowManager.alert("Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.")}else{e.windowManager.alert("Paste is now in plain text mode. Click again to toggle back to regular paste mode.")}if(!b(e,"paste_text_notifyalways")){l.set("tinymcePasteText","1",new Date(new Date().getFullYear()+1,12,31))}}})}e.addButton("pastetext",{title:"paste.paste_text_desc",cmd:"mcePasteText"});e.addButton("selectall",{title:"paste.selectall_desc",cmd:"selectall"});function h(s){var m,q,k,l=e.selection,p=e.dom,r=e.getBody(),j;if(p.get("_mcePaste")){return}m=p.add(r,"div",{id:"_mcePaste","class":"mcePaste"},"\uFEFF");if(r!=e.getDoc().body){j=p.getPos(e.selection.getStart(),r).y}else{j=r.scrollTop}p.setStyles(m,{position:"absolute",left:-10000,top:j,width:1,height:1,overflow:"hidden"});if(tinymce.isIE){k=p.doc.body.createTextRange();k.moveToElementText(m);k.execCommand("Paste");p.remove(m);if(m.innerHTML==="\uFEFF"){e.execCommand("mcePasteWord");s.preventDefault();return}i({content:m.innerHTML});return tinymce.dom.Event.cancel(s)}else{function o(n){n.preventDefault()}p.bind(e.getDoc(),"mousedown",o);p.bind(e.getDoc(),"keydown",o);q=e.selection.getRng();m=m.firstChild;k=e.getDoc().createRange();k.setStart(m,0);k.setEnd(m,1);l.setRng(k);window.setTimeout(function(){var t="",n=p.select("div.mcePaste");c(n,function(u){c(p.select("div.mcePaste",u),function(v){p.remove(v,1)});t+=(p.select("> span.Apple-style-span div",u)[0]||p.select("> span.Apple-style-span",u)[0]||u).innerHTML});c(n,function(u){p.remove(u)});if(q){l.setRng(q)}i({content:t});p.unbind(e.getDoc(),"mousedown",o);p.unbind(e.getDoc(),"keydown",o)},0)}}if(b(e,"paste_auto_cleanup_on_paste")){if(tinymce.isOpera||/Firefox\/2/.test(navigator.userAgent)){e.onKeyDown.add(function(j,k){if(((tinymce.isMac?k.metaKey:k.ctrlKey)&&k.keyCode==86)||(k.shiftKey&&k.keyCode==45)){h(k)}})}else{e.onPaste.addToTop(function(j,k){return h(k)})}}if(b(e,"paste_block_drop")){e.onInit.add(function(){e.dom.bind(e.getBody(),["dragend","dragover","draggesture","dragdrop","drop","drag"],function(j){j.preventDefault();j.stopPropagation();return false})})}g._legacySupport()},getInfo:function(){return{longname:"Paste text/word",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_preProcess:function(i,f){var l=this.editor,k=f.content,q=tinymce.grep,p=tinymce.explode,g=tinymce.trim,m,j;function e(h){c(h,function(o){if(o.constructor==RegExp){k=k.replace(o,"")}else{k=k.replace(o[0],o[1])}})}if(/class="?Mso|style="[^"]*\bmso-|w:WordDocument/i.test(k)||f.wordContent){f.wordContent=true;e([/^\s*( )+/gi,/( |]*>)+\s*$/gi]);if(b(l,"paste_convert_headers_to_strong")){k=k.replace(/

]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi,"

$1

")}if(b(l,"paste_convert_middot_lists")){e([[//gi,"$&__MCE_ITEM__"],[/(]+(?:mso-list:|:\s*symbol)[^>]+>)/gi,"$1__MCE_ITEM__"]])}e([//gi,/<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s\/>]))[^>]*>/gi,[/<(\/?)s>/gi,"<$1strike>"],[/ /gi,"\u00a0"]]);do{m=k.length;k=k.replace(/(<[a-z][^>]*\s)(?:id|name|language|type|on\w+|\w+:\w+)=(?:"[^"]*"|\w+)\s?/gi,"$1")}while(m!=k.length);if(b(l,"paste_retain_style_properties").replace(/^none$/i,"").length==0){k=k.replace(/<\/?span[^>]*>/gi,"")}else{e([[/([\s\u00a0]*)<\/span>/gi,function(o,h){return(h.length>0)?h.replace(/./," ").slice(Math.floor(h.length/2)).split("").join("\u00a0"):""}],[/(<[a-z][^>]*)\sstyle="([^"]*)"/gi,function(u,h,t){var v=[],o=0,r=p(g(t).replace(/"/gi,"'"),";");c(r,function(s){var w,y,z=p(s,":");function x(A){return A+((A!=="0")&&(/\d$/.test(A)))?"px":""}if(z.length==2){w=z[0].toLowerCase();y=z[1].toLowerCase();switch(w){case"mso-padding-alt":case"mso-padding-top-alt":case"mso-padding-right-alt":case"mso-padding-bottom-alt":case"mso-padding-left-alt":case"mso-margin-alt":case"mso-margin-top-alt":case"mso-margin-right-alt":case"mso-margin-bottom-alt":case"mso-margin-left-alt":case"mso-table-layout-alt":case"mso-height":case"mso-width":case"mso-vertical-align-alt":v[o++]=w.replace(/^mso-|-alt$/g,"")+":"+x(y);return;case"horiz-align":v[o++]="text-align:"+y;return;case"vert-align":v[o++]="vertical-align:"+y;return;case"font-color":case"mso-foreground":v[o++]="color:"+y;return;case"mso-background":case"mso-highlight":v[o++]="background:"+y;return;case"mso-default-height":v[o++]="min-height:"+x(y);return;case"mso-default-width":v[o++]="min-width:"+x(y);return;case"mso-padding-between-alt":v[o++]="border-collapse:separate;border-spacing:"+x(y);return;case"text-line-through":if((y=="single")||(y=="double")){v[o++]="text-decoration:line-through"}return;case"mso-zero-height":if(y=="yes"){v[o++]="display:none"}return}if(/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/.test(w)){return}v[o++]=w+":"+z[1]}});if(o>0){return h+' style="'+v.join(";")+'"'}else{return h}}]])}}if(b(l,"paste_convert_headers_to_strong")){e([[/]*>/gi,"

"],[/<\/h[1-6][^>]*>/gi,"

"]])}j=b(l,"paste_strip_class_attributes");if(j!=="none"){function n(r,o){if(j==="all"){return""}var h=q(p(o.replace(/^(["'])(.*)\1$/,"$2")," "),function(s){return(/^(?!mso)/i.test(s))});return h.length?' class="'+h.join(" ")+'"':""}k=k.replace(/ class="([^"]+)"/gi,n);k=k.replace(/ class=(\w+)/gi,n)}if(b(l,"paste_remove_spans")){k=k.replace(/<\/?span[^>]*>/gi,"")}f.content=k},_postProcess:function(h,j){var g=this,f=g.editor,i=f.dom,e;if(j.wordContent){c(i.select("a",j.node),function(k){if(!k.href||k.href.indexOf("#_Toc")!=-1){i.remove(k,1)}});if(b(f,"paste_convert_middot_lists")){g._convertLists(h,j)}e=b(f,"paste_retain_style_properties");if((tinymce.is(e,"string"))&&(e!=="all")&&(e!=="*")){e=tinymce.explode(e.replace(/^none$/i,""));c(i.select("*",j.node),function(n){var o={},l=0,m,p,k;if(e){for(m=0;m0){i.setStyles(n,o)}else{if(n.nodeName=="SPAN"&&!n.className){i.remove(n,true)}}})}}if(b(f,"paste_remove_styles")||(b(f,"paste_remove_styles_if_webkit")&&tinymce.isWebKit)){c(i.select("*[style]",j.node),function(k){k.removeAttribute("style");k.removeAttribute("_mce_style")})}else{if(tinymce.isWebKit){c(i.select("*",j.node),function(k){k.removeAttribute("_mce_style")})}}},_convertLists:function(h,f){var j=h.editor.dom,i,m,e=-1,g,n=[],l,k;c(j.select("p",f.node),function(u){var r,v="",t,s,o,q;for(r=u.firstChild;r&&r.nodeType==3;r=r.nextSibling){v+=r.nodeValue}v=u.innerHTML.replace(/<\/?\w+[^>]*>/gi,"").replace(/ /g,"\u00a0");if(/^(__MCE_ITEM__)+[\u2022\u00b7\u00a7\u00d8o]\s*\u00a0*/.test(v)){t="ul"}if(/^__MCE_ITEM__\s*\w+\.\s*\u00a0{2,}/.test(v)){t="ol"}if(t){g=parseFloat(u.style.marginLeft||0);if(g>e){n.push(g)}if(!i||t!=l){i=j.create(t);j.insertAfter(i,u)}else{if(g>e){i=m.appendChild(j.create(t))}else{if(g]*>/gi,"");if(t=="ul"&&/^[\u2022\u00b7\u00a7\u00d8o]/.test(p)){j.remove(w)}else{if(/^[\s\S]*\w+\.( |\u00a0)*\s*/.test(p)){j.remove(w)}}});s=u.innerHTML;if(t=="ul"){s=u.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^[\u2022\u00b7\u00a7\u00d8o]\s*( |\u00a0)+\s*/,"")}else{s=u.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^\s*\w+\.( |\u00a0)+\s*/,"")}m=i.appendChild(j.create("li",0,s));j.remove(u);e=g;l=t}else{i=e=0}});k=f.node.innerHTML;if(k.indexOf("__MCE_ITEM__")!=-1){f.node.innerHTML=k.replace(/__MCE_ITEM__/g,"")}},_insertBlockContent:function(l,h,m){var f,j,g=l.selection,q,n,e,o,i,k="mce_marker";function p(t){var s;if(tinymce.isIE){s=l.getDoc().body.createTextRange();s.moveToElementText(t);s.collapse(false);s.select()}else{g.select(t,1);g.collapse(false)}}this._insert(' ',1);j=h.get(k);f=h.getParent(j,"p,h1,h2,h3,h4,h5,h6,ul,ol,th,td");if(f&&!/TD|TH/.test(f.nodeName)){j=h.split(f,j);c(h.create("div",0,m).childNodes,function(r){q=j.parentNode.insertBefore(r.cloneNode(true),j)});p(q)}else{h.setOuterHTML(j,m);g.select(l.getBody(),1);g.collapse(0)}while(n=h.get(k)){h.remove(n)}n=g.getStart();e=h.getViewPort(l.getWin());o=l.dom.getPos(n).y;i=n.clientHeight;if(oe.y+e.h){l.getDoc().body.scrollTop=o0)){if(!d){d=("34,quot,38,amp,39,apos,60,lt,62,gt,"+j.serializer.settings.entities).split(",")}if(/<(?:p|br|h[1-6]|ul|ol|dl|table|t[rdh]|div|blockquote|fieldset|pre|address|center)[^>]*>/i.test(v)){q([/[\n\r]+/g])}else{q([/\r+/g])}q([[/<\/(?:p|h[1-6]|ul|ol|dl|table|div|blockquote|fieldset|pre|address|center)>/gi,"\n\n"],[/]*>|<\/tr>/gi,"\n"],[/<\/t[dh]>\s*]*>/gi,"\t"],/<[a-z!\/?][^>]*>/gi,[/ /gi," "],[/&(#\d+|[a-z0-9]{1,10});/gi,function(i,h){if(h.charAt(0)==="#"){return String.fromCharCode(h.slice(1))}else{return((i=y(d,h))>0)?String.fromCharCode(d[i-1]):" "}}],[/(?:(?!\n)\s)*(\n+)(?:(?!\n)\s)*/gi,"$1"],[/\n{3,}/g,"\n\n"],/^\s+|\s+$/g]);v=x.encode(v);if(!s.isCollapsed()){z.execCommand("Delete",false,null)}if(m(o,"array")||(m(o,"array"))){q(o)}else{if(m(o,"string")){q(new RegExp(o,"gi"))}}if(g=="none"){q([[/\n+/g," "]])}else{if(g=="br"){q([[/\n/g,"
"]])}else{q([/^\s+|\s+$/g,[/\n\n/g,"

"],[/\n/g,"
"]])}}if((l=v.indexOf("

"))!=-1){k=v.lastIndexOf("

");r=s.getNode();e=[];do{if(r.nodeType==1){if(r.nodeName=="TD"||r.nodeName=="BODY"){break}e[e.length]=r}}while(r=r.parentNode);if(e.length>0){p=v.substring(0,l);f="";for(t=0,u=e.length;t";f+="<"+e[e.length-t-1].nodeName.toLowerCase()+">"}if(l==k){v=p+f+v.substring(l+7)}else{v=p+v.substring(l+4,k+4)+f+v.substring(k+7)}}}j.execCommand("mceInsertRawHTML",false,v+' ');window.setTimeout(function(){var h=x.get("_plain_text_marker"),B,i,A,w;s.select(h,false);z.execCommand("Delete",false,null);h=null;B=s.getStart();i=x.getViewPort(n);A=x.getPos(B).y;w=B.clientHeight;if((Ai.y+i.h)){z.body.scrollTop=A

]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi, "

$1

"); + } + + if (getParam(ed, "paste_convert_middot_lists")) { + process([ + [//gi, '$&__MCE_ITEM__'], // Convert supportLists to a list item marker + [/(]+(?:mso-list:|:\s*symbol)[^>]+>)/gi, '$1__MCE_ITEM__'] // Convert mso-list and symbol spans to item markers + ]); + } + + process([ + // Word comments like conditional comments etc + //gi, + + // Remove comments, scripts (e.g., msoShowComment), XML tag, VML content, MS Office namespaced tags, and a few other tags + /<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s\/>]))[^>]*>/gi, + + // Convert into for line-though + [/<(\/?)s>/gi, "<$1strike>"], + + // Replace nsbp entites to char since it's easier to handle + [/ /gi, "\u00a0"] + ]); + + // Remove bad attributes, with or without quotes, ensuring that attribute text is really inside a tag. + // If JavaScript had a RegExp look-behind, we could have integrated this with the last process() array and got rid of the loop. But alas, it does not, so we cannot. + do { + len = h.length; + h = h.replace(/(<[a-z][^>]*\s)(?:id|name|language|type|on\w+|\w+:\w+)=(?:"[^"]*"|\w+)\s?/gi, "$1"); + } while (len != h.length); + + // Remove all spans if no styles is to be retained + if (getParam(ed, "paste_retain_style_properties").replace(/^none$/i, "").length == 0) { + h = h.replace(/<\/?span[^>]*>/gi, ""); + } else { + // We're keeping styles, so at least clean them up. + // CSS Reference: http://msdn.microsoft.com/en-us/library/aa155477.aspx + + process([ + // Convert ___ to string of alternating breaking/non-breaking spaces of same length + [/([\s\u00a0]*)<\/span>/gi, + function(str, spaces) { + return (spaces.length > 0)? spaces.replace(/./, " ").slice(Math.floor(spaces.length/2)).split("").join("\u00a0") : ""; + } + ], + + // Examine all styles: delete junk, transform some, and keep the rest + [/(<[a-z][^>]*)\sstyle="([^"]*)"/gi, + function(str, tag, style) { + var n = [], + i = 0, + s = explode(trim(style).replace(/"/gi, "'"), ";"); + + // Examine each style definition within the tag's style attribute + each(s, function(v) { + var name, value, + parts = explode(v, ":"); + + function ensureUnits(v) { + return v + ((v !== "0") && (/\d$/.test(v)))? "px" : ""; + } + + if (parts.length == 2) { + name = parts[0].toLowerCase(); + value = parts[1].toLowerCase(); + + // Translate certain MS Office styles into their CSS equivalents + switch (name) { + case "mso-padding-alt": + case "mso-padding-top-alt": + case "mso-padding-right-alt": + case "mso-padding-bottom-alt": + case "mso-padding-left-alt": + case "mso-margin-alt": + case "mso-margin-top-alt": + case "mso-margin-right-alt": + case "mso-margin-bottom-alt": + case "mso-margin-left-alt": + case "mso-table-layout-alt": + case "mso-height": + case "mso-width": + case "mso-vertical-align-alt": + n[i++] = name.replace(/^mso-|-alt$/g, "") + ":" + ensureUnits(value); + return; + + case "horiz-align": + n[i++] = "text-align:" + value; + return; + + case "vert-align": + n[i++] = "vertical-align:" + value; + return; + + case "font-color": + case "mso-foreground": + n[i++] = "color:" + value; + return; + + case "mso-background": + case "mso-highlight": + n[i++] = "background:" + value; + return; + + case "mso-default-height": + n[i++] = "min-height:" + ensureUnits(value); + return; + + case "mso-default-width": + n[i++] = "min-width:" + ensureUnits(value); + return; + + case "mso-padding-between-alt": + n[i++] = "border-collapse:separate;border-spacing:" + ensureUnits(value); + return; + + case "text-line-through": + if ((value == "single") || (value == "double")) { + n[i++] = "text-decoration:line-through"; + } + return; + + case "mso-zero-height": + if (value == "yes") { + n[i++] = "display:none"; + } + return; + } + + // Eliminate all MS Office style definitions that have no CSS equivalent by examining the first characters in the name + if (/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/.test(name)) { + return; + } + + // If it reached this point, it must be a valid CSS style + n[i++] = name + ":" + parts[1]; // Lower-case name, but keep value case + } + }); + + // If style attribute contained any valid styles the re-write it; otherwise delete style attribute. + if (i > 0) { + return tag + ' style="' + n.join(';') + '"'; + } else { + return tag; + } + } + ] + ]); + } + } + + // Replace headers with + if (getParam(ed, "paste_convert_headers_to_strong")) { + process([ + [/]*>/gi, "

"], + [/<\/h[1-6][^>]*>/gi, "

"] + ]); + } + + // Class attribute options are: leave all as-is ("none"), remove all ("all"), or remove only those starting with mso ("mso"). + // Note:- paste_strip_class_attributes: "none", verify_css_classes: true is also a good variation. + stripClass = getParam(ed, "paste_strip_class_attributes"); + + if (stripClass !== "none") { + function removeClasses(match, g1) { + if (stripClass === "all") + return ''; + + var cls = grep(explode(g1.replace(/^(["'])(.*)\1$/, "$2"), " "), + function(v) { + return (/^(?!mso)/i.test(v)); + } + ); + + return cls.length ? ' class="' + cls.join(" ") + '"' : ''; + }; + + h = h.replace(/ class="([^"]+)"/gi, removeClasses); + h = h.replace(/ class=(\w+)/gi, removeClasses); + } + + // Remove spans option + if (getParam(ed, "paste_remove_spans")) { + h = h.replace(/<\/?span[^>]*>/gi, ""); + } + + //console.log('After preprocess:' + h); + + o.content = h; + }, + + /** + * Various post process items. + */ + _postProcess : function(pl, o) { + var t = this, ed = t.editor, dom = ed.dom, styleProps; + + if (o.wordContent) { + // Remove named anchors or TOC links + each(dom.select('a', o.node), function(a) { + if (!a.href || a.href.indexOf('#_Toc') != -1) + dom.remove(a, 1); + }); + + if (getParam(ed, "paste_convert_middot_lists")) { + t._convertLists(pl, o); + } + + // Process styles + styleProps = getParam(ed, "paste_retain_style_properties"); // retained properties + + // Process only if a string was specified and not equal to "all" or "*" + if ((tinymce.is(styleProps, "string")) && (styleProps !== "all") && (styleProps !== "*")) { + styleProps = tinymce.explode(styleProps.replace(/^none$/i, "")); + + // Retains some style properties + each(dom.select('*', o.node), function(el) { + var newStyle = {}, npc = 0, i, sp, sv; + + // Store a subset of the existing styles + if (styleProps) { + for (i = 0; i < styleProps.length; i++) { + sp = styleProps[i]; + sv = dom.getStyle(el, sp); + + if (sv) { + newStyle[sp] = sv; + npc++; + } + } + } + + // Remove all of the existing styles + dom.setAttrib(el, 'style', ''); + + if (styleProps && npc > 0) + dom.setStyles(el, newStyle); // Add back the stored subset of styles + else // Remove empty span tags that do not have class attributes + if (el.nodeName == 'SPAN' && !el.className) + dom.remove(el, true); + }); + } + } + + // Remove all style information or only specifically on WebKit to avoid the style bug on that browser + if (getParam(ed, "paste_remove_styles") || (getParam(ed, "paste_remove_styles_if_webkit") && tinymce.isWebKit)) { + each(dom.select('*[style]', o.node), function(el) { + el.removeAttribute('style'); + el.removeAttribute('_mce_style'); + }); + } else { + if (tinymce.isWebKit) { + // We need to compress the styles on WebKit since if you paste it will become + // Removing the mce_style that contains the real value will force the Serializer engine to compress the styles + each(dom.select('*', o.node), function(el) { + el.removeAttribute('_mce_style'); + }); + } + } + }, + + /** + * Converts the most common bullet and number formats in Office into a real semantic UL/LI list. + */ + _convertLists : function(pl, o) { + var dom = pl.editor.dom, listElm, li, lastMargin = -1, margin, levels = [], lastType, html; + + // Convert middot lists into real semantic lists + each(dom.select('p', o.node), function(p) { + var sib, val = '', type, html, idx, parents; + + // Get text node value at beginning of paragraph + for (sib = p.firstChild; sib && sib.nodeType == 3; sib = sib.nextSibling) + val += sib.nodeValue; + + val = p.innerHTML.replace(/<\/?\w+[^>]*>/gi, '').replace(/ /g, '\u00a0'); + + // Detect unordered lists look for bullets + if (/^(__MCE_ITEM__)+[\u2022\u00b7\u00a7\u00d8o]\s*\u00a0*/.test(val)) + type = 'ul'; + + // Detect ordered lists 1., a. or ixv. + if (/^__MCE_ITEM__\s*\w+\.\s*\u00a0{2,}/.test(val)) + type = 'ol'; + + // Check if node value matches the list pattern: o   + if (type) { + margin = parseFloat(p.style.marginLeft || 0); + + if (margin > lastMargin) + levels.push(margin); + + if (!listElm || type != lastType) { + listElm = dom.create(type); + dom.insertAfter(listElm, p); + } else { + // Nested list element + if (margin > lastMargin) { + listElm = li.appendChild(dom.create(type)); + } else if (margin < lastMargin) { + // Find parent level based on margin value + idx = tinymce.inArray(levels, margin); + parents = dom.getParents(listElm.parentNode, type); + listElm = parents[parents.length - 1 - idx] || listElm; + } + } + + // Remove middot or number spans if they exists + each(dom.select('span', p), function(span) { + var html = span.innerHTML.replace(/<\/?\w+[^>]*>/gi, ''); + + // Remove span with the middot or the number + if (type == 'ul' && /^[\u2022\u00b7\u00a7\u00d8o]/.test(html)) + dom.remove(span); + else if (/^[\s\S]*\w+\.( |\u00a0)*\s*/.test(html)) + dom.remove(span); + }); + + html = p.innerHTML; + + // Remove middot/list items + if (type == 'ul') + html = p.innerHTML.replace(/__MCE_ITEM__/g, '').replace(/^[\u2022\u00b7\u00a7\u00d8o]\s*( |\u00a0)+\s*/, ''); + else + html = p.innerHTML.replace(/__MCE_ITEM__/g, '').replace(/^\s*\w+\.( |\u00a0)+\s*/, ''); + + // Create li and add paragraph data into the new li + li = listElm.appendChild(dom.create('li', 0, html)); + dom.remove(p); + + lastMargin = margin; + lastType = type; + } else + listElm = lastMargin = 0; // End list element + }); + + // Remove any left over makers + html = o.node.innerHTML; + if (html.indexOf('__MCE_ITEM__') != -1) + o.node.innerHTML = html.replace(/__MCE_ITEM__/g, ''); + }, + + /** + * This method will split the current block parent and insert the contents inside the split position. + * This logic can be improved so text nodes at the start/end remain in the start/end block elements + */ + _insertBlockContent : function(ed, dom, content) { + var parentBlock, marker, sel = ed.selection, last, elm, vp, y, elmHeight, markerId = 'mce_marker'; + + function select(n) { + var r; + + if (tinymce.isIE) { + r = ed.getDoc().body.createTextRange(); + r.moveToElementText(n); + r.collapse(false); + r.select(); + } else { + sel.select(n, 1); + sel.collapse(false); + } + } + + // Insert a marker for the caret position + this._insert(' ', 1); + marker = dom.get(markerId); + parentBlock = dom.getParent(marker, 'p,h1,h2,h3,h4,h5,h6,ul,ol,th,td'); + + // If it's a parent block but not a table cell + if (parentBlock && !/TD|TH/.test(parentBlock.nodeName)) { + // Split parent block + marker = dom.split(parentBlock, marker); + + // Insert nodes before the marker + each(dom.create('div', 0, content).childNodes, function(n) { + last = marker.parentNode.insertBefore(n.cloneNode(true), marker); + }); + + // Move caret after marker + select(last); + } else { + dom.setOuterHTML(marker, content); + sel.select(ed.getBody(), 1); + sel.collapse(0); + } + + // Remove marker if it's left + while (elm = dom.get(markerId)) + dom.remove(elm); + + // Get element, position and height + elm = sel.getStart(); + vp = dom.getViewPort(ed.getWin()); + y = ed.dom.getPos(elm).y; + elmHeight = elm.clientHeight; + + // Is element within viewport if not then scroll it into view + if (y < vp.y || y + elmHeight > vp.y + vp.h) + ed.getDoc().body.scrollTop = y < vp.y ? y : y - vp.h + 25; + }, + + /** + * Inserts the specified contents at the caret position. + */ + _insert : function(h, skip_undo) { + var ed = this.editor; + + // First delete the contents seems to work better on WebKit + if (!ed.selection.isCollapsed()) + ed.getDoc().execCommand('Delete', false, null); + + // It's better to use the insertHTML method on Gecko since it will combine paragraphs correctly before inserting the contents + ed.execCommand(tinymce.isGecko ? 'insertHTML' : 'mceInsertContent', false, h, {skip_undo : skip_undo}); + }, + + /** + * Instead of the old plain text method which tried to re-create a paste operation, the + * new approach adds a plain text mode toggle switch that changes the behavior of paste. + * This function is passed the same input that the regular paste plugin produces. + * It performs additional scrubbing and produces (and inserts) the plain text. + * This approach leverages all of the great existing functionality in the paste + * plugin, and requires minimal changes to add the new functionality. + * Speednet - June 2009 + */ + _insertPlainText : function(ed, dom, h) { + var i, len, pos, rpos, node, breakElms, before, after, + w = ed.getWin(), + d = ed.getDoc(), + sel = ed.selection, + is = tinymce.is, + inArray = tinymce.inArray, + linebr = getParam(ed, "paste_text_linebreaktype"), + rl = getParam(ed, "paste_text_replacements"); + + function process(items) { + each(items, function(v) { + if (v.constructor == RegExp) + h = h.replace(v, ""); + else + h = h.replace(v[0], v[1]); + }); + }; + + if ((typeof(h) === "string") && (h.length > 0)) { + if (!entities) + entities = ("34,quot,38,amp,39,apos,60,lt,62,gt," + ed.serializer.settings.entities).split(","); + + // If HTML content with line-breaking tags, then remove all cr/lf chars because only tags will break a line + if (/<(?:p|br|h[1-6]|ul|ol|dl|table|t[rdh]|div|blockquote|fieldset|pre|address|center)[^>]*>/i.test(h)) { + process([ + /[\n\r]+/g + ]); + } else { + // Otherwise just get rid of carriage returns (only need linefeeds) + process([ + /\r+/g + ]); + } + + process([ + [/<\/(?:p|h[1-6]|ul|ol|dl|table|div|blockquote|fieldset|pre|address|center)>/gi, "\n\n"], // Block tags get a blank line after them + [/]*>|<\/tr>/gi, "\n"], // Single linebreak for
tags and table rows + [/<\/t[dh]>\s*]*>/gi, "\t"], // Table cells get tabs betweem them + /<[a-z!\/?][^>]*>/gi, // Delete all remaining tags + [/ /gi, " "], // Convert non-break spaces to regular spaces (remember, *plain text*) + [ + // HTML entity + /&(#\d+|[a-z0-9]{1,10});/gi, + + // Replace with actual character + function(e, s) { + if (s.charAt(0) === "#") { + return String.fromCharCode(s.slice(1)); + } + else { + return ((e = inArray(entities, s)) > 0)? String.fromCharCode(entities[e-1]) : " "; + } + } + ], + [/(?:(?!\n)\s)*(\n+)(?:(?!\n)\s)*/gi, "$1"], // Cool little RegExp deletes whitespace around linebreak chars. + [/\n{3,}/g, "\n\n"], // Max. 2 consecutive linebreaks + /^\s+|\s+$/g // Trim the front & back + ]); + + h = dom.encode(h); + + // Delete any highlighted text before pasting + if (!sel.isCollapsed()) { + d.execCommand("Delete", false, null); + } + + // Perform default or custom replacements + if (is(rl, "array") || (is(rl, "array"))) { + process(rl); + } + else if (is(rl, "string")) { + process(new RegExp(rl, "gi")); + } + + // Treat paragraphs as specified in the config + if (linebr == "none") { + process([ + [/\n+/g, " "] + ]); + } + else if (linebr == "br") { + process([ + [/\n/g, "
"] + ]); + } + else { + process([ + /^\s+|\s+$/g, + [/\n\n/g, "

"], + [/\n/g, "
"] + ]); + } + + // This next piece of code handles the situation where we're pasting more than one paragraph of plain + // text, and we are pasting the content into the middle of a block node in the editor. The block + // node gets split at the selection point into "Para A" and "Para B" (for the purposes of explaining). + // The first paragraph of the pasted text is appended to "Para A", and the last paragraph of the + // pasted text is prepended to "Para B". Any other paragraphs of pasted text are placed between + // "Para A" and "Para B". This code solves a host of problems with the original plain text plugin and + // now handles styles correctly. (Pasting plain text into a styled paragraph is supposed to make the + // plain text take the same style as the existing paragraph.) + if ((pos = h.indexOf("

")) != -1) { + rpos = h.lastIndexOf("

"); + node = sel.getNode(); + breakElms = []; // Get list of elements to break + + do { + if (node.nodeType == 1) { + // Don't break tables and break at body + if (node.nodeName == "TD" || node.nodeName == "BODY") { + break; + } + + breakElms[breakElms.length] = node; + } + } while (node = node.parentNode); + + // Are we in the middle of a block node? + if (breakElms.length > 0) { + before = h.substring(0, pos); + after = ""; + + for (i=0, len=breakElms.length; i"; + after += "<" + breakElms[breakElms.length-i-1].nodeName.toLowerCase() + ">"; + } + + if (pos == rpos) { + h = before + after + h.substring(pos+7); + } + else { + h = before + h.substring(pos+4, rpos+4) + after + h.substring(rpos+7); + } + } + } + + // Insert content at the caret, plus add a marker for repositioning the caret + ed.execCommand("mceInsertRawHTML", false, h + ' '); + + // Reposition the caret to the marker, which was placed immediately after the inserted content. + // Needs to be done asynchronously (in window.setTimeout) or else it doesn't work in all browsers. + // The second part of the code scrolls the content up if the caret is positioned off-screen. + // This is only necessary for WebKit browsers, but it doesn't hurt to use for all. + window.setTimeout(function() { + var marker = dom.get('_plain_text_marker'), + elm, vp, y, elmHeight; + + sel.select(marker, false); + d.execCommand("Delete", false, null); + marker = null; + + // Get element, position and height + elm = sel.getStart(); + vp = dom.getViewPort(w); + y = dom.getPos(elm).y; + elmHeight = elm.clientHeight; + + // Is element within viewport if not then scroll it into view + if ((y < vp.y) || (y + elmHeight > vp.y + vp.h)) { + d.body.scrollTop = y < vp.y ? y : y - vp.h + 25; + } + }, 0); + } + }, + + /** + * This method will open the old style paste dialogs. Some users might want the old behavior but still use the new cleanup engine. + */ + _legacySupport : function() { + var t = this, ed = t.editor; + + // Register command(s) for backwards compatibility + ed.addCommand("mcePasteWord", function() { + ed.windowManager.open({ + file: t.url + "/pasteword.htm", + width: parseInt(getParam(ed, "paste_dialog_width")), + height: parseInt(getParam(ed, "paste_dialog_height")), + inline: 1 + }); + }); + + if (getParam(ed, "paste_text_use_dialog")) { + ed.addCommand("mcePasteText", function() { + ed.windowManager.open({ + file : t.url + "/pastetext.htm", + width: parseInt(getParam(ed, "paste_dialog_width")), + height: parseInt(getParam(ed, "paste_dialog_height")), + inline : 1 + }); + }); + } + + // Register button for backwards compatibility + ed.addButton("pasteword", {title : "paste.paste_word_desc", cmd : "mcePasteWord"}); + } + }); + + // Register plugin + tinymce.PluginManager.add("paste", tinymce.plugins.PastePlugin); +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/all-wcprops new file mode 100644 index 0000000..f5fb68c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/js +END +pasteword.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js +END +pastetext.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/entries new file mode 100644 index 0000000..cabb38f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +pasteword.js +file + + + + +2010-06-04T12:51:46.195197Z +112504d12e971e4d32f17a59c5616c36 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1647 + +pastetext.js +file + + + + +2010-06-04T12:51:46.195197Z +d6e4b39f19b89118b34b0d21491494b7 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +884 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pastetext.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pastetext.js.svn-base new file mode 100644 index 0000000..c524f9e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pastetext.js.svn-base @@ -0,0 +1,36 @@ +tinyMCEPopup.requireLangPack(); + +var PasteTextDialog = { + init : function() { + this.resize(); + }, + + insert : function() { + var h = tinyMCEPopup.dom.encode(document.getElementById('content').value), lines; + + // Convert linebreaks into paragraphs + if (document.getElementById('linebreaks').checked) { + lines = h.split(/\r?\n/); + if (lines.length > 1) { + h = ''; + tinymce.each(lines, function(row) { + h += '

' + row + '

'; + }); + } + } + + tinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h}); + tinyMCEPopup.close(); + }, + + resize : function() { + var vp = tinyMCEPopup.dom.getViewPort(window), el; + + el = document.getElementById('content'); + + el.style.width = (vp.w - 20) + 'px'; + el.style.height = (vp.h - 90) + 'px'; + } +}; + +tinyMCEPopup.onInit.add(PasteTextDialog.init, PasteTextDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pasteword.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pasteword.js.svn-base new file mode 100644 index 0000000..a52731c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/.svn/text-base/pasteword.js.svn-base @@ -0,0 +1,51 @@ +tinyMCEPopup.requireLangPack(); + +var PasteWordDialog = { + init : function() { + var ed = tinyMCEPopup.editor, el = document.getElementById('iframecontainer'), ifr, doc, css, cssHTML = ''; + + // Create iframe + el.innerHTML = ''; + ifr = document.getElementById('iframe'); + doc = ifr.contentWindow.document; + + // Force absolute CSS urls + css = [ed.baseURI.toAbsolute("themes/" + ed.settings.theme + "/skins/" + ed.settings.skin + "/content.css")]; + css = css.concat(tinymce.explode(ed.settings.content_css) || []); + tinymce.each(css, function(u) { + cssHTML += ''; + }); + + // Write content into iframe + doc.open(); + doc.write('' + cssHTML + ''); + doc.close(); + + doc.designMode = 'on'; + this.resize(); + + window.setTimeout(function() { + ifr.contentWindow.focus(); + }, 10); + }, + + insert : function() { + var h = document.getElementById('iframe').contentWindow.document.body.innerHTML; + + tinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h, wordContent : true}); + tinyMCEPopup.close(); + }, + + resize : function() { + var vp = tinyMCEPopup.dom.getViewPort(window), el; + + el = document.getElementById('iframe'); + + if (el) { + el.style.width = (vp.w - 20) + 'px'; + el.style.height = (vp.h - 90) + 'px'; + } + } +}; + +tinyMCEPopup.onInit.add(PasteWordDialog.init, PasteWordDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js new file mode 100644 index 0000000..c524f9e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js @@ -0,0 +1,36 @@ +tinyMCEPopup.requireLangPack(); + +var PasteTextDialog = { + init : function() { + this.resize(); + }, + + insert : function() { + var h = tinyMCEPopup.dom.encode(document.getElementById('content').value), lines; + + // Convert linebreaks into paragraphs + if (document.getElementById('linebreaks').checked) { + lines = h.split(/\r?\n/); + if (lines.length > 1) { + h = ''; + tinymce.each(lines, function(row) { + h += '

' + row + '

'; + }); + } + } + + tinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h}); + tinyMCEPopup.close(); + }, + + resize : function() { + var vp = tinyMCEPopup.dom.getViewPort(window), el; + + el = document.getElementById('content'); + + el.style.width = (vp.w - 20) + 'px'; + el.style.height = (vp.h - 90) + 'px'; + } +}; + +tinyMCEPopup.onInit.add(PasteTextDialog.init, PasteTextDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js new file mode 100644 index 0000000..a52731c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js @@ -0,0 +1,51 @@ +tinyMCEPopup.requireLangPack(); + +var PasteWordDialog = { + init : function() { + var ed = tinyMCEPopup.editor, el = document.getElementById('iframecontainer'), ifr, doc, css, cssHTML = ''; + + // Create iframe + el.innerHTML = ''; + ifr = document.getElementById('iframe'); + doc = ifr.contentWindow.document; + + // Force absolute CSS urls + css = [ed.baseURI.toAbsolute("themes/" + ed.settings.theme + "/skins/" + ed.settings.skin + "/content.css")]; + css = css.concat(tinymce.explode(ed.settings.content_css) || []); + tinymce.each(css, function(u) { + cssHTML += ''; + }); + + // Write content into iframe + doc.open(); + doc.write('' + cssHTML + ''); + doc.close(); + + doc.designMode = 'on'; + this.resize(); + + window.setTimeout(function() { + ifr.contentWindow.focus(); + }, 10); + }, + + insert : function() { + var h = document.getElementById('iframe').contentWindow.document.body.innerHTML; + + tinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h, wordContent : true}); + tinyMCEPopup.close(); + }, + + resize : function() { + var vp = tinyMCEPopup.dom.getViewPort(window), el; + + el = document.getElementById('iframe'); + + if (el) { + el.style.width = (vp.w - 20) + 'px'; + el.style.height = (vp.h - 90) + 'px'; + } + } +}; + +tinyMCEPopup.onInit.add(PasteWordDialog.init, PasteWordDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/all-wcprops new file mode 100644 index 0000000..54301fe --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js +END +fr_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/fr_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/entries new file mode 100644 index 0000000..06a2dd9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:46.155198Z +aa388d5558885cf8f4c6ec3eb4ca3a7a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +228 + +fr_dlg.js +file + + + + +2010-06-04T12:51:46.155198Z +723b8efd3ca442e67dda780517d8a92e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +278 + +de_dlg.js +file + + + + +2010-06-04T12:51:46.158531Z +8d6db4a1ef8689c0995222518bd8156a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +264 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..5a3f5e8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,5 @@ +tinyMCE.addI18n('de.paste_dlg',{ +text_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen.", +text_linebreaks:"Zeilenumbr\u00FCche beibehalten", +word_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen." +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..eeac778 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,5 @@ +tinyMCE.addI18n('en.paste_dlg',{ +text_title:"Use CTRL+V on your keyboard to paste the text into the window.", +text_linebreaks:"Keep linebreaks", +word_title:"Use CTRL+V on your keyboard to paste the text into the window." +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/fr_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/fr_dlg.js.svn-base new file mode 100644 index 0000000..c4d43ea --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/.svn/text-base/fr_dlg.js.svn-base @@ -0,0 +1,5 @@ +tinyMCE.addI18n('fr.paste_dlg',{ +text_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre.", +text_linebreaks:"Conserver les retours \u00E0 la ligne", +word_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre." +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/de_dlg.js new file mode 100644 index 0000000..5a3f5e8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/de_dlg.js @@ -0,0 +1,5 @@ +tinyMCE.addI18n('de.paste_dlg',{ +text_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen.", +text_linebreaks:"Zeilenumbr\u00FCche beibehalten", +word_title:"Dr\u00FCcken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\u00FCgen." +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js new file mode 100644 index 0000000..eeac778 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js @@ -0,0 +1,5 @@ +tinyMCE.addI18n('en.paste_dlg',{ +text_title:"Use CTRL+V on your keyboard to paste the text into the window.", +text_linebreaks:"Keep linebreaks", +word_title:"Use CTRL+V on your keyboard to paste the text into the window." +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/fr_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/fr_dlg.js new file mode 100644 index 0000000..c4d43ea --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/fr_dlg.js @@ -0,0 +1,5 @@ +tinyMCE.addI18n('fr.paste_dlg',{ +text_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre.", +text_linebreaks:"Conserver les retours \u00E0 la ligne", +word_title:"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\u00EAtre." +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm new file mode 100644 index 0000000..b655945 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm @@ -0,0 +1,27 @@ + + + {#paste.paste_text_desc} + + + + +
+
{#paste.paste_text_desc}
+ +
+ +
+ +
+ +
{#paste_dlg.text_title}
+ + + +
+ + +
+
+ + \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm new file mode 100644 index 0000000..0f6bb41 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm @@ -0,0 +1,21 @@ + + + {#paste.paste_word_desc} + + + + +
+
{#paste.paste_word_desc}
+ +
{#paste_dlg.word_title}
+ +
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/all-wcprops new file mode 100644 index 0000000..8b8476a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js +END +preview.html +K 25 +svn:wc:ra_dav:version-url +V 95 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview/preview.html +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js +END +example.html +K 25 +svn:wc:ra_dav:version-url +V 95 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview/example.html +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/entries new file mode 100644 index 0000000..fc2f759 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/entries @@ -0,0 +1,167 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.798948Z +925216b63aabd5adc67d642ca2d04b4a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1051 + +jscripts +dir + +preview.html +file + + + + +2010-06-04T12:51:45.798948Z +bb02414f4cdd28c4a66e7fb5ed820f2d +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +630 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.798948Z +6f9c3234dfdc0f62b713e8771f4ca5dc +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1589 + +example.html +file + + + + +2010-06-04T12:51:45.798948Z +9b9290408ae10fa29ec29db60682be91 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +731 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..507909c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Preview",{init:function(a,b){var d=this,c=tinymce.explode(a.settings.content_css);d.editor=a;tinymce.each(c,function(f,e){c[e]=a.documentBaseURI.toAbsolute(f)});a.addCommand("mcePreview",function(){a.windowManager.open({file:a.getParam("plugin_preview_pageurl",b+"/preview.html"),width:parseInt(a.getParam("plugin_preview_width","550")),height:parseInt(a.getParam("plugin_preview_height","600")),resizable:"yes",scrollbars:"yes",popup_css:c?c.join(","):a.baseURI.toAbsolute("themes/"+a.settings.theme+"/skins/"+a.settings.skin+"/content.css"),inline:a.getParam("plugin_preview_inline",1)},{base:a.documentBaseURI.getURI()})});a.addButton("preview",{title:"preview.preview_desc",cmd:"mcePreview"})},getInfo:function(){return{longname:"Preview",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("preview",tinymce.plugins.Preview)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..80f00f0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,53 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Preview', { + init : function(ed, url) { + var t = this, css = tinymce.explode(ed.settings.content_css); + + t.editor = ed; + + // Force absolute CSS urls + tinymce.each(css, function(u, k) { + css[k] = ed.documentBaseURI.toAbsolute(u); + }); + + ed.addCommand('mcePreview', function() { + ed.windowManager.open({ + file : ed.getParam("plugin_preview_pageurl", url + "/preview.html"), + width : parseInt(ed.getParam("plugin_preview_width", "550")), + height : parseInt(ed.getParam("plugin_preview_height", "600")), + resizable : "yes", + scrollbars : "yes", + popup_css : css ? css.join(',') : ed.baseURI.toAbsolute("themes/" + ed.settings.theme + "/skins/" + ed.settings.skin + "/content.css"), + inline : ed.getParam("plugin_preview_inline", 1) + }, { + base : ed.documentBaseURI.getURI() + }); + }); + + ed.addButton('preview', {title : 'preview.preview_desc', cmd : 'mcePreview'}); + }, + + getInfo : function() { + return { + longname : 'Preview', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('preview', tinymce.plugins.Preview); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/example.html.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/example.html.svn-base new file mode 100644 index 0000000..b2c3d90 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/example.html.svn-base @@ -0,0 +1,28 @@ + + + + + +Example of a custom preview page + + + +Editor contents:
+
+ +
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/preview.html.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/preview.html.svn-base new file mode 100644 index 0000000..67e7b14 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/.svn/text-base/preview.html.svn-base @@ -0,0 +1,17 @@ + + + + + + +{#preview.preview_desc} + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js new file mode 100644 index 0000000..507909c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Preview",{init:function(a,b){var d=this,c=tinymce.explode(a.settings.content_css);d.editor=a;tinymce.each(c,function(f,e){c[e]=a.documentBaseURI.toAbsolute(f)});a.addCommand("mcePreview",function(){a.windowManager.open({file:a.getParam("plugin_preview_pageurl",b+"/preview.html"),width:parseInt(a.getParam("plugin_preview_width","550")),height:parseInt(a.getParam("plugin_preview_height","600")),resizable:"yes",scrollbars:"yes",popup_css:c?c.join(","):a.baseURI.toAbsolute("themes/"+a.settings.theme+"/skins/"+a.settings.skin+"/content.css"),inline:a.getParam("plugin_preview_inline",1)},{base:a.documentBaseURI.getURI()})});a.addButton("preview",{title:"preview.preview_desc",cmd:"mcePreview"})},getInfo:function(){return{longname:"Preview",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("preview",tinymce.plugins.Preview)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js new file mode 100644 index 0000000..80f00f0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js @@ -0,0 +1,53 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Preview', { + init : function(ed, url) { + var t = this, css = tinymce.explode(ed.settings.content_css); + + t.editor = ed; + + // Force absolute CSS urls + tinymce.each(css, function(u, k) { + css[k] = ed.documentBaseURI.toAbsolute(u); + }); + + ed.addCommand('mcePreview', function() { + ed.windowManager.open({ + file : ed.getParam("plugin_preview_pageurl", url + "/preview.html"), + width : parseInt(ed.getParam("plugin_preview_width", "550")), + height : parseInt(ed.getParam("plugin_preview_height", "600")), + resizable : "yes", + scrollbars : "yes", + popup_css : css ? css.join(',') : ed.baseURI.toAbsolute("themes/" + ed.settings.theme + "/skins/" + ed.settings.skin + "/content.css"), + inline : ed.getParam("plugin_preview_inline", 1) + }, { + base : ed.documentBaseURI.getURI() + }); + }); + + ed.addButton('preview', {title : 'preview.preview_desc', cmd : 'mcePreview'}); + }, + + getInfo : function() { + return { + longname : 'Preview', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('preview', tinymce.plugins.Preview); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/example.html b/assets/tinymce/jscripts/tiny_mce/plugins/preview/example.html new file mode 100644 index 0000000..b2c3d90 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/example.html @@ -0,0 +1,28 @@ + + + + + +Example of a custom preview page + + + +Editor contents:
+
+ +
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/all-wcprops new file mode 100644 index 0000000..dc7a9f9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview/jscripts +END +embed.js +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/entries new file mode 100644 index 0000000..ead424a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/preview/jscripts +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +embed.js +file + + + + +2010-06-04T12:51:45.792281Z +39ebc57f44e1cc683724e1c1ff761894 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1938 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/text-base/embed.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/text-base/embed.js.svn-base new file mode 100644 index 0000000..f8dc810 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/.svn/text-base/embed.js.svn-base @@ -0,0 +1,73 @@ +/** + * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose. + */ + +function writeFlash(p) { + writeEmbed( + 'D27CDB6E-AE6D-11cf-96B8-444553540000', + 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0', + 'application/x-shockwave-flash', + p + ); +} + +function writeShockWave(p) { + writeEmbed( + '166B1BCA-3F9C-11CF-8075-444553540000', + 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0', + 'application/x-director', + p + ); +} + +function writeQuickTime(p) { + writeEmbed( + '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B', + 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0', + 'video/quicktime', + p + ); +} + +function writeRealMedia(p) { + writeEmbed( + 'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA', + 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0', + 'audio/x-pn-realaudio-plugin', + p + ); +} + +function writeWindowsMedia(p) { + p.url = p.src; + writeEmbed( + '6BF52A52-394A-11D3-B153-00C04F79FAA6', + 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701', + 'application/x-mplayer2', + p + ); +} + +function writeEmbed(cls, cb, mt, p) { + var h = '', n; + + h += ''; + + h += ''; + + h += ' + + + + + +{#preview.preview_desc} + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/all-wcprops new file mode 100644 index 0000000..74535b0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/print +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/entries new file mode 100644 index 0000000..3e961fd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/print +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.032283Z +53eb1da78f727ee8337671fb86354c17 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +492 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.032283Z +f11547aa114df69b35df319003105e11 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +881 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..b5b3a55 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Print",{init:function(a,b){a.addCommand("mcePrint",function(){a.getWin().print()});a.addButton("print",{title:"print.print_desc",cmd:"mcePrint"})},getInfo:function(){return{longname:"Print",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("print",tinymce.plugins.Print)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..3933fe6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/print/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,34 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Print', { + init : function(ed, url) { + ed.addCommand('mcePrint', function() { + ed.getWin().print(); + }); + + ed.addButton('print', {title : 'print.print_desc', cmd : 'mcePrint'}); + }, + + getInfo : function() { + return { + longname : 'Print', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('print', tinymce.plugins.Print); +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js new file mode 100644 index 0000000..b5b3a55 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Print",{init:function(a,b){a.addCommand("mcePrint",function(){a.getWin().print()});a.addButton("print",{title:"print.print_desc",cmd:"mcePrint"})},getInfo:function(){return{longname:"Print",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("print",tinymce.plugins.Print)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js new file mode 100644 index 0000000..3933fe6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js @@ -0,0 +1,34 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Print', { + init : function(ed, url) { + ed.addCommand('mcePrint', function() { + ed.getWin().print(); + }); + + ed.addButton('print', {title : 'print.print_desc', cmd : 'mcePrint'}); + }, + + getInfo : function() { + return { + longname : 'Print', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('print', tinymce.plugins.Print); +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/all-wcprops new file mode 100644 index 0000000..2da2d1f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 79 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/save +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/entries new file mode 100644 index 0000000..841100d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/save +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.190917Z +307a0743c68c4e4aff005f13027f296f +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1569 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.191880Z +4dcbdaab64f06550a2db2b650f99d411 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2529 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..8e93996 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Save",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceSave",c._save,c);a.addCommand("mceCancel",c._cancel,c);a.addButton("save",{title:"save.save_desc",cmd:"mceSave"});a.addButton("cancel",{title:"save.cancel_desc",cmd:"mceCancel"});a.onNodeChange.add(c._nodeChange,c);a.addShortcut("ctrl+s",a.getLang("save.save_desc"),"mceSave")},getInfo:function(){return{longname:"Save",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,c){var b=this.editor;if(b.getParam("save_enablewhendirty")){a.setDisabled("save",!b.isDirty());a.setDisabled("cancel",!b.isDirty())}},_save:function(){var c=this.editor,a,e,d,b;a=tinymce.DOM.get(c.id).form||tinymce.DOM.getParent(c.id,"form");if(c.getParam("save_enablewhendirty")&&!c.isDirty()){return}tinyMCE.triggerSave();if(e=c.getParam("save_onsavecallback")){if(c.execCallback("save_onsavecallback",c)){c.startContent=tinymce.trim(c.getContent({format:"raw"}));c.nodeChanged()}return}if(a){c.isNotDirty=true;if(a.onsubmit==null||a.onsubmit()!=false){a.submit()}c.nodeChanged()}else{c.windowManager.alert("Error: No form element found.")}},_cancel:function(){var a=this.editor,c,b=tinymce.trim(a.startContent);if(c=a.getParam("save_oncancelcallback")){a.execCallback("save_oncancelcallback",a);return}a.setContent(b);a.undoManager.clear();a.nodeChanged()}});tinymce.PluginManager.add("save",tinymce.plugins.Save)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..f5a3de8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/save/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,101 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Save', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceSave', t._save, t); + ed.addCommand('mceCancel', t._cancel, t); + + // Register buttons + ed.addButton('save', {title : 'save.save_desc', cmd : 'mceSave'}); + ed.addButton('cancel', {title : 'save.cancel_desc', cmd : 'mceCancel'}); + + ed.onNodeChange.add(t._nodeChange, t); + ed.addShortcut('ctrl+s', ed.getLang('save.save_desc'), 'mceSave'); + }, + + getInfo : function() { + return { + longname : 'Save', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + _nodeChange : function(ed, cm, n) { + var ed = this.editor; + + if (ed.getParam('save_enablewhendirty')) { + cm.setDisabled('save', !ed.isDirty()); + cm.setDisabled('cancel', !ed.isDirty()); + } + }, + + // Private methods + + _save : function() { + var ed = this.editor, formObj, os, i, elementId; + + formObj = tinymce.DOM.get(ed.id).form || tinymce.DOM.getParent(ed.id, 'form'); + + if (ed.getParam("save_enablewhendirty") && !ed.isDirty()) + return; + + tinyMCE.triggerSave(); + + // Use callback instead + if (os = ed.getParam("save_onsavecallback")) { + if (ed.execCallback('save_onsavecallback', ed)) { + ed.startContent = tinymce.trim(ed.getContent({format : 'raw'})); + ed.nodeChanged(); + } + + return; + } + + if (formObj) { + ed.isNotDirty = true; + + if (formObj.onsubmit == null || formObj.onsubmit() != false) + formObj.submit(); + + ed.nodeChanged(); + } else + ed.windowManager.alert("Error: No form element found."); + }, + + _cancel : function() { + var ed = this.editor, os, h = tinymce.trim(ed.startContent); + + // Use callback instead + if (os = ed.getParam("save_oncancelcallback")) { + ed.execCallback('save_oncancelcallback', ed); + return; + } + + ed.setContent(h); + ed.undoManager.clear(); + ed.nodeChanged(); + } + }); + + // Register plugin + tinymce.PluginManager.add('save', tinymce.plugins.Save); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js new file mode 100644 index 0000000..8e93996 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.Save",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceSave",c._save,c);a.addCommand("mceCancel",c._cancel,c);a.addButton("save",{title:"save.save_desc",cmd:"mceSave"});a.addButton("cancel",{title:"save.cancel_desc",cmd:"mceCancel"});a.onNodeChange.add(c._nodeChange,c);a.addShortcut("ctrl+s",a.getLang("save.save_desc"),"mceSave")},getInfo:function(){return{longname:"Save",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,c){var b=this.editor;if(b.getParam("save_enablewhendirty")){a.setDisabled("save",!b.isDirty());a.setDisabled("cancel",!b.isDirty())}},_save:function(){var c=this.editor,a,e,d,b;a=tinymce.DOM.get(c.id).form||tinymce.DOM.getParent(c.id,"form");if(c.getParam("save_enablewhendirty")&&!c.isDirty()){return}tinyMCE.triggerSave();if(e=c.getParam("save_onsavecallback")){if(c.execCallback("save_onsavecallback",c)){c.startContent=tinymce.trim(c.getContent({format:"raw"}));c.nodeChanged()}return}if(a){c.isNotDirty=true;if(a.onsubmit==null||a.onsubmit()!=false){a.submit()}c.nodeChanged()}else{c.windowManager.alert("Error: No form element found.")}},_cancel:function(){var a=this.editor,c,b=tinymce.trim(a.startContent);if(c=a.getParam("save_oncancelcallback")){a.execCallback("save_oncancelcallback",a);return}a.setContent(b);a.undoManager.clear();a.nodeChanged()}});tinymce.PluginManager.add("save",tinymce.plugins.Save)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js new file mode 100644 index 0000000..f5a3de8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js @@ -0,0 +1,101 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.Save', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceSave', t._save, t); + ed.addCommand('mceCancel', t._cancel, t); + + // Register buttons + ed.addButton('save', {title : 'save.save_desc', cmd : 'mceSave'}); + ed.addButton('cancel', {title : 'save.cancel_desc', cmd : 'mceCancel'}); + + ed.onNodeChange.add(t._nodeChange, t); + ed.addShortcut('ctrl+s', ed.getLang('save.save_desc'), 'mceSave'); + }, + + getInfo : function() { + return { + longname : 'Save', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + // Private methods + + _nodeChange : function(ed, cm, n) { + var ed = this.editor; + + if (ed.getParam('save_enablewhendirty')) { + cm.setDisabled('save', !ed.isDirty()); + cm.setDisabled('cancel', !ed.isDirty()); + } + }, + + // Private methods + + _save : function() { + var ed = this.editor, formObj, os, i, elementId; + + formObj = tinymce.DOM.get(ed.id).form || tinymce.DOM.getParent(ed.id, 'form'); + + if (ed.getParam("save_enablewhendirty") && !ed.isDirty()) + return; + + tinyMCE.triggerSave(); + + // Use callback instead + if (os = ed.getParam("save_onsavecallback")) { + if (ed.execCallback('save_onsavecallback', ed)) { + ed.startContent = tinymce.trim(ed.getContent({format : 'raw'})); + ed.nodeChanged(); + } + + return; + } + + if (formObj) { + ed.isNotDirty = true; + + if (formObj.onsubmit == null || formObj.onsubmit() != false) + formObj.submit(); + + ed.nodeChanged(); + } else + ed.windowManager.alert("Error: No form element found."); + }, + + _cancel : function() { + var ed = this.editor, os, h = tinymce.trim(ed.startContent); + + // Use callback instead + if (os = ed.getParam("save_oncancelcallback")) { + ed.execCallback('save_oncancelcallback', ed); + return; + } + + ed.setContent(h); + ed.undoManager.clear(); + ed.nodeChanged(); + } + }); + + // Register plugin + tinymce.PluginManager.add('save', tinymce.plugins.Save); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/all-wcprops new file mode 100644 index 0000000..616d250 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js +END +searchreplace.htm +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/entries new file mode 100644 index 0000000..f065bfd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/entries @@ -0,0 +1,139 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace +http://django-grappelli.googlecode.com/svn + + + +2010-05-27T14:09:40.573569Z +1045 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.428950Z +c5c6739b821d56fe685baa0bd57c4821 +2010-05-27T14:09:40.573569Z +1045 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +1063 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.428950Z +dc7c4bf052ea0f3521714846ccd1ce36 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1544 + +css +dir + +searchreplace.htm +file + + + + +2010-06-04T12:51:46.432281Z +d8af2931789e281d3eeaf0c56ffd6dc6 +2010-05-27T14:09:40.573569Z +1045 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +5676 + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/searchreplace.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/searchreplace.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/prop-base/searchreplace.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..f9d14a5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.SearchReplacePlugin',{init:function(ed,url){function open(m){ed.windowManager.open({file:url+'/searchreplace.htm',width:480+parseInt(ed.getLang('searchreplace.delta_width',0)),height:270+parseInt(ed.getLang('searchreplace.delta_height',0)),inline:1,auto_focus:0},{mode:m,search_string:ed.selection.getContent({format:'text'}),plugin_url:url});};ed.addCommand('mceSearch',function(){open('search');});ed.addCommand('mceReplace',function(){open('replace');});ed.addButton('search',{title:'searchreplace.search_desc',cmd:'mceSearch'});ed.addButton('replace',{title:'searchreplace.replace_desc',cmd:'mceReplace'});ed.addShortcut('ctrl+f','searchreplace.search_desc','mceSearch');},getInfo:function(){return{longname:'Search/Replace',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('searchreplace',tinymce.plugins.SearchReplacePlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..0781286 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,54 @@ +/** + * $Id: editor_plugin_src.js 686 2008-03-09 18:13:49Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + tinymce.create('tinymce.plugins.SearchReplacePlugin', { + init : function(ed, url) { + function open(m) { + ed.windowManager.open({ + file : url + '/searchreplace.htm', + width : 420 + parseInt(ed.getLang('searchreplace.delta_width', 0)), + height : 160 + parseInt(ed.getLang('searchreplace.delta_height', 0)), + inline : 1, + auto_focus : 0 + }, { + mode : m, + search_string : ed.selection.getContent({format : 'text'}), + plugin_url : url + }); + }; + + // Register commands + ed.addCommand('mceSearch', function() { + open('search'); + }); + + ed.addCommand('mceReplace', function() { + open('replace'); + }); + + // Register buttons + ed.addButton('search', {title : 'searchreplace.search_desc', cmd : 'mceSearch'}); + ed.addButton('replace', {title : 'searchreplace.replace_desc', cmd : 'mceReplace'}); + + ed.addShortcut('ctrl+f', 'searchreplace.search_desc', 'mceSearch'); + }, + + getInfo : function() { + return { + longname : 'Search/Replace', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('searchreplace', tinymce.plugins.SearchReplacePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/searchreplace.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/searchreplace.htm.svn-base new file mode 100644 index 0000000..334b734 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/.svn/text-base/searchreplace.htm.svn-base @@ -0,0 +1,87 @@ + + + + {#searchreplace_dlg.replace_title} + + + + + + + + +
+ + +
+
+
+
+
+
+
+
+
+
+
    +
  • +
  • +
+
+
+
+
+
+ + +
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + +
+
+
+
+
+ + +
+
+
+
+ +
+
+
    +
  • +
  • +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/all-wcprops new file mode 100644 index 0000000..fcaf423 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/css +END +searchreplace.css +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/entries new file mode 100644 index 0000000..6d79e58 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/css +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +searchreplace.css +file + + + + +2010-06-04T12:51:46.418948Z +d4f8026713b4f1394d9977196a9de1bd +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +170 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/prop-base/searchreplace.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/prop-base/searchreplace.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/prop-base/searchreplace.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/text-base/searchreplace.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/text-base/searchreplace.css.svn-base new file mode 100644 index 0000000..3e2eaf3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/.svn/text-base/searchreplace.css.svn-base @@ -0,0 +1,6 @@ +.panel_wrapper {height:85px;} +.panel_wrapper div.current {height:85px;} + +/* IE */ +* html .panel_wrapper {height:100px;} +* html .panel_wrapper div.current {height:100px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css new file mode 100755 index 0000000..3e2eaf3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css @@ -0,0 +1,6 @@ +.panel_wrapper {height:85px;} +.panel_wrapper div.current {height:85px;} + +/* IE */ +* html .panel_wrapper {height:100px;} +* html .panel_wrapper div.current {height:100px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js new file mode 100755 index 0000000..f9d14a5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.SearchReplacePlugin',{init:function(ed,url){function open(m){ed.windowManager.open({file:url+'/searchreplace.htm',width:480+parseInt(ed.getLang('searchreplace.delta_width',0)),height:270+parseInt(ed.getLang('searchreplace.delta_height',0)),inline:1,auto_focus:0},{mode:m,search_string:ed.selection.getContent({format:'text'}),plugin_url:url});};ed.addCommand('mceSearch',function(){open('search');});ed.addCommand('mceReplace',function(){open('replace');});ed.addButton('search',{title:'searchreplace.search_desc',cmd:'mceSearch'});ed.addButton('replace',{title:'searchreplace.replace_desc',cmd:'mceReplace'});ed.addShortcut('ctrl+f','searchreplace.search_desc','mceSearch');},getInfo:function(){return{longname:'Search/Replace',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace',version:tinymce.majorVersion+"."+tinymce.minorVersion};}});tinymce.PluginManager.add('searchreplace',tinymce.plugins.SearchReplacePlugin);})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js new file mode 100755 index 0000000..0781286 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js @@ -0,0 +1,54 @@ +/** + * $Id: editor_plugin_src.js 686 2008-03-09 18:13:49Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + tinymce.create('tinymce.plugins.SearchReplacePlugin', { + init : function(ed, url) { + function open(m) { + ed.windowManager.open({ + file : url + '/searchreplace.htm', + width : 420 + parseInt(ed.getLang('searchreplace.delta_width', 0)), + height : 160 + parseInt(ed.getLang('searchreplace.delta_height', 0)), + inline : 1, + auto_focus : 0 + }, { + mode : m, + search_string : ed.selection.getContent({format : 'text'}), + plugin_url : url + }); + }; + + // Register commands + ed.addCommand('mceSearch', function() { + open('search'); + }); + + ed.addCommand('mceReplace', function() { + open('replace'); + }); + + // Register buttons + ed.addButton('search', {title : 'searchreplace.search_desc', cmd : 'mceSearch'}); + ed.addButton('replace', {title : 'searchreplace.replace_desc', cmd : 'mceReplace'}); + + ed.addShortcut('ctrl+f', 'searchreplace.search_desc', 'mceSearch'); + }, + + getInfo : function() { + return { + longname : 'Search/Replace', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('searchreplace', tinymce.plugins.SearchReplacePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/all-wcprops new file mode 100644 index 0000000..21a9ed4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/js +END +searchreplace.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/entries new file mode 100644 index 0000000..1820bd1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/js +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +searchreplace.js +file + + + + +2010-06-04T12:51:46.428950Z +6fbb74616637579241653a12e3a9219f +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +3133 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/prop-base/searchreplace.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/prop-base/searchreplace.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/prop-base/searchreplace.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/text-base/searchreplace.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/text-base/searchreplace.js.svn-base new file mode 100644 index 0000000..e555a3f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/.svn/text-base/searchreplace.js.svn-base @@ -0,0 +1,126 @@ +tinyMCEPopup.requireLangPack(); + +var SearchReplaceDialog = { + init : function(ed) { + var f = document.forms[0], m = tinyMCEPopup.getWindowArg("mode"); + + this.switchMode(m); + + f[m + '_panel_searchstring'].value = tinyMCEPopup.getWindowArg("search_string"); + + // Focus input field + f[m + '_panel_searchstring'].focus(); + }, + + switchMode : function(m) { + var f, lm = this.lastMode; + + if (lm != m) { + f = document.forms[0]; + + if (lm) { + f[m + '_panel_searchstring'].value = f[lm + '_panel_searchstring'].value; + f[m + '_panel_backwardsu'].checked = f[lm + '_panel_backwardsu'].checked; + f[m + '_panel_backwardsd'].checked = f[lm + '_panel_backwardsd'].checked; + f[m + '_panel_casesensitivebox'].checked = f[lm + '_panel_casesensitivebox'].checked; + } + + mcTabs.displayTab(m + '_tab', m + '_panel'); + document.getElementById("replaceBtn").style.display = (m == "replace") ? "inline" : "none"; + document.getElementById("replaceAllBtn").style.display = (m == "replace") ? "inline" : "none"; + this.lastMode = m; + } + }, + + searchNext : function(a) { + var ed = tinyMCEPopup.editor, se = ed.selection, r = se.getRng(), f, m = this.lastMode, s, b, fl = 0, w = ed.getWin(), wm = ed.windowManager, fo = 0; + + // Get input + f = document.forms[0]; + s = f[m + '_panel_searchstring'].value; + b = f[m + '_panel_backwardsu'].checked; + ca = f[m + '_panel_casesensitivebox'].checked; + rs = f['replace_panel_replacestring'].value; + + if (s == '') + return; + + function fix() { + // Correct Firefox graphics glitches + r = se.getRng().cloneRange(); + ed.getDoc().execCommand('SelectAll', false, null); + se.setRng(r); + }; + + function replace() { + if (tinymce.isIE) + ed.selection.getRng().duplicate().pasteHTML(rs); // Needs to be duplicated due to selection bug in IE + else + ed.getDoc().execCommand('InsertHTML', false, rs); + }; + + // IE flags + if (ca) + fl = fl | 4; + + switch (a) { + case 'all': + // Move caret to beginning of text + ed.execCommand('SelectAll'); + ed.selection.collapse(true); + + if (tinymce.isIE) { + while (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + replace(); + fo = 1; + } + + tinyMCEPopup.storeSelection(); + } else { + while (w.find(s, ca, b, false, false, false, false)) { + replace(); + fo = 1; + } + } + + if (fo) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced')); + else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + return; + + case 'current': + if (!ed.selection.isCollapsed()) + replace(); + + break; + } + + se.collapse(b); + r = se.getRng(); + + // Whats the point + if (!s) + return; + + if (tinymce.isIE) { + if (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + } else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + tinyMCEPopup.storeSelection(); + } else { + if (!w.find(s, ca, b, false, false, false, false)) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + else + fix(); + } + } +}; + +tinyMCEPopup.onInit.add(SearchReplaceDialog.init, SearchReplaceDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js new file mode 100755 index 0000000..e555a3f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js @@ -0,0 +1,126 @@ +tinyMCEPopup.requireLangPack(); + +var SearchReplaceDialog = { + init : function(ed) { + var f = document.forms[0], m = tinyMCEPopup.getWindowArg("mode"); + + this.switchMode(m); + + f[m + '_panel_searchstring'].value = tinyMCEPopup.getWindowArg("search_string"); + + // Focus input field + f[m + '_panel_searchstring'].focus(); + }, + + switchMode : function(m) { + var f, lm = this.lastMode; + + if (lm != m) { + f = document.forms[0]; + + if (lm) { + f[m + '_panel_searchstring'].value = f[lm + '_panel_searchstring'].value; + f[m + '_panel_backwardsu'].checked = f[lm + '_panel_backwardsu'].checked; + f[m + '_panel_backwardsd'].checked = f[lm + '_panel_backwardsd'].checked; + f[m + '_panel_casesensitivebox'].checked = f[lm + '_panel_casesensitivebox'].checked; + } + + mcTabs.displayTab(m + '_tab', m + '_panel'); + document.getElementById("replaceBtn").style.display = (m == "replace") ? "inline" : "none"; + document.getElementById("replaceAllBtn").style.display = (m == "replace") ? "inline" : "none"; + this.lastMode = m; + } + }, + + searchNext : function(a) { + var ed = tinyMCEPopup.editor, se = ed.selection, r = se.getRng(), f, m = this.lastMode, s, b, fl = 0, w = ed.getWin(), wm = ed.windowManager, fo = 0; + + // Get input + f = document.forms[0]; + s = f[m + '_panel_searchstring'].value; + b = f[m + '_panel_backwardsu'].checked; + ca = f[m + '_panel_casesensitivebox'].checked; + rs = f['replace_panel_replacestring'].value; + + if (s == '') + return; + + function fix() { + // Correct Firefox graphics glitches + r = se.getRng().cloneRange(); + ed.getDoc().execCommand('SelectAll', false, null); + se.setRng(r); + }; + + function replace() { + if (tinymce.isIE) + ed.selection.getRng().duplicate().pasteHTML(rs); // Needs to be duplicated due to selection bug in IE + else + ed.getDoc().execCommand('InsertHTML', false, rs); + }; + + // IE flags + if (ca) + fl = fl | 4; + + switch (a) { + case 'all': + // Move caret to beginning of text + ed.execCommand('SelectAll'); + ed.selection.collapse(true); + + if (tinymce.isIE) { + while (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + replace(); + fo = 1; + } + + tinyMCEPopup.storeSelection(); + } else { + while (w.find(s, ca, b, false, false, false, false)) { + replace(); + fo = 1; + } + } + + if (fo) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced')); + else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + return; + + case 'current': + if (!ed.selection.isCollapsed()) + replace(); + + break; + } + + se.collapse(b); + r = se.getRng(); + + // Whats the point + if (!s) + return; + + if (tinymce.isIE) { + if (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + } else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + tinyMCEPopup.storeSelection(); + } else { + if (!w.find(s, ca, b, false, false, false, false)) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + else + fix(); + } + } +}; + +tinyMCEPopup.onInit.add(SearchReplaceDialog.init, SearchReplaceDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/all-wcprops new file mode 100644 index 0000000..01b93cd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/entries new file mode 100644 index 0000000..e390a34 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:46.408948Z +8d4507bdc22c3d39fa0b1537172c8af3 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +454 + +de_dlg.js +file + + + + +2010-06-04T12:51:46.408948Z +0cf83de04ff4382089ce56a9d62101f2 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +531 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/de_dlg.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/de_dlg.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/en_dlg.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/prop-base/en_dlg.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..6bb60d6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,16 @@ +tinyMCE.addI18n('de.searchreplace_dlg',{ +searchnext_desc:"Weitersuchen", +notfound:"Die Suche ist am Ende angelangt. Die Zeichenkette konnte nicht gefunden werden.", +search_title:"Suchen", +replace_title:"Suchen/Ersetzen", +allreplaced:"Alle Vorkommen der Zeichenkette wurden ersetzt.", +findwhat:"Zu suchender Text", +replacewith:"Ersetzen durch", +direction:"Suchrichtung", +up:"Aufw\u00E4rts", +down:"Abw\u00E4rts", +mcase:"Gro\u00DF-/Kleinschreibung beachten", +findnext:"Weitersuchen", +replace:"Ersetzen", +replaceall:"Alle ersetzen" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..3dd3453 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,16 @@ +tinyMCE.addI18n('en.searchreplace_dlg',{ +searchnext_desc:"Find again", +notfound:"The search has been completed. The search string could not be found.", +search_title:"Find", +replace_title:"Find/Replace", +allreplaced:"All occurrences of the search string were replaced.", +findwhat:"Find what", +replacewith:"Replace with", +direction:"Direction", +up:"Up", +down:"Down", +mcase:"Match case", +findnext:"Find next", +replace:"Replace", +replaceall:"Replace all" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/de_dlg.js new file mode 100755 index 0000000..6bb60d6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/de_dlg.js @@ -0,0 +1,16 @@ +tinyMCE.addI18n('de.searchreplace_dlg',{ +searchnext_desc:"Weitersuchen", +notfound:"Die Suche ist am Ende angelangt. Die Zeichenkette konnte nicht gefunden werden.", +search_title:"Suchen", +replace_title:"Suchen/Ersetzen", +allreplaced:"Alle Vorkommen der Zeichenkette wurden ersetzt.", +findwhat:"Zu suchender Text", +replacewith:"Ersetzen durch", +direction:"Suchrichtung", +up:"Aufw\u00E4rts", +down:"Abw\u00E4rts", +mcase:"Gro\u00DF-/Kleinschreibung beachten", +findnext:"Weitersuchen", +replace:"Ersetzen", +replaceall:"Alle ersetzen" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js new file mode 100755 index 0000000..3dd3453 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js @@ -0,0 +1,16 @@ +tinyMCE.addI18n('en.searchreplace_dlg',{ +searchnext_desc:"Find again", +notfound:"The search has been completed. The search string could not be found.", +search_title:"Find", +replace_title:"Find/Replace", +allreplaced:"All occurrences of the search string were replaced.", +findwhat:"Find what", +replacewith:"Replace with", +direction:"Direction", +up:"Up", +down:"Down", +mcase:"Match case", +findnext:"Find next", +replace:"Replace", +replaceall:"Replace all" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm new file mode 100755 index 0000000..334b734 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm @@ -0,0 +1,87 @@ + + + + {#searchreplace_dlg.replace_title} + + + + + + + + +
+ + +
+
+
+
+
+
+
+
+
+
+
    +
  • +
  • +
+
+
+
+
+
+ + +
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + +
+
+
+
+
+ + +
+
+
+
+ +
+
+
    +
  • +
  • +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/all-wcprops new file mode 100644 index 0000000..762b59d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 114 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js +END +searchreplace.htm +K 25 +svn:wc:ra_dav:version-url +V 111 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/entries new file mode 100644 index 0000000..3b711fd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/entries @@ -0,0 +1,139 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:35:55.822899Z +1018 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.508948Z +53c400709c76c824b9fe05bf94656fbc +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1031 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.508948Z +70842df1c46ef6552e8e39e8023c0ac3 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1643 + +css +dir + +searchreplace.htm +file + + + + +2010-06-04T12:51:44.512282Z +aad4c6a0602dc88342886239b4318543 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4784 + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..cd9c985 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.SearchReplacePlugin",{init:function(a,c){function b(d){a.windowManager.open({file:c+"/searchreplace.htm",width:420+parseInt(a.getLang("searchreplace.delta_width",0)),height:170+parseInt(a.getLang("searchreplace.delta_height",0)),inline:1,auto_focus:0},{mode:d,search_string:a.selection.getContent({format:"text"}),plugin_url:c})}a.addCommand("mceSearch",function(){b("search")});a.addCommand("mceReplace",function(){b("replace")});a.addButton("search",{title:"searchreplace.search_desc",cmd:"mceSearch"});a.addButton("replace",{title:"searchreplace.replace_desc",cmd:"mceReplace"});a.addShortcut("ctrl+f","searchreplace.search_desc","mceSearch")},getInfo:function(){return{longname:"Search/Replace",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("searchreplace",tinymce.plugins.SearchReplacePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..1433a06 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,57 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.SearchReplacePlugin', { + init : function(ed, url) { + function open(m) { + ed.windowManager.open({ + file : url + '/searchreplace.htm', + width : 420 + parseInt(ed.getLang('searchreplace.delta_width', 0)), + height : 170 + parseInt(ed.getLang('searchreplace.delta_height', 0)), + inline : 1, + auto_focus : 0 + }, { + mode : m, + search_string : ed.selection.getContent({format : 'text'}), + plugin_url : url + }); + }; + + // Register commands + ed.addCommand('mceSearch', function() { + open('search'); + }); + + ed.addCommand('mceReplace', function() { + open('replace'); + }); + + // Register buttons + ed.addButton('search', {title : 'searchreplace.search_desc', cmd : 'mceSearch'}); + ed.addButton('replace', {title : 'searchreplace.replace_desc', cmd : 'mceReplace'}); + + ed.addShortcut('ctrl+f', 'searchreplace.search_desc', 'mceSearch'); + }, + + getInfo : function() { + return { + longname : 'Search/Replace', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('searchreplace', tinymce.plugins.SearchReplacePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/searchreplace.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/searchreplace.htm.svn-base new file mode 100644 index 0000000..d0424cf --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/.svn/text-base/searchreplace.htm.svn-base @@ -0,0 +1,99 @@ + + + + {#searchreplace_dlg.replace_title} + + + + + + + +
+ + +
+
+ + + + + + + + + + + +
+ + + + + + + + +
+
+ + + + + +
+
+
+ +
+ + + + + + + + + + + + + + + +
+ + + + + + + + +
+
+ + + + + +
+
+
+ +
+ +
+ + + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/all-wcprops new file mode 100644 index 0000000..a6f034c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css +END +searchreplace.css +K 25 +svn:wc:ra_dav:version-url +V 115 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/entries new file mode 100644 index 0000000..41f20c2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +searchreplace.css +file + + + + +2010-06-04T12:51:44.502282Z +ad0addca1bd5727432f39ec9b7fdac1e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +176 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/text-base/searchreplace.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/text-base/searchreplace.css.svn-base new file mode 100644 index 0000000..ecdf58c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/.svn/text-base/searchreplace.css.svn-base @@ -0,0 +1,6 @@ +.panel_wrapper {height:85px;} +.panel_wrapper div.current {height:85px;} + +/* IE */ +* html .panel_wrapper {height:100px;} +* html .panel_wrapper div.current {height:100px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css new file mode 100644 index 0000000..ecdf58c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css @@ -0,0 +1,6 @@ +.panel_wrapper {height:85px;} +.panel_wrapper div.current {height:85px;} + +/* IE */ +* html .panel_wrapper {height:100px;} +* html .panel_wrapper div.current {height:100px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js new file mode 100644 index 0000000..cd9c985 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.SearchReplacePlugin",{init:function(a,c){function b(d){a.windowManager.open({file:c+"/searchreplace.htm",width:420+parseInt(a.getLang("searchreplace.delta_width",0)),height:170+parseInt(a.getLang("searchreplace.delta_height",0)),inline:1,auto_focus:0},{mode:d,search_string:a.selection.getContent({format:"text"}),plugin_url:c})}a.addCommand("mceSearch",function(){b("search")});a.addCommand("mceReplace",function(){b("replace")});a.addButton("search",{title:"searchreplace.search_desc",cmd:"mceSearch"});a.addButton("replace",{title:"searchreplace.replace_desc",cmd:"mceReplace"});a.addShortcut("ctrl+f","searchreplace.search_desc","mceSearch")},getInfo:function(){return{longname:"Search/Replace",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("searchreplace",tinymce.plugins.SearchReplacePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js new file mode 100644 index 0000000..1433a06 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js @@ -0,0 +1,57 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.SearchReplacePlugin', { + init : function(ed, url) { + function open(m) { + ed.windowManager.open({ + file : url + '/searchreplace.htm', + width : 420 + parseInt(ed.getLang('searchreplace.delta_width', 0)), + height : 170 + parseInt(ed.getLang('searchreplace.delta_height', 0)), + inline : 1, + auto_focus : 0 + }, { + mode : m, + search_string : ed.selection.getContent({format : 'text'}), + plugin_url : url + }); + }; + + // Register commands + ed.addCommand('mceSearch', function() { + open('search'); + }); + + ed.addCommand('mceReplace', function() { + open('replace'); + }); + + // Register buttons + ed.addButton('search', {title : 'searchreplace.search_desc', cmd : 'mceSearch'}); + ed.addButton('replace', {title : 'searchreplace.replace_desc', cmd : 'mceReplace'}); + + ed.addShortcut('ctrl+f', 'searchreplace.search_desc', 'mceSearch'); + }, + + getInfo : function() { + return { + longname : 'Search/Replace', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('searchreplace', tinymce.plugins.SearchReplacePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/all-wcprops new file mode 100644 index 0000000..3be2522 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js +END +searchreplace.js +K 25 +svn:wc:ra_dav:version-url +V 113 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/entries new file mode 100644 index 0000000..39ec639 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +searchreplace.js +file + + + + +2010-06-04T12:51:44.508948Z +cfbcf0233edc04dd52ff698299594513 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +3363 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/text-base/searchreplace.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/text-base/searchreplace.js.svn-base new file mode 100644 index 0000000..c0a6243 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/.svn/text-base/searchreplace.js.svn-base @@ -0,0 +1,130 @@ +tinyMCEPopup.requireLangPack(); + +var SearchReplaceDialog = { + init : function(ed) { + var f = document.forms[0], m = tinyMCEPopup.getWindowArg("mode"); + + this.switchMode(m); + + f[m + '_panel_searchstring'].value = tinyMCEPopup.getWindowArg("search_string"); + + // Focus input field + f[m + '_panel_searchstring'].focus(); + }, + + switchMode : function(m) { + var f, lm = this.lastMode; + + if (lm != m) { + f = document.forms[0]; + + if (lm) { + f[m + '_panel_searchstring'].value = f[lm + '_panel_searchstring'].value; + f[m + '_panel_backwardsu'].checked = f[lm + '_panel_backwardsu'].checked; + f[m + '_panel_backwardsd'].checked = f[lm + '_panel_backwardsd'].checked; + f[m + '_panel_casesensitivebox'].checked = f[lm + '_panel_casesensitivebox'].checked; + } + + mcTabs.displayTab(m + '_tab', m + '_panel'); + document.getElementById("replaceBtn").style.display = (m == "replace") ? "inline" : "none"; + document.getElementById("replaceAllBtn").style.display = (m == "replace") ? "inline" : "none"; + this.lastMode = m; + } + }, + + searchNext : function(a) { + var ed = tinyMCEPopup.editor, se = ed.selection, r = se.getRng(), f, m = this.lastMode, s, b, fl = 0, w = ed.getWin(), wm = ed.windowManager, fo = 0; + + // Get input + f = document.forms[0]; + s = f[m + '_panel_searchstring'].value; + b = f[m + '_panel_backwardsu'].checked; + ca = f[m + '_panel_casesensitivebox'].checked; + rs = f['replace_panel_replacestring'].value; + + if (s == '') + return; + + function fix() { + // Correct Firefox graphics glitches + r = se.getRng().cloneRange(); + ed.getDoc().execCommand('SelectAll', false, null); + se.setRng(r); + }; + + function replace() { + if (tinymce.isIE) + ed.selection.getRng().duplicate().pasteHTML(rs); // Needs to be duplicated due to selection bug in IE + else + ed.getDoc().execCommand('InsertHTML', false, rs); + }; + + // IE flags + if (ca) + fl = fl | 4; + + switch (a) { + case 'all': + // Move caret to beginning of text + ed.execCommand('SelectAll'); + ed.selection.collapse(true); + + if (tinymce.isIE) { + while (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + replace(); + fo = 1; + + if (b) { + r.moveEnd("character", -(rs.length)); // Otherwise will loop forever + } + } + + tinyMCEPopup.storeSelection(); + } else { + while (w.find(s, ca, b, false, false, false, false)) { + replace(); + fo = 1; + } + } + + if (fo) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced')); + else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + return; + + case 'current': + if (!ed.selection.isCollapsed()) + replace(); + + break; + } + + se.collapse(b); + r = se.getRng(); + + // Whats the point + if (!s) + return; + + if (tinymce.isIE) { + if (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + } else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + tinyMCEPopup.storeSelection(); + } else { + if (!w.find(s, ca, b, false, false, false, false)) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + else + fix(); + } + } +}; + +tinyMCEPopup.onInit.add(SearchReplaceDialog.init, SearchReplaceDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js new file mode 100644 index 0000000..c0a6243 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js @@ -0,0 +1,130 @@ +tinyMCEPopup.requireLangPack(); + +var SearchReplaceDialog = { + init : function(ed) { + var f = document.forms[0], m = tinyMCEPopup.getWindowArg("mode"); + + this.switchMode(m); + + f[m + '_panel_searchstring'].value = tinyMCEPopup.getWindowArg("search_string"); + + // Focus input field + f[m + '_panel_searchstring'].focus(); + }, + + switchMode : function(m) { + var f, lm = this.lastMode; + + if (lm != m) { + f = document.forms[0]; + + if (lm) { + f[m + '_panel_searchstring'].value = f[lm + '_panel_searchstring'].value; + f[m + '_panel_backwardsu'].checked = f[lm + '_panel_backwardsu'].checked; + f[m + '_panel_backwardsd'].checked = f[lm + '_panel_backwardsd'].checked; + f[m + '_panel_casesensitivebox'].checked = f[lm + '_panel_casesensitivebox'].checked; + } + + mcTabs.displayTab(m + '_tab', m + '_panel'); + document.getElementById("replaceBtn").style.display = (m == "replace") ? "inline" : "none"; + document.getElementById("replaceAllBtn").style.display = (m == "replace") ? "inline" : "none"; + this.lastMode = m; + } + }, + + searchNext : function(a) { + var ed = tinyMCEPopup.editor, se = ed.selection, r = se.getRng(), f, m = this.lastMode, s, b, fl = 0, w = ed.getWin(), wm = ed.windowManager, fo = 0; + + // Get input + f = document.forms[0]; + s = f[m + '_panel_searchstring'].value; + b = f[m + '_panel_backwardsu'].checked; + ca = f[m + '_panel_casesensitivebox'].checked; + rs = f['replace_panel_replacestring'].value; + + if (s == '') + return; + + function fix() { + // Correct Firefox graphics glitches + r = se.getRng().cloneRange(); + ed.getDoc().execCommand('SelectAll', false, null); + se.setRng(r); + }; + + function replace() { + if (tinymce.isIE) + ed.selection.getRng().duplicate().pasteHTML(rs); // Needs to be duplicated due to selection bug in IE + else + ed.getDoc().execCommand('InsertHTML', false, rs); + }; + + // IE flags + if (ca) + fl = fl | 4; + + switch (a) { + case 'all': + // Move caret to beginning of text + ed.execCommand('SelectAll'); + ed.selection.collapse(true); + + if (tinymce.isIE) { + while (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + replace(); + fo = 1; + + if (b) { + r.moveEnd("character", -(rs.length)); // Otherwise will loop forever + } + } + + tinyMCEPopup.storeSelection(); + } else { + while (w.find(s, ca, b, false, false, false, false)) { + replace(); + fo = 1; + } + } + + if (fo) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced')); + else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + return; + + case 'current': + if (!ed.selection.isCollapsed()) + replace(); + + break; + } + + se.collapse(b); + r = se.getRng(); + + // Whats the point + if (!s) + return; + + if (tinymce.isIE) { + if (r.findText(s, b ? -1 : 1, fl)) { + r.scrollIntoView(); + r.select(); + } else + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + + tinyMCEPopup.storeSelection(); + } else { + if (!w.find(s, ca, b, false, false, false, false)) + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); + else + fix(); + } + } +}; + +tinyMCEPopup.onInit.add(SearchReplaceDialog.init, SearchReplaceDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/all-wcprops new file mode 100644 index 0000000..5625203 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js +END +fr_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/fr_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/entries new file mode 100644 index 0000000..3ffc9fd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:44.492283Z +5f735d67877a4ecb9faf4ca19d2035dd +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +469 + +fr_dlg.js +file + + + + +2010-06-04T12:51:44.492283Z +2ad77e9983e83a499451ebf22028074f +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +607 + +de_dlg.js +file + + + + +2010-06-04T12:51:44.492283Z +be773177b95d8ed66b4aaa334b2684af +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +546 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..52c0b06 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,16 @@ +tinyMCE.addI18n('de.searchreplace_dlg',{ +searchnext_desc:"Weitersuchen", +notfound:"Die Suche ist am Ende angelangt. Die Zeichenkette konnte nicht gefunden werden.", +search_title:"Suchen", +replace_title:"Suchen/Ersetzen", +allreplaced:"Alle Vorkommen der Zeichenkette wurden ersetzt.", +findwhat:"Zu suchender Text", +replacewith:"Ersetzen durch", +direction:"Suchrichtung", +up:"Aufw\u00E4rts", +down:"Abw\u00E4rts", +mcase:"Gro\u00DF-/Kleinschreibung beachten", +findnext:"Weitersuchen", +replace:"Ersetzen", +replaceall:"Alle ersetzen" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..370959a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,16 @@ +tinyMCE.addI18n('en.searchreplace_dlg',{ +searchnext_desc:"Find again", +notfound:"The search has been completed. The search string could not be found.", +search_title:"Find", +replace_title:"Find/Replace", +allreplaced:"All occurrences of the search string were replaced.", +findwhat:"Find what", +replacewith:"Replace with", +direction:"Direction", +up:"Up", +down:"Down", +mcase:"Match case", +findnext:"Find next", +replace:"Replace", +replaceall:"Replace all" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/fr_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/fr_dlg.js.svn-base new file mode 100644 index 0000000..a151c6c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/.svn/text-base/fr_dlg.js.svn-base @@ -0,0 +1,16 @@ +tinyMCE.addI18n('fr.searchreplace_dlg',{ +searchnext_desc:"Suivant", +notfound:"La recherche est termin\u00E9e. La cha\u00EEne recherch\u00E9e n'a pas \u00E9t\u00E9 trouv\u00E9e.", +search_title:"Rechercher", +replace_title:"Rechercher / remplacer", +allreplaced:"Toutes les occurrences de la cha\u00EEne recherch\u00E9e ont \u00E9t\u00E9 remplac\u00E9es.", +findwhat:"Rechercher ceci", +replacewith:"Remplacer par", +direction:"Direction", +up:"Vers le haut", +down:"Vers le bas", +mcase:"Sensible \u00E0 la casse", +findnext:"Rechercher le suivant", +replace:"Remplacer", +replaceall:"Tout remplacer" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/de_dlg.js new file mode 100644 index 0000000..52c0b06 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/de_dlg.js @@ -0,0 +1,16 @@ +tinyMCE.addI18n('de.searchreplace_dlg',{ +searchnext_desc:"Weitersuchen", +notfound:"Die Suche ist am Ende angelangt. Die Zeichenkette konnte nicht gefunden werden.", +search_title:"Suchen", +replace_title:"Suchen/Ersetzen", +allreplaced:"Alle Vorkommen der Zeichenkette wurden ersetzt.", +findwhat:"Zu suchender Text", +replacewith:"Ersetzen durch", +direction:"Suchrichtung", +up:"Aufw\u00E4rts", +down:"Abw\u00E4rts", +mcase:"Gro\u00DF-/Kleinschreibung beachten", +findnext:"Weitersuchen", +replace:"Ersetzen", +replaceall:"Alle ersetzen" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js new file mode 100644 index 0000000..370959a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js @@ -0,0 +1,16 @@ +tinyMCE.addI18n('en.searchreplace_dlg',{ +searchnext_desc:"Find again", +notfound:"The search has been completed. The search string could not be found.", +search_title:"Find", +replace_title:"Find/Replace", +allreplaced:"All occurrences of the search string were replaced.", +findwhat:"Find what", +replacewith:"Replace with", +direction:"Direction", +up:"Up", +down:"Down", +mcase:"Match case", +findnext:"Find next", +replace:"Replace", +replaceall:"Replace all" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/fr_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/fr_dlg.js new file mode 100644 index 0000000..a151c6c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/fr_dlg.js @@ -0,0 +1,16 @@ +tinyMCE.addI18n('fr.searchreplace_dlg',{ +searchnext_desc:"Suivant", +notfound:"La recherche est termin\u00E9e. La cha\u00EEne recherch\u00E9e n'a pas \u00E9t\u00E9 trouv\u00E9e.", +search_title:"Rechercher", +replace_title:"Rechercher / remplacer", +allreplaced:"Toutes les occurrences de la cha\u00EEne recherch\u00E9e ont \u00E9t\u00E9 remplac\u00E9es.", +findwhat:"Rechercher ceci", +replacewith:"Remplacer par", +direction:"Direction", +up:"Vers le haut", +down:"Vers le bas", +mcase:"Sensible \u00E0 la casse", +findnext:"Rechercher le suivant", +replace:"Remplacer", +replaceall:"Tout remplacer" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm new file mode 100644 index 0000000..d0424cf --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm @@ -0,0 +1,99 @@ + + + + {#searchreplace_dlg.replace_title} + + + + + + + +
+ + +
+
+ + + + + + + + + + + +
+ + + + + + + + +
+
+ + + + + +
+
+
+ +
+ + + + + + + + + + + + + + + +
+ + + + + + + + +
+
+ + + + + +
+
+
+ +
+ +
+ + + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/all-wcprops new file mode 100644 index 0000000..b2814a5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/entries new file mode 100644 index 0000000..d8e756f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/entries @@ -0,0 +1,102 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.468950Z +94971c70a928785d87f0538af2436ad3 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +5735 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.468950Z +50286deb53a126c69d78a3aec26a4231 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +8756 + +css +dir + +img +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..377e4e8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var a=tinymce.util.JSONRequest,c=tinymce.each,b=tinymce.DOM;tinymce.create("tinymce.plugins.SpellcheckerPlugin",{getInfo:function(){return{longname:"Spellchecker",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker",version:tinymce.majorVersion+"."+tinymce.minorVersion}},init:function(e,f){var g=this,d;g.url=f;g.editor=e;e.addCommand("mceSpellCheck",function(){if(!g.active){e.setProgressState(1);g._sendRPC("checkWords",[g.selectedLang,g._getWords()],function(h){if(h.length>0){g.active=1;g._markWords(h);e.setProgressState(0);e.nodeChanged()}else{e.setProgressState(0);e.windowManager.alert("spellchecker.no_mpell")}})}else{g._done()}});e.onInit.add(function(){if(e.settings.content_css!==false){e.dom.loadCSS(f+"/css/content.css")}});e.onClick.add(g._showMenu,g);e.onContextMenu.add(g._showMenu,g);e.onBeforeGetContent.add(function(){if(g.active){g._removeWords()}});e.onNodeChange.add(function(i,h){h.setActive("spellchecker",g.active)});e.onSetContent.add(function(){g._done()});e.onBeforeGetContent.add(function(){g._done()});e.onBeforeExecCommand.add(function(h,i){if(i=="mceFullScreen"){g._done()}});g.languages={};c(e.getParam("spellchecker_languages","+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv","hash"),function(i,h){if(h.indexOf("+")===0){h=h.substring(1);g.selectedLang=i}g.languages[h]=i})},createControl:function(h,d){var f=this,g,e=f.editor;if(h=="spellchecker"){g=d.createSplitButton(h,{title:"spellchecker.desc",cmd:"mceSpellCheck",scope:f});g.onRenderMenu.add(function(j,i){i.add({title:"spellchecker.langs","class":"mceMenuItemTitle"}).setDisabled(1);c(f.languages,function(n,m){var p={icon:1},l;p.onclick=function(){l.setSelected(1);f.selectedItem.setSelected(0);f.selectedItem=l;f.selectedLang=n};p.title=m;l=i.add(p);l.setSelected(n==f.selectedLang);if(n==f.selectedLang){f.selectedItem=l}})});return g}},_walk:function(i,g){var h=this.editor.getDoc(),e;if(h.createTreeWalker){e=h.createTreeWalker(i,NodeFilter.SHOW_TEXT,null,false);while((i=e.nextNode())!=null){g.call(this,i)}}else{tinymce.walk(i,g,"childNodes")}},_getSeparators:function(){var e="",d,f=this.editor.getParam("spellchecker_word_separator_chars",'\\s!"#$%&()*+,-./:;<=>?@[]^_{|}\u201d\u201c');for(d=0;d$1$2');q=q.replace(g,'$1$2');j.replace(j.create("span",{"class":"mceItemHidden"},q),r)}}});l.moveToBookmark(m)},_showMenu:function(g,i){var h=this,g=h.editor,d=h._menu,k,j=g.dom,f=j.getViewPort(g.getWin());if(!d){k=b.getPos(g.getContentAreaContainer());d=g.controlManager.createDropMenu("spellcheckermenu",{offset_x:k.x,offset_y:k.y,"class":"mceNoIcons"});h._menu=d}if(j.hasClass(i.target,"mceItemHiddenSpellWord")){d.removeAll();d.add({title:"spellchecker.wait","class":"mceMenuItemTitle"}).setDisabled(1);h._sendRPC("getSuggestions",[h.selectedLang,j.decode(i.target.innerHTML)],function(e){d.removeAll();if(e.length>0){d.add({title:"spellchecker.sug","class":"mceMenuItemTitle"}).setDisabled(1);c(e,function(l){d.add({title:l,onclick:function(){j.replace(g.getDoc().createTextNode(l),i.target);h._checkDone()}})});d.addSeparator()}else{d.add({title:"spellchecker.no_sug","class":"mceMenuItemTitle"}).setDisabled(1)}d.add({title:"spellchecker.ignore_word",onclick:function(){j.remove(i.target,1);h._checkDone()}});d.add({title:"spellchecker.ignore_words",onclick:function(){h._removeWords(j.decode(i.target.innerHTML));h._checkDone()}});d.update()});g.selection.select(i.target);k=j.getPos(i.target);d.showMenu(k.x,k.y+i.target.offsetHeight-f.y);return tinymce.dom.Event.cancel(i)}else{d.hideMenu()}},_checkDone:function(){var e=this,d=e.editor,g=d.dom,f;c(g.select("span"),function(h){if(h&&g.hasClass(h,"mceItemHiddenSpellWord")){f=true;return false}});if(!f){e._done()}},_done:function(){var d=this,e=d.active;if(d.active){d.active=0;d._removeWords();if(d._menu){d._menu.hideMenu()}if(e){d.editor.nodeChanged()}}},_sendRPC:function(e,h,d){var g=this,f=g.editor.getParam("spellchecker_rpc_url","{backend}");if(f=="{backend}"){g.editor.setProgressState(0);alert("Please specify: spellchecker_rpc_url");return}a.sendRPC({url:f,method:e,params:h,success:d,error:function(j,i){g.editor.setProgressState(0);g.editor.windowManager.alert(j.errstr||("Error response: "+i.responseText))}})}});tinymce.PluginManager.add("spellchecker",tinymce.plugins.SpellcheckerPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..0b3d3b6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,341 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var JSONRequest = tinymce.util.JSONRequest, each = tinymce.each, DOM = tinymce.DOM; + + tinymce.create('tinymce.plugins.SpellcheckerPlugin', { + getInfo : function() { + return { + longname : 'Spellchecker', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + init : function(ed, url) { + var t = this, cm; + + t.url = url; + t.editor = ed; + + // Register commands + ed.addCommand('mceSpellCheck', function() { + if (!t.active) { + ed.setProgressState(1); + t._sendRPC('checkWords', [t.selectedLang, t._getWords()], function(r) { + if (r.length > 0) { + t.active = 1; + t._markWords(r); + ed.setProgressState(0); + ed.nodeChanged(); + } else { + ed.setProgressState(0); + ed.windowManager.alert('spellchecker.no_mpell'); + } + }); + } else + t._done(); + }); + + ed.onInit.add(function() { + if (ed.settings.content_css !== false) + ed.dom.loadCSS(url + '/css/content.css'); + }); + + ed.onClick.add(t._showMenu, t); + ed.onContextMenu.add(t._showMenu, t); + ed.onBeforeGetContent.add(function() { + if (t.active) + t._removeWords(); + }); + + ed.onNodeChange.add(function(ed, cm) { + cm.setActive('spellchecker', t.active); + }); + + ed.onSetContent.add(function() { + t._done(); + }); + + ed.onBeforeGetContent.add(function() { + t._done(); + }); + + ed.onBeforeExecCommand.add(function(ed, cmd) { + if (cmd == 'mceFullScreen') + t._done(); + }); + + // Find selected language + t.languages = {}; + each(ed.getParam('spellchecker_languages', '+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv', 'hash'), function(v, k) { + if (k.indexOf('+') === 0) { + k = k.substring(1); + t.selectedLang = v; + } + + t.languages[k] = v; + }); + }, + + createControl : function(n, cm) { + var t = this, c, ed = t.editor; + + if (n == 'spellchecker') { + c = cm.createSplitButton(n, {title : 'spellchecker.desc', cmd : 'mceSpellCheck', scope : t}); + + c.onRenderMenu.add(function(c, m) { + m.add({title : 'spellchecker.langs', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + each(t.languages, function(v, k) { + var o = {icon : 1}, mi; + + o.onclick = function() { + mi.setSelected(1); + t.selectedItem.setSelected(0); + t.selectedItem = mi; + t.selectedLang = v; + }; + + o.title = k; + mi = m.add(o); + mi.setSelected(v == t.selectedLang); + + if (v == t.selectedLang) + t.selectedItem = mi; + }) + }); + + return c; + } + }, + + // Internal functions + + _walk : function(n, f) { + var d = this.editor.getDoc(), w; + + if (d.createTreeWalker) { + w = d.createTreeWalker(n, NodeFilter.SHOW_TEXT, null, false); + + while ((n = w.nextNode()) != null) + f.call(this, n); + } else + tinymce.walk(n, f, 'childNodes'); + }, + + _getSeparators : function() { + var re = '', i, str = this.editor.getParam('spellchecker_word_separator_chars', '\\s!"#$%&()*+,-./:;<=>?@[\]^_{|}\u201d\u201c'); + + // Build word separator regexp + for (i=0; i$1$2'); + v = v.replace(r3, '$1$2'); + + dom.replace(dom.create('span', {'class' : 'mceItemHidden'}, v), n); + } + } + }); + + se.moveToBookmark(b); + }, + + _showMenu : function(ed, e) { + var t = this, ed = t.editor, m = t._menu, p1, dom = ed.dom, vp = dom.getViewPort(ed.getWin()); + + if (!m) { + p1 = DOM.getPos(ed.getContentAreaContainer()); + //p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('spellcheckermenu', { + offset_x : p1.x, + offset_y : p1.y, + 'class' : 'mceNoIcons' + }); + + t._menu = m; + } + + if (dom.hasClass(e.target, 'mceItemHiddenSpellWord')) { + m.removeAll(); + m.add({title : 'spellchecker.wait', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + + t._sendRPC('getSuggestions', [t.selectedLang, dom.decode(e.target.innerHTML)], function(r) { + m.removeAll(); + + if (r.length > 0) { + m.add({title : 'spellchecker.sug', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + each(r, function(v) { + m.add({title : v, onclick : function() { + dom.replace(ed.getDoc().createTextNode(v), e.target); + t._checkDone(); + }}); + }); + + m.addSeparator(); + } else + m.add({title : 'spellchecker.no_sug', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + + m.add({ + title : 'spellchecker.ignore_word', + onclick : function() { + dom.remove(e.target, 1); + t._checkDone(); + } + }); + + m.add({ + title : 'spellchecker.ignore_words', + onclick : function() { + t._removeWords(dom.decode(e.target.innerHTML)); + t._checkDone(); + } + }); + + m.update(); + }); + + ed.selection.select(e.target); + p1 = dom.getPos(e.target); + m.showMenu(p1.x, p1.y + e.target.offsetHeight - vp.y); + + return tinymce.dom.Event.cancel(e); + } else + m.hideMenu(); + }, + + _checkDone : function() { + var t = this, ed = t.editor, dom = ed.dom, o; + + each(dom.select('span'), function(n) { + if (n && dom.hasClass(n, 'mceItemHiddenSpellWord')) { + o = true; + return false; + } + }); + + if (!o) + t._done(); + }, + + _done : function() { + var t = this, la = t.active; + + if (t.active) { + t.active = 0; + t._removeWords(); + + if (t._menu) + t._menu.hideMenu(); + + if (la) + t.editor.nodeChanged(); + } + }, + + _sendRPC : function(m, p, cb) { + var t = this, url = t.editor.getParam("spellchecker_rpc_url", "{backend}"); + + if (url == '{backend}') { + t.editor.setProgressState(0); + alert('Please specify: spellchecker_rpc_url'); + return; + } + + JSONRequest.sendRPC({ + url : url, + method : m, + params : p, + success : cb, + error : function(e, x) { + t.editor.setProgressState(0); + t.editor.windowManager.alert(e.errstr || ('Error response: ' + x.responseText)); + } + }); + } + }); + + // Register plugin + tinymce.PluginManager.add('spellchecker', tinymce.plugins.SpellcheckerPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/all-wcprops new file mode 100644 index 0000000..ddacbf3 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/css +END +content.css +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/entries new file mode 100644 index 0000000..db8b9fc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +content.css +file + + + + +2010-06-04T12:51:46.455615Z +ac0c7dbbbe44022d29d63b7b05123e3d +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +98 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/text-base/content.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/text-base/content.css.svn-base new file mode 100644 index 0000000..24efa02 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/.svn/text-base/content.css.svn-base @@ -0,0 +1 @@ +.mceItemHiddenSpellWord {background:url(../img/wline.gif) repeat-x bottom left; cursor:default;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css new file mode 100644 index 0000000..24efa02 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css @@ -0,0 +1 @@ +.mceItemHiddenSpellWord {background:url(../img/wline.gif) repeat-x bottom left; cursor:default;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js new file mode 100644 index 0000000..377e4e8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.util.JSONRequest,c=tinymce.each,b=tinymce.DOM;tinymce.create("tinymce.plugins.SpellcheckerPlugin",{getInfo:function(){return{longname:"Spellchecker",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker",version:tinymce.majorVersion+"."+tinymce.minorVersion}},init:function(e,f){var g=this,d;g.url=f;g.editor=e;e.addCommand("mceSpellCheck",function(){if(!g.active){e.setProgressState(1);g._sendRPC("checkWords",[g.selectedLang,g._getWords()],function(h){if(h.length>0){g.active=1;g._markWords(h);e.setProgressState(0);e.nodeChanged()}else{e.setProgressState(0);e.windowManager.alert("spellchecker.no_mpell")}})}else{g._done()}});e.onInit.add(function(){if(e.settings.content_css!==false){e.dom.loadCSS(f+"/css/content.css")}});e.onClick.add(g._showMenu,g);e.onContextMenu.add(g._showMenu,g);e.onBeforeGetContent.add(function(){if(g.active){g._removeWords()}});e.onNodeChange.add(function(i,h){h.setActive("spellchecker",g.active)});e.onSetContent.add(function(){g._done()});e.onBeforeGetContent.add(function(){g._done()});e.onBeforeExecCommand.add(function(h,i){if(i=="mceFullScreen"){g._done()}});g.languages={};c(e.getParam("spellchecker_languages","+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv","hash"),function(i,h){if(h.indexOf("+")===0){h=h.substring(1);g.selectedLang=i}g.languages[h]=i})},createControl:function(h,d){var f=this,g,e=f.editor;if(h=="spellchecker"){g=d.createSplitButton(h,{title:"spellchecker.desc",cmd:"mceSpellCheck",scope:f});g.onRenderMenu.add(function(j,i){i.add({title:"spellchecker.langs","class":"mceMenuItemTitle"}).setDisabled(1);c(f.languages,function(n,m){var p={icon:1},l;p.onclick=function(){l.setSelected(1);f.selectedItem.setSelected(0);f.selectedItem=l;f.selectedLang=n};p.title=m;l=i.add(p);l.setSelected(n==f.selectedLang);if(n==f.selectedLang){f.selectedItem=l}})});return g}},_walk:function(i,g){var h=this.editor.getDoc(),e;if(h.createTreeWalker){e=h.createTreeWalker(i,NodeFilter.SHOW_TEXT,null,false);while((i=e.nextNode())!=null){g.call(this,i)}}else{tinymce.walk(i,g,"childNodes")}},_getSeparators:function(){var e="",d,f=this.editor.getParam("spellchecker_word_separator_chars",'\\s!"#$%&()*+,-./:;<=>?@[]^_{|}\u201d\u201c');for(d=0;d$1$2');q=q.replace(g,'$1$2');j.replace(j.create("span",{"class":"mceItemHidden"},q),r)}}});l.moveToBookmark(m)},_showMenu:function(g,i){var h=this,g=h.editor,d=h._menu,k,j=g.dom,f=j.getViewPort(g.getWin());if(!d){k=b.getPos(g.getContentAreaContainer());d=g.controlManager.createDropMenu("spellcheckermenu",{offset_x:k.x,offset_y:k.y,"class":"mceNoIcons"});h._menu=d}if(j.hasClass(i.target,"mceItemHiddenSpellWord")){d.removeAll();d.add({title:"spellchecker.wait","class":"mceMenuItemTitle"}).setDisabled(1);h._sendRPC("getSuggestions",[h.selectedLang,j.decode(i.target.innerHTML)],function(e){d.removeAll();if(e.length>0){d.add({title:"spellchecker.sug","class":"mceMenuItemTitle"}).setDisabled(1);c(e,function(l){d.add({title:l,onclick:function(){j.replace(g.getDoc().createTextNode(l),i.target);h._checkDone()}})});d.addSeparator()}else{d.add({title:"spellchecker.no_sug","class":"mceMenuItemTitle"}).setDisabled(1)}d.add({title:"spellchecker.ignore_word",onclick:function(){j.remove(i.target,1);h._checkDone()}});d.add({title:"spellchecker.ignore_words",onclick:function(){h._removeWords(j.decode(i.target.innerHTML));h._checkDone()}});d.update()});g.selection.select(i.target);k=j.getPos(i.target);d.showMenu(k.x,k.y+i.target.offsetHeight-f.y);return tinymce.dom.Event.cancel(i)}else{d.hideMenu()}},_checkDone:function(){var e=this,d=e.editor,g=d.dom,f;c(g.select("span"),function(h){if(h&&g.hasClass(h,"mceItemHiddenSpellWord")){f=true;return false}});if(!f){e._done()}},_done:function(){var d=this,e=d.active;if(d.active){d.active=0;d._removeWords();if(d._menu){d._menu.hideMenu()}if(e){d.editor.nodeChanged()}}},_sendRPC:function(e,h,d){var g=this,f=g.editor.getParam("spellchecker_rpc_url","{backend}");if(f=="{backend}"){g.editor.setProgressState(0);alert("Please specify: spellchecker_rpc_url");return}a.sendRPC({url:f,method:e,params:h,success:d,error:function(j,i){g.editor.setProgressState(0);g.editor.windowManager.alert(j.errstr||("Error response: "+i.responseText))}})}});tinymce.PluginManager.add("spellchecker",tinymce.plugins.SpellcheckerPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js new file mode 100644 index 0000000..0b3d3b6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js @@ -0,0 +1,341 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var JSONRequest = tinymce.util.JSONRequest, each = tinymce.each, DOM = tinymce.DOM; + + tinymce.create('tinymce.plugins.SpellcheckerPlugin', { + getInfo : function() { + return { + longname : 'Spellchecker', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + init : function(ed, url) { + var t = this, cm; + + t.url = url; + t.editor = ed; + + // Register commands + ed.addCommand('mceSpellCheck', function() { + if (!t.active) { + ed.setProgressState(1); + t._sendRPC('checkWords', [t.selectedLang, t._getWords()], function(r) { + if (r.length > 0) { + t.active = 1; + t._markWords(r); + ed.setProgressState(0); + ed.nodeChanged(); + } else { + ed.setProgressState(0); + ed.windowManager.alert('spellchecker.no_mpell'); + } + }); + } else + t._done(); + }); + + ed.onInit.add(function() { + if (ed.settings.content_css !== false) + ed.dom.loadCSS(url + '/css/content.css'); + }); + + ed.onClick.add(t._showMenu, t); + ed.onContextMenu.add(t._showMenu, t); + ed.onBeforeGetContent.add(function() { + if (t.active) + t._removeWords(); + }); + + ed.onNodeChange.add(function(ed, cm) { + cm.setActive('spellchecker', t.active); + }); + + ed.onSetContent.add(function() { + t._done(); + }); + + ed.onBeforeGetContent.add(function() { + t._done(); + }); + + ed.onBeforeExecCommand.add(function(ed, cmd) { + if (cmd == 'mceFullScreen') + t._done(); + }); + + // Find selected language + t.languages = {}; + each(ed.getParam('spellchecker_languages', '+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv', 'hash'), function(v, k) { + if (k.indexOf('+') === 0) { + k = k.substring(1); + t.selectedLang = v; + } + + t.languages[k] = v; + }); + }, + + createControl : function(n, cm) { + var t = this, c, ed = t.editor; + + if (n == 'spellchecker') { + c = cm.createSplitButton(n, {title : 'spellchecker.desc', cmd : 'mceSpellCheck', scope : t}); + + c.onRenderMenu.add(function(c, m) { + m.add({title : 'spellchecker.langs', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + each(t.languages, function(v, k) { + var o = {icon : 1}, mi; + + o.onclick = function() { + mi.setSelected(1); + t.selectedItem.setSelected(0); + t.selectedItem = mi; + t.selectedLang = v; + }; + + o.title = k; + mi = m.add(o); + mi.setSelected(v == t.selectedLang); + + if (v == t.selectedLang) + t.selectedItem = mi; + }) + }); + + return c; + } + }, + + // Internal functions + + _walk : function(n, f) { + var d = this.editor.getDoc(), w; + + if (d.createTreeWalker) { + w = d.createTreeWalker(n, NodeFilter.SHOW_TEXT, null, false); + + while ((n = w.nextNode()) != null) + f.call(this, n); + } else + tinymce.walk(n, f, 'childNodes'); + }, + + _getSeparators : function() { + var re = '', i, str = this.editor.getParam('spellchecker_word_separator_chars', '\\s!"#$%&()*+,-./:;<=>?@[\]^_{|}\u201d\u201c'); + + // Build word separator regexp + for (i=0; i$1$2'); + v = v.replace(r3, '$1$2'); + + dom.replace(dom.create('span', {'class' : 'mceItemHidden'}, v), n); + } + } + }); + + se.moveToBookmark(b); + }, + + _showMenu : function(ed, e) { + var t = this, ed = t.editor, m = t._menu, p1, dom = ed.dom, vp = dom.getViewPort(ed.getWin()); + + if (!m) { + p1 = DOM.getPos(ed.getContentAreaContainer()); + //p2 = DOM.getPos(ed.getContainer()); + + m = ed.controlManager.createDropMenu('spellcheckermenu', { + offset_x : p1.x, + offset_y : p1.y, + 'class' : 'mceNoIcons' + }); + + t._menu = m; + } + + if (dom.hasClass(e.target, 'mceItemHiddenSpellWord')) { + m.removeAll(); + m.add({title : 'spellchecker.wait', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + + t._sendRPC('getSuggestions', [t.selectedLang, dom.decode(e.target.innerHTML)], function(r) { + m.removeAll(); + + if (r.length > 0) { + m.add({title : 'spellchecker.sug', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + each(r, function(v) { + m.add({title : v, onclick : function() { + dom.replace(ed.getDoc().createTextNode(v), e.target); + t._checkDone(); + }}); + }); + + m.addSeparator(); + } else + m.add({title : 'spellchecker.no_sug', 'class' : 'mceMenuItemTitle'}).setDisabled(1); + + m.add({ + title : 'spellchecker.ignore_word', + onclick : function() { + dom.remove(e.target, 1); + t._checkDone(); + } + }); + + m.add({ + title : 'spellchecker.ignore_words', + onclick : function() { + t._removeWords(dom.decode(e.target.innerHTML)); + t._checkDone(); + } + }); + + m.update(); + }); + + ed.selection.select(e.target); + p1 = dom.getPos(e.target); + m.showMenu(p1.x, p1.y + e.target.offsetHeight - vp.y); + + return tinymce.dom.Event.cancel(e); + } else + m.hideMenu(); + }, + + _checkDone : function() { + var t = this, ed = t.editor, dom = ed.dom, o; + + each(dom.select('span'), function(n) { + if (n && dom.hasClass(n, 'mceItemHiddenSpellWord')) { + o = true; + return false; + } + }); + + if (!o) + t._done(); + }, + + _done : function() { + var t = this, la = t.active; + + if (t.active) { + t.active = 0; + t._removeWords(); + + if (t._menu) + t._menu.hideMenu(); + + if (la) + t.editor.nodeChanged(); + } + }, + + _sendRPC : function(m, p, cb) { + var t = this, url = t.editor.getParam("spellchecker_rpc_url", "{backend}"); + + if (url == '{backend}') { + t.editor.setProgressState(0); + alert('Please specify: spellchecker_rpc_url'); + return; + } + + JSONRequest.sendRPC({ + url : url, + method : m, + params : p, + success : cb, + error : function(e, x) { + t.editor.setProgressState(0); + t.editor.windowManager.alert(e.errstr || ('Error response: ' + x.responseText)); + } + }); + } + }); + + // Register plugin + tinymce.PluginManager.add('spellchecker', tinymce.plugins.SpellcheckerPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/all-wcprops new file mode 100644 index 0000000..1ccec3f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/img +END +wline.gif +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/entries new file mode 100644 index 0000000..dc8d0c7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/spellchecker/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +wline.gif +file + + + + +2010-06-04T12:51:46.465617Z +c136c9f8e00718a98947a21d8adbcc56 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +46 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/prop-base/wline.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/prop-base/wline.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/prop-base/wline.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/text-base/wline.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/.svn/text-base/wline.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..7d0a4dbca03cc13177a359a5f175dda819fdf464 GIT binary patch literal 46 ycmZ?wbhEHbWMN=tXkcXcqowu#|9{1wEQ|~cj0`#qKmd|qU}ANVOOs?}um%7FLkRf* literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif b/assets/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif new file mode 100644 index 0000000000000000000000000000000000000000..7d0a4dbca03cc13177a359a5f175dda819fdf464 GIT binary patch literal 46 ycmZ?wbhEHbWMN=tXkcXcqowu#|9{1wEQ|~cj0`#qKmd|qU}ANVOOs?}um%7FLkRf* literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/all-wcprops new file mode 100644 index 0000000..425e625 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js +END +props.htm +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/props.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/entries new file mode 100644 index 0000000..93fbe64 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/entries @@ -0,0 +1,139 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.392283Z +ac96cb192e649f92a42b9ce339092008 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +938 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.392283Z +f3fe95aa447b856e589a48b78c0556f8 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1538 + +css +dir + +props.htm +file + + + + +2010-06-04T12:51:46.392283Z +574cda8c63fd27e3be36c273851e8e2e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +27542 + +js +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..cab2153 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.StylePlugin",{init:function(a,b){a.addCommand("mceStyleProps",function(){a.windowManager.open({file:b+"/props.htm",width:480+parseInt(a.getLang("style.delta_width",0)),height:320+parseInt(a.getLang("style.delta_height",0)),inline:1},{plugin_url:b,style_text:a.selection.getNode().style.cssText})});a.addCommand("mceSetElementStyle",function(d,c){if(e=a.selection.getNode()){a.dom.setAttrib(e,"style",c);a.execCommand("mceRepaint")}});a.onNodeChange.add(function(d,c,f){c.setDisabled("styleprops",f.nodeName==="BODY")});a.addButton("styleprops",{title:"style.desc",cmd:"mceStyleProps"})},getInfo:function(){return{longname:"Style",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("style",tinymce.plugins.StylePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..5f7755f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,55 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.StylePlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceStyleProps', function() { + ed.windowManager.open({ + file : url + '/props.htm', + width : 480 + parseInt(ed.getLang('style.delta_width', 0)), + height : 320 + parseInt(ed.getLang('style.delta_height', 0)), + inline : 1 + }, { + plugin_url : url, + style_text : ed.selection.getNode().style.cssText + }); + }); + + ed.addCommand('mceSetElementStyle', function(ui, v) { + if (e = ed.selection.getNode()) { + ed.dom.setAttrib(e, 'style', v); + ed.execCommand('mceRepaint'); + } + }); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setDisabled('styleprops', n.nodeName === 'BODY'); + }); + + // Register buttons + ed.addButton('styleprops', {title : 'style.desc', cmd : 'mceStyleProps'}); + }, + + getInfo : function() { + return { + longname : 'Style', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('style', tinymce.plugins.StylePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/props.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/props.htm.svn-base new file mode 100644 index 0000000..08e02f1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/.svn/text-base/props.htm.svn-base @@ -0,0 +1,726 @@ + + + + {#style_dlg.title} + + + + + + + + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
 
+
+ +
+ + + +
+ + + + + + +
+ +  
+
+ +
+ + + + + +
 
+
{#style_dlg.text_decoration} + + + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
 
+
+ + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+ +
+ + + + + + + + + + + + + + +
+ + + + + + +
 
+
   
+ + + + + + +
 
+
   
+
+
+ {#style_dlg.padding} + + + + + + + + + + + + + + + + + + + + + + +
 
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+
+ +
+
+ {#style_dlg.margin} + + + + + + + + + + + + + + + + + + + + + + +
 
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  {#style_dlg.style} {#style_dlg.width} {#style_dlg.color}
      
{#style_dlg.top}   + + + + + + +
 
+
  + + + + + +
 
+
{#style_dlg.right}   + + + + + + +
 
+
  + + + + + +
 
+
{#style_dlg.bottom}   + + + + + + +
 
+
  + + + + + +
 
+
{#style_dlg.left}   + + + + + + +
 
+
  + + + + + +
 
+
+
+ +
+ + + + + + + + + + + + + + + +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
   
+ + + + + + +
 
+
   
+ + + + + + +
 
+
   
+ +
+
+ {#style_dlg.placement} + + + + + + + + + + + + + + + + + + + + + + +
 
{#style_dlg.top} + + + + + + +
 
+
{#style_dlg.right} + + + + + + +
 
+
{#style_dlg.bottom} + + + + + + +
 
+
{#style_dlg.left} + + + + + + +
 
+
+
+
+ +
+
+ {#style_dlg.clip} + + + + + + + + + + + + + + + + + + + + + + +
 
{#style_dlg.top} + + + + + + +
 
+
{#style_dlg.right} + + + + + + +
 
+
{#style_dlg.bottom} + + + + + + +
 
+
{#style_dlg.left} + + + + + + +
 
+
+
+
+
+
+
+ +
+
+ + +
+ + +
+
+ +
+
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/all-wcprops new file mode 100644 index 0000000..55d994a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/css +END +props.css +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/css/props.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/entries new file mode 100644 index 0000000..807e8cc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +props.css +file + + + + +2010-06-04T12:51:46.375616Z +3442be519751bad52b23dc35a1de30d5 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +859 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/text-base/props.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/text-base/props.css.svn-base new file mode 100644 index 0000000..eb1f264 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/.svn/text-base/props.css.svn-base @@ -0,0 +1,13 @@ +#text_font {width:250px;} +#text_size {width:70px;} +.mceAddSelectValue {background:#DDD;} +select, #block_text_indent, #box_width, #box_height, #box_padding_top, #box_padding_right, #box_padding_bottom, #box_padding_left {width:70px;} +#box_margin_top, #box_margin_right, #box_margin_bottom, #box_margin_left, #positioning_width, #positioning_height, #positioning_zindex {width:70px;} +#positioning_placement_top, #positioning_placement_right, #positioning_placement_bottom, #positioning_placement_left {width:70px;} +#positioning_clip_top, #positioning_clip_right, #positioning_clip_bottom, #positioning_clip_left {width:70px;} +.panel_wrapper div.current {padding-top:10px;height:230px;} +.delim {border-left:1px solid gray;} +.tdelim {border-bottom:1px solid gray;} +#block_display {width:145px;} +#list_type {width:115px;} +.disabled {background:#EEE;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/css/props.css b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/props.css new file mode 100644 index 0000000..eb1f264 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/css/props.css @@ -0,0 +1,13 @@ +#text_font {width:250px;} +#text_size {width:70px;} +.mceAddSelectValue {background:#DDD;} +select, #block_text_indent, #box_width, #box_height, #box_padding_top, #box_padding_right, #box_padding_bottom, #box_padding_left {width:70px;} +#box_margin_top, #box_margin_right, #box_margin_bottom, #box_margin_left, #positioning_width, #positioning_height, #positioning_zindex {width:70px;} +#positioning_placement_top, #positioning_placement_right, #positioning_placement_bottom, #positioning_placement_left {width:70px;} +#positioning_clip_top, #positioning_clip_right, #positioning_clip_bottom, #positioning_clip_left {width:70px;} +.panel_wrapper div.current {padding-top:10px;height:230px;} +.delim {border-left:1px solid gray;} +.tdelim {border-bottom:1px solid gray;} +#block_display {width:145px;} +#list_type {width:115px;} +.disabled {background:#EEE;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js new file mode 100644 index 0000000..cab2153 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.StylePlugin",{init:function(a,b){a.addCommand("mceStyleProps",function(){a.windowManager.open({file:b+"/props.htm",width:480+parseInt(a.getLang("style.delta_width",0)),height:320+parseInt(a.getLang("style.delta_height",0)),inline:1},{plugin_url:b,style_text:a.selection.getNode().style.cssText})});a.addCommand("mceSetElementStyle",function(d,c){if(e=a.selection.getNode()){a.dom.setAttrib(e,"style",c);a.execCommand("mceRepaint")}});a.onNodeChange.add(function(d,c,f){c.setDisabled("styleprops",f.nodeName==="BODY")});a.addButton("styleprops",{title:"style.desc",cmd:"mceStyleProps"})},getInfo:function(){return{longname:"Style",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("style",tinymce.plugins.StylePlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js new file mode 100644 index 0000000..5f7755f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js @@ -0,0 +1,55 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.StylePlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceStyleProps', function() { + ed.windowManager.open({ + file : url + '/props.htm', + width : 480 + parseInt(ed.getLang('style.delta_width', 0)), + height : 320 + parseInt(ed.getLang('style.delta_height', 0)), + inline : 1 + }, { + plugin_url : url, + style_text : ed.selection.getNode().style.cssText + }); + }); + + ed.addCommand('mceSetElementStyle', function(ui, v) { + if (e = ed.selection.getNode()) { + ed.dom.setAttrib(e, 'style', v); + ed.execCommand('mceRepaint'); + } + }); + + ed.onNodeChange.add(function(ed, cm, n) { + cm.setDisabled('styleprops', n.nodeName === 'BODY'); + }); + + // Register buttons + ed.addButton('styleprops', {title : 'style.desc', cmd : 'mceStyleProps'}); + }, + + getInfo : function() { + return { + longname : 'Style', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('style', tinymce.plugins.StylePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/all-wcprops new file mode 100644 index 0000000..6fbb409 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/js +END +props.js +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/js/props.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/entries new file mode 100644 index 0000000..3f1cb03 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +props.js +file + + + + +2010-06-04T12:51:46.388949Z +8d393f8e39609188e7f0a668d4c38ab1 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +30482 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/text-base/props.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/text-base/props.js.svn-base new file mode 100644 index 0000000..a8dd93d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/.svn/text-base/props.js.svn-base @@ -0,0 +1,641 @@ +tinyMCEPopup.requireLangPack(); + +var defaultFonts = "" + + "Arial, Helvetica, sans-serif=Arial, Helvetica, sans-serif;" + + "Times New Roman, Times, serif=Times New Roman, Times, serif;" + + "Courier New, Courier, mono=Courier New, Courier, mono;" + + "Times New Roman, Times, serif=Times New Roman, Times, serif;" + + "Georgia, Times New Roman, Times, serif=Georgia, Times New Roman, Times, serif;" + + "Verdana, Arial, Helvetica, sans-serif=Verdana, Arial, Helvetica, sans-serif;" + + "Geneva, Arial, Helvetica, sans-serif=Geneva, Arial, Helvetica, sans-serif"; + +var defaultSizes = "9;10;12;14;16;18;24;xx-small;x-small;small;medium;large;x-large;xx-large;smaller;larger"; +var defaultMeasurement = "+pixels=px;points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;ems=em;exs=ex;%"; +var defaultSpacingMeasurement = "pixels=px;points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;+ems=em;exs=ex;%"; +var defaultIndentMeasurement = "pixels=px;+points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;ems=em;exs=ex;%"; +var defaultWeight = "normal;bold;bolder;lighter;100;200;300;400;500;600;700;800;900"; +var defaultTextStyle = "normal;italic;oblique"; +var defaultVariant = "normal;small-caps"; +var defaultLineHeight = "normal"; +var defaultAttachment = "fixed;scroll"; +var defaultRepeat = "no-repeat;repeat;repeat-x;repeat-y"; +var defaultPosH = "left;center;right"; +var defaultPosV = "top;center;bottom"; +var defaultVAlign = "baseline;sub;super;top;text-top;middle;bottom;text-bottom"; +var defaultDisplay = "inline;block;list-item;run-in;compact;marker;table;inline-table;table-row-group;table-header-group;table-footer-group;table-row;table-column-group;table-column;table-cell;table-caption;none"; +var defaultBorderStyle = "none;solid;dashed;dotted;double;groove;ridge;inset;outset"; +var defaultBorderWidth = "thin;medium;thick"; +var defaultListType = "disc;circle;square;decimal;lower-roman;upper-roman;lower-alpha;upper-alpha;none"; + +function init() { + var ce = document.getElementById('container'), h; + + ce.style.cssText = tinyMCEPopup.getWindowArg('style_text'); + + h = getBrowserHTML('background_image_browser','background_image','image','advimage'); + document.getElementById("background_image_browser").innerHTML = h; + + document.getElementById('text_color_pickcontainer').innerHTML = getColorPickerHTML('text_color_pick','text_color'); + document.getElementById('background_color_pickcontainer').innerHTML = getColorPickerHTML('background_color_pick','background_color'); + document.getElementById('border_color_top_pickcontainer').innerHTML = getColorPickerHTML('border_color_top_pick','border_color_top'); + document.getElementById('border_color_right_pickcontainer').innerHTML = getColorPickerHTML('border_color_right_pick','border_color_right'); + document.getElementById('border_color_bottom_pickcontainer').innerHTML = getColorPickerHTML('border_color_bottom_pick','border_color_bottom'); + document.getElementById('border_color_left_pickcontainer').innerHTML = getColorPickerHTML('border_color_left_pick','border_color_left'); + + fillSelect(0, 'text_font', 'style_font', defaultFonts, ';', true); + fillSelect(0, 'text_size', 'style_font_size', defaultSizes, ';', true); + fillSelect(0, 'text_size_measurement', 'style_font_size_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'text_case', 'style_text_case', "capitalize;uppercase;lowercase", ';', true); + fillSelect(0, 'text_weight', 'style_font_weight', defaultWeight, ';', true); + fillSelect(0, 'text_style', 'style_font_style', defaultTextStyle, ';', true); + fillSelect(0, 'text_variant', 'style_font_variant', defaultVariant, ';', true); + fillSelect(0, 'text_lineheight', 'style_font_line_height', defaultLineHeight, ';', true); + fillSelect(0, 'text_lineheight_measurement', 'style_font_line_height_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'background_attachment', 'style_background_attachment', defaultAttachment, ';', true); + fillSelect(0, 'background_repeat', 'style_background_repeat', defaultRepeat, ';', true); + + fillSelect(0, 'background_hpos_measurement', 'style_background_hpos_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'background_vpos_measurement', 'style_background_vpos_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'background_hpos', 'style_background_hpos', defaultPosH, ';', true); + fillSelect(0, 'background_vpos', 'style_background_vpos', defaultPosV, ';', true); + + fillSelect(0, 'block_wordspacing', 'style_wordspacing', 'normal', ';', true); + fillSelect(0, 'block_wordspacing_measurement', 'style_wordspacing_measurement', defaultSpacingMeasurement, ';', true); + fillSelect(0, 'block_letterspacing', 'style_letterspacing', 'normal', ';', true); + fillSelect(0, 'block_letterspacing_measurement', 'style_letterspacing_measurement', defaultSpacingMeasurement, ';', true); + fillSelect(0, 'block_vertical_alignment', 'style_vertical_alignment', defaultVAlign, ';', true); + fillSelect(0, 'block_text_align', 'style_text_align', "left;right;center;justify", ';', true); + fillSelect(0, 'block_whitespace', 'style_whitespace', "normal;pre;nowrap", ';', true); + fillSelect(0, 'block_display', 'style_display', defaultDisplay, ';', true); + fillSelect(0, 'block_text_indent_measurement', 'style_text_indent_measurement', defaultIndentMeasurement, ';', true); + + fillSelect(0, 'box_width_measurement', 'style_box_width_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_height_measurement', 'style_box_height_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_float', 'style_float', 'left;right;none', ';', true); + fillSelect(0, 'box_clear', 'style_clear', 'left;right;both;none', ';', true); + fillSelect(0, 'box_padding_left_measurement', 'style_padding_left_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_padding_top_measurement', 'style_padding_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_padding_bottom_measurement', 'style_padding_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_padding_right_measurement', 'style_padding_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_left_measurement', 'style_margin_left_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_top_measurement', 'style_margin_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_bottom_measurement', 'style_margin_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_right_measurement', 'style_margin_right_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'border_style_top', 'style_border_style_top', defaultBorderStyle, ';', true); + fillSelect(0, 'border_style_right', 'style_border_style_right', defaultBorderStyle, ';', true); + fillSelect(0, 'border_style_bottom', 'style_border_style_bottom', defaultBorderStyle, ';', true); + fillSelect(0, 'border_style_left', 'style_border_style_left', defaultBorderStyle, ';', true); + + fillSelect(0, 'border_width_top', 'style_border_width_top', defaultBorderWidth, ';', true); + fillSelect(0, 'border_width_right', 'style_border_width_right', defaultBorderWidth, ';', true); + fillSelect(0, 'border_width_bottom', 'style_border_width_bottom', defaultBorderWidth, ';', true); + fillSelect(0, 'border_width_left', 'style_border_width_left', defaultBorderWidth, ';', true); + + fillSelect(0, 'border_width_top_measurement', 'style_border_width_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'border_width_right_measurement', 'style_border_width_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'border_width_bottom_measurement', 'style_border_width_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'border_width_left_measurement', 'style_border_width_left_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'list_type', 'style_list_type', defaultListType, ';', true); + fillSelect(0, 'list_position', 'style_list_position', "inside;outside", ';', true); + + fillSelect(0, 'positioning_type', 'style_positioning_type', "absolute;relative;static", ';', true); + fillSelect(0, 'positioning_visibility', 'style_positioning_visibility', "inherit;visible;hidden", ';', true); + + fillSelect(0, 'positioning_width_measurement', 'style_positioning_width_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_height_measurement', 'style_positioning_height_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_overflow', 'style_positioning_overflow', "visible;hidden;scroll;auto", ';', true); + + fillSelect(0, 'positioning_placement_top_measurement', 'style_positioning_placement_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_placement_right_measurement', 'style_positioning_placement_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_placement_bottom_measurement', 'style_positioning_placement_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_placement_left_measurement', 'style_positioning_placement_left_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'positioning_clip_top_measurement', 'style_positioning_clip_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_clip_right_measurement', 'style_positioning_clip_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_clip_bottom_measurement', 'style_positioning_clip_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_clip_left_measurement', 'style_positioning_clip_left_measurement', defaultMeasurement, ';', true); + + TinyMCE_EditableSelects.init(); + setupFormData(); + showDisabledControls(); +} + +function setupFormData() { + var ce = document.getElementById('container'), f = document.forms[0], s, b, i; + + // Setup text fields + + selectByValue(f, 'text_font', ce.style.fontFamily, true, true); + selectByValue(f, 'text_size', getNum(ce.style.fontSize), true, true); + selectByValue(f, 'text_size_measurement', getMeasurement(ce.style.fontSize)); + selectByValue(f, 'text_weight', ce.style.fontWeight, true, true); + selectByValue(f, 'text_style', ce.style.fontStyle, true, true); + selectByValue(f, 'text_lineheight', getNum(ce.style.lineHeight), true, true); + selectByValue(f, 'text_lineheight_measurement', getMeasurement(ce.style.lineHeight)); + selectByValue(f, 'text_case', ce.style.textTransform, true, true); + selectByValue(f, 'text_variant', ce.style.fontVariant, true, true); + f.text_color.value = tinyMCEPopup.editor.dom.toHex(ce.style.color); + updateColor('text_color_pick', 'text_color'); + f.text_underline.checked = inStr(ce.style.textDecoration, 'underline'); + f.text_overline.checked = inStr(ce.style.textDecoration, 'overline'); + f.text_linethrough.checked = inStr(ce.style.textDecoration, 'line-through'); + f.text_blink.checked = inStr(ce.style.textDecoration, 'blink'); + + // Setup background fields + + f.background_color.value = tinyMCEPopup.editor.dom.toHex(ce.style.backgroundColor); + updateColor('background_color_pick', 'background_color'); + f.background_image.value = ce.style.backgroundImage.replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + selectByValue(f, 'background_repeat', ce.style.backgroundRepeat, true, true); + selectByValue(f, 'background_attachment', ce.style.backgroundAttachment, true, true); + selectByValue(f, 'background_hpos', getNum(getVal(ce.style.backgroundPosition, 0)), true, true); + selectByValue(f, 'background_hpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 0))); + selectByValue(f, 'background_vpos', getNum(getVal(ce.style.backgroundPosition, 1)), true, true); + selectByValue(f, 'background_vpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 1))); + + // Setup block fields + + selectByValue(f, 'block_wordspacing', getNum(ce.style.wordSpacing), true, true); + selectByValue(f, 'block_wordspacing_measurement', getMeasurement(ce.style.wordSpacing)); + selectByValue(f, 'block_letterspacing', getNum(ce.style.letterSpacing), true, true); + selectByValue(f, 'block_letterspacing_measurement', getMeasurement(ce.style.letterSpacing)); + selectByValue(f, 'block_vertical_alignment', ce.style.verticalAlign, true, true); + selectByValue(f, 'block_text_align', ce.style.textAlign, true, true); + f.block_text_indent.value = getNum(ce.style.textIndent); + selectByValue(f, 'block_text_indent_measurement', getMeasurement(ce.style.textIndent)); + selectByValue(f, 'block_whitespace', ce.style.whiteSpace, true, true); + selectByValue(f, 'block_display', ce.style.display, true, true); + + // Setup box fields + + f.box_width.value = getNum(ce.style.width); + selectByValue(f, 'box_width_measurement', getMeasurement(ce.style.width)); + + f.box_height.value = getNum(ce.style.height); + selectByValue(f, 'box_height_measurement', getMeasurement(ce.style.height)); + + if (tinymce.isGecko) + selectByValue(f, 'box_float', ce.style.cssFloat, true, true); + else + selectByValue(f, 'box_float', ce.style.styleFloat, true, true); + + selectByValue(f, 'box_clear', ce.style.clear, true, true); + + setupBox(f, ce, 'box_padding', 'padding', ''); + setupBox(f, ce, 'box_margin', 'margin', ''); + + // Setup border fields + + setupBox(f, ce, 'border_style', 'border', 'Style'); + setupBox(f, ce, 'border_width', 'border', 'Width'); + setupBox(f, ce, 'border_color', 'border', 'Color'); + + updateColor('border_color_top_pick', 'border_color_top'); + updateColor('border_color_right_pick', 'border_color_right'); + updateColor('border_color_bottom_pick', 'border_color_bottom'); + updateColor('border_color_left_pick', 'border_color_left'); + + f.elements.border_color_top.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_top.value); + f.elements.border_color_right.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_right.value); + f.elements.border_color_bottom.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_bottom.value); + f.elements.border_color_left.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_left.value); + + // Setup list fields + + selectByValue(f, 'list_type', ce.style.listStyleType, true, true); + selectByValue(f, 'list_position', ce.style.listStylePosition, true, true); + f.list_bullet_image.value = ce.style.listStyleImage.replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + + // Setup box fields + + selectByValue(f, 'positioning_type', ce.style.position, true, true); + selectByValue(f, 'positioning_visibility', ce.style.visibility, true, true); + selectByValue(f, 'positioning_overflow', ce.style.overflow, true, true); + f.positioning_zindex.value = ce.style.zIndex ? ce.style.zIndex : ""; + + f.positioning_width.value = getNum(ce.style.width); + selectByValue(f, 'positioning_width_measurement', getMeasurement(ce.style.width)); + + f.positioning_height.value = getNum(ce.style.height); + selectByValue(f, 'positioning_height_measurement', getMeasurement(ce.style.height)); + + setupBox(f, ce, 'positioning_placement', '', '', ['top', 'right', 'bottom', 'left']); + + s = ce.style.clip.replace(new RegExp("rect\\('?([^']*)'?\\)", 'gi'), "$1"); + s = s.replace(/,/g, ' '); + + if (!hasEqualValues([getVal(s, 0), getVal(s, 1), getVal(s, 2), getVal(s, 3)])) { + f.positioning_clip_top.value = getNum(getVal(s, 0)); + selectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0))); + f.positioning_clip_right.value = getNum(getVal(s, 1)); + selectByValue(f, 'positioning_clip_right_measurement', getMeasurement(getVal(s, 1))); + f.positioning_clip_bottom.value = getNum(getVal(s, 2)); + selectByValue(f, 'positioning_clip_bottom_measurement', getMeasurement(getVal(s, 2))); + f.positioning_clip_left.value = getNum(getVal(s, 3)); + selectByValue(f, 'positioning_clip_left_measurement', getMeasurement(getVal(s, 3))); + } else { + f.positioning_clip_top.value = getNum(getVal(s, 0)); + selectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0))); + f.positioning_clip_right.value = f.positioning_clip_bottom.value = f.positioning_clip_left.value; + } + +// setupBox(f, ce, '', 'border', 'Color'); +} + +function getMeasurement(s) { + return s.replace(/^([0-9.]+)(.*)$/, "$2"); +} + +function getNum(s) { + if (new RegExp('^(?:[0-9.]+)(?:[a-z%]+)$', 'gi').test(s)) + return s.replace(/[^0-9.]/g, ''); + + return s; +} + +function inStr(s, n) { + return new RegExp(n, 'gi').test(s); +} + +function getVal(s, i) { + var a = s.split(' '); + + if (a.length > 1) + return a[i]; + + return ""; +} + +function setValue(f, n, v) { + if (f.elements[n].type == "text") + f.elements[n].value = v; + else + selectByValue(f, n, v, true, true); +} + +function setupBox(f, ce, fp, pr, sf, b) { + if (typeof(b) == "undefined") + b = ['Top', 'Right', 'Bottom', 'Left']; + + if (isSame(ce, pr, sf, b)) { + f.elements[fp + "_same"].checked = true; + + setValue(f, fp + "_top", getNum(ce.style[pr + b[0] + sf])); + f.elements[fp + "_top"].disabled = false; + + f.elements[fp + "_right"].value = ""; + f.elements[fp + "_right"].disabled = true; + f.elements[fp + "_bottom"].value = ""; + f.elements[fp + "_bottom"].disabled = true; + f.elements[fp + "_left"].value = ""; + f.elements[fp + "_left"].disabled = true; + + if (f.elements[fp + "_top_measurement"]) { + selectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf])); + f.elements[fp + "_left_measurement"].disabled = true; + f.elements[fp + "_bottom_measurement"].disabled = true; + f.elements[fp + "_right_measurement"].disabled = true; + } + } else { + f.elements[fp + "_same"].checked = false; + + setValue(f, fp + "_top", getNum(ce.style[pr + b[0] + sf])); + f.elements[fp + "_top"].disabled = false; + + setValue(f, fp + "_right", getNum(ce.style[pr + b[1] + sf])); + f.elements[fp + "_right"].disabled = false; + + setValue(f, fp + "_bottom", getNum(ce.style[pr + b[2] + sf])); + f.elements[fp + "_bottom"].disabled = false; + + setValue(f, fp + "_left", getNum(ce.style[pr + b[3] + sf])); + f.elements[fp + "_left"].disabled = false; + + if (f.elements[fp + "_top_measurement"]) { + selectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf])); + selectByValue(f, fp + '_right_measurement', getMeasurement(ce.style[pr + b[1] + sf])); + selectByValue(f, fp + '_bottom_measurement', getMeasurement(ce.style[pr + b[2] + sf])); + selectByValue(f, fp + '_left_measurement', getMeasurement(ce.style[pr + b[3] + sf])); + f.elements[fp + "_left_measurement"].disabled = false; + f.elements[fp + "_bottom_measurement"].disabled = false; + f.elements[fp + "_right_measurement"].disabled = false; + } + } +} + +function isSame(e, pr, sf, b) { + var a = [], i, x; + + if (typeof(b) == "undefined") + b = ['Top', 'Right', 'Bottom', 'Left']; + + if (typeof(sf) == "undefined" || sf == null) + sf = ""; + + a[0] = e.style[pr + b[0] + sf]; + a[1] = e.style[pr + b[1] + sf]; + a[2] = e.style[pr + b[2] + sf]; + a[3] = e.style[pr + b[3] + sf]; + + for (i=0; i 0 ? s.substring(1) : s; + + if (f.text_none.checked) + s = "none"; + + ce.style.textDecoration = s; + + // Build background styles + + ce.style.backgroundColor = f.background_color.value; + ce.style.backgroundImage = f.background_image.value != "" ? "url(" + f.background_image.value + ")" : ""; + ce.style.backgroundRepeat = f.background_repeat.value; + ce.style.backgroundAttachment = f.background_attachment.value; + + if (f.background_hpos.value != "") { + s = ""; + s += f.background_hpos.value + (isNum(f.background_hpos.value) ? f.background_hpos_measurement.value : "") + " "; + s += f.background_vpos.value + (isNum(f.background_vpos.value) ? f.background_vpos_measurement.value : ""); + ce.style.backgroundPosition = s; + } + + // Build block styles + + ce.style.wordSpacing = f.block_wordspacing.value + (isNum(f.block_wordspacing.value) ? f.block_wordspacing_measurement.value : ""); + ce.style.letterSpacing = f.block_letterspacing.value + (isNum(f.block_letterspacing.value) ? f.block_letterspacing_measurement.value : ""); + ce.style.verticalAlign = f.block_vertical_alignment.value; + ce.style.textAlign = f.block_text_align.value; + ce.style.textIndent = f.block_text_indent.value + (isNum(f.block_text_indent.value) ? f.block_text_indent_measurement.value : ""); + ce.style.whiteSpace = f.block_whitespace.value; + ce.style.display = f.block_display.value; + + // Build box styles + + ce.style.width = f.box_width.value + (isNum(f.box_width.value) ? f.box_width_measurement.value : ""); + ce.style.height = f.box_height.value + (isNum(f.box_height.value) ? f.box_height_measurement.value : ""); + ce.style.styleFloat = f.box_float.value; + + if (tinymce.isGecko) + ce.style.cssFloat = f.box_float.value; + + ce.style.clear = f.box_clear.value; + + if (!f.box_padding_same.checked) { + ce.style.paddingTop = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : ""); + ce.style.paddingRight = f.box_padding_right.value + (isNum(f.box_padding_right.value) ? f.box_padding_right_measurement.value : ""); + ce.style.paddingBottom = f.box_padding_bottom.value + (isNum(f.box_padding_bottom.value) ? f.box_padding_bottom_measurement.value : ""); + ce.style.paddingLeft = f.box_padding_left.value + (isNum(f.box_padding_left.value) ? f.box_padding_left_measurement.value : ""); + } else + ce.style.padding = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : ""); + + if (!f.box_margin_same.checked) { + ce.style.marginTop = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : ""); + ce.style.marginRight = f.box_margin_right.value + (isNum(f.box_margin_right.value) ? f.box_margin_right_measurement.value : ""); + ce.style.marginBottom = f.box_margin_bottom.value + (isNum(f.box_margin_bottom.value) ? f.box_margin_bottom_measurement.value : ""); + ce.style.marginLeft = f.box_margin_left.value + (isNum(f.box_margin_left.value) ? f.box_margin_left_measurement.value : ""); + } else + ce.style.margin = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : ""); + + // Build border styles + + if (!f.border_style_same.checked) { + ce.style.borderTopStyle = f.border_style_top.value; + ce.style.borderRightStyle = f.border_style_right.value; + ce.style.borderBottomStyle = f.border_style_bottom.value; + ce.style.borderLeftStyle = f.border_style_left.value; + } else + ce.style.borderStyle = f.border_style_top.value; + + if (!f.border_width_same.checked) { + ce.style.borderTopWidth = f.border_width_top.value + (isNum(f.border_width_top.value) ? f.border_width_top_measurement.value : ""); + ce.style.borderRightWidth = f.border_width_right.value + (isNum(f.border_width_right.value) ? f.border_width_right_measurement.value : ""); + ce.style.borderBottomWidth = f.border_width_bottom.value + (isNum(f.border_width_bottom.value) ? f.border_width_bottom_measurement.value : ""); + ce.style.borderLeftWidth = f.border_width_left.value + (isNum(f.border_width_left.value) ? f.border_width_left_measurement.value : ""); + } else + ce.style.borderWidth = f.border_width_top.value + (isNum(f.border_width_top.value) ? f.border_width_top_measurement.value : ""); + + if (!f.border_color_same.checked) { + ce.style.borderTopColor = f.border_color_top.value; + ce.style.borderRightColor = f.border_color_right.value; + ce.style.borderBottomColor = f.border_color_bottom.value; + ce.style.borderLeftColor = f.border_color_left.value; + } else + ce.style.borderColor = f.border_color_top.value; + + // Build list styles + + ce.style.listStyleType = f.list_type.value; + ce.style.listStylePosition = f.list_position.value; + ce.style.listStyleImage = f.list_bullet_image.value != "" ? "url(" + f.list_bullet_image.value + ")" : ""; + + // Build positioning styles + + ce.style.position = f.positioning_type.value; + ce.style.visibility = f.positioning_visibility.value; + + if (ce.style.width == "") + ce.style.width = f.positioning_width.value + (isNum(f.positioning_width.value) ? f.positioning_width_measurement.value : ""); + + if (ce.style.height == "") + ce.style.height = f.positioning_height.value + (isNum(f.positioning_height.value) ? f.positioning_height_measurement.value : ""); + + ce.style.zIndex = f.positioning_zindex.value; + ce.style.overflow = f.positioning_overflow.value; + + if (!f.positioning_placement_same.checked) { + ce.style.top = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : ""); + ce.style.right = f.positioning_placement_right.value + (isNum(f.positioning_placement_right.value) ? f.positioning_placement_right_measurement.value : ""); + ce.style.bottom = f.positioning_placement_bottom.value + (isNum(f.positioning_placement_bottom.value) ? f.positioning_placement_bottom_measurement.value : ""); + ce.style.left = f.positioning_placement_left.value + (isNum(f.positioning_placement_left.value) ? f.positioning_placement_left_measurement.value : ""); + } else { + s = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : ""); + ce.style.top = s; + ce.style.right = s; + ce.style.bottom = s; + ce.style.left = s; + } + + if (!f.positioning_clip_same.checked) { + s = "rect("; + s += (isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : "auto") + " "; + s += (isNum(f.positioning_clip_right.value) ? f.positioning_clip_right.value + f.positioning_clip_right_measurement.value : "auto") + " "; + s += (isNum(f.positioning_clip_bottom.value) ? f.positioning_clip_bottom.value + f.positioning_clip_bottom_measurement.value : "auto") + " "; + s += (isNum(f.positioning_clip_left.value) ? f.positioning_clip_left.value + f.positioning_clip_left_measurement.value : "auto"); + s += ")"; + + if (s != "rect(auto auto auto auto)") + ce.style.clip = s; + } else { + s = "rect("; + t = isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : "auto"; + s += t + " "; + s += t + " "; + s += t + " "; + s += t + ")"; + + if (s != "rect(auto auto auto auto)") + ce.style.clip = s; + } + + ce.style.cssText = ce.style.cssText; +} + +function isNum(s) { + return new RegExp('[0-9]+', 'g').test(s); +} + +function showDisabledControls() { + var f = document.forms, i, a; + + for (i=0; i 1) { + addSelectValue(f, s, p[0], p[1]); + + if (se) + selectByValue(f, s, p[1]); + } else { + addSelectValue(f, s, p[0], p[0]); + + if (se) + selectByValue(f, s, p[0]); + } + } +} + +function toggleSame(ce, pre) { + var el = document.forms[0].elements, i; + + if (ce.checked) { + el[pre + "_top"].disabled = false; + el[pre + "_right"].disabled = true; + el[pre + "_bottom"].disabled = true; + el[pre + "_left"].disabled = true; + + if (el[pre + "_top_measurement"]) { + el[pre + "_top_measurement"].disabled = false; + el[pre + "_right_measurement"].disabled = true; + el[pre + "_bottom_measurement"].disabled = true; + el[pre + "_left_measurement"].disabled = true; + } + } else { + el[pre + "_top"].disabled = false; + el[pre + "_right"].disabled = false; + el[pre + "_bottom"].disabled = false; + el[pre + "_left"].disabled = false; + + if (el[pre + "_top_measurement"]) { + el[pre + "_top_measurement"].disabled = false; + el[pre + "_right_measurement"].disabled = false; + el[pre + "_bottom_measurement"].disabled = false; + el[pre + "_left_measurement"].disabled = false; + } + } + + showDisabledControls(); +} + +function synch(fr, to) { + var f = document.forms[0]; + + f.elements[to].value = f.elements[fr].value; + + if (f.elements[fr + "_measurement"]) + selectByValue(f, to + "_measurement", f.elements[fr + "_measurement"].value); +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/js/props.js b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/props.js new file mode 100644 index 0000000..a8dd93d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/js/props.js @@ -0,0 +1,641 @@ +tinyMCEPopup.requireLangPack(); + +var defaultFonts = "" + + "Arial, Helvetica, sans-serif=Arial, Helvetica, sans-serif;" + + "Times New Roman, Times, serif=Times New Roman, Times, serif;" + + "Courier New, Courier, mono=Courier New, Courier, mono;" + + "Times New Roman, Times, serif=Times New Roman, Times, serif;" + + "Georgia, Times New Roman, Times, serif=Georgia, Times New Roman, Times, serif;" + + "Verdana, Arial, Helvetica, sans-serif=Verdana, Arial, Helvetica, sans-serif;" + + "Geneva, Arial, Helvetica, sans-serif=Geneva, Arial, Helvetica, sans-serif"; + +var defaultSizes = "9;10;12;14;16;18;24;xx-small;x-small;small;medium;large;x-large;xx-large;smaller;larger"; +var defaultMeasurement = "+pixels=px;points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;ems=em;exs=ex;%"; +var defaultSpacingMeasurement = "pixels=px;points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;+ems=em;exs=ex;%"; +var defaultIndentMeasurement = "pixels=px;+points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;ems=em;exs=ex;%"; +var defaultWeight = "normal;bold;bolder;lighter;100;200;300;400;500;600;700;800;900"; +var defaultTextStyle = "normal;italic;oblique"; +var defaultVariant = "normal;small-caps"; +var defaultLineHeight = "normal"; +var defaultAttachment = "fixed;scroll"; +var defaultRepeat = "no-repeat;repeat;repeat-x;repeat-y"; +var defaultPosH = "left;center;right"; +var defaultPosV = "top;center;bottom"; +var defaultVAlign = "baseline;sub;super;top;text-top;middle;bottom;text-bottom"; +var defaultDisplay = "inline;block;list-item;run-in;compact;marker;table;inline-table;table-row-group;table-header-group;table-footer-group;table-row;table-column-group;table-column;table-cell;table-caption;none"; +var defaultBorderStyle = "none;solid;dashed;dotted;double;groove;ridge;inset;outset"; +var defaultBorderWidth = "thin;medium;thick"; +var defaultListType = "disc;circle;square;decimal;lower-roman;upper-roman;lower-alpha;upper-alpha;none"; + +function init() { + var ce = document.getElementById('container'), h; + + ce.style.cssText = tinyMCEPopup.getWindowArg('style_text'); + + h = getBrowserHTML('background_image_browser','background_image','image','advimage'); + document.getElementById("background_image_browser").innerHTML = h; + + document.getElementById('text_color_pickcontainer').innerHTML = getColorPickerHTML('text_color_pick','text_color'); + document.getElementById('background_color_pickcontainer').innerHTML = getColorPickerHTML('background_color_pick','background_color'); + document.getElementById('border_color_top_pickcontainer').innerHTML = getColorPickerHTML('border_color_top_pick','border_color_top'); + document.getElementById('border_color_right_pickcontainer').innerHTML = getColorPickerHTML('border_color_right_pick','border_color_right'); + document.getElementById('border_color_bottom_pickcontainer').innerHTML = getColorPickerHTML('border_color_bottom_pick','border_color_bottom'); + document.getElementById('border_color_left_pickcontainer').innerHTML = getColorPickerHTML('border_color_left_pick','border_color_left'); + + fillSelect(0, 'text_font', 'style_font', defaultFonts, ';', true); + fillSelect(0, 'text_size', 'style_font_size', defaultSizes, ';', true); + fillSelect(0, 'text_size_measurement', 'style_font_size_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'text_case', 'style_text_case', "capitalize;uppercase;lowercase", ';', true); + fillSelect(0, 'text_weight', 'style_font_weight', defaultWeight, ';', true); + fillSelect(0, 'text_style', 'style_font_style', defaultTextStyle, ';', true); + fillSelect(0, 'text_variant', 'style_font_variant', defaultVariant, ';', true); + fillSelect(0, 'text_lineheight', 'style_font_line_height', defaultLineHeight, ';', true); + fillSelect(0, 'text_lineheight_measurement', 'style_font_line_height_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'background_attachment', 'style_background_attachment', defaultAttachment, ';', true); + fillSelect(0, 'background_repeat', 'style_background_repeat', defaultRepeat, ';', true); + + fillSelect(0, 'background_hpos_measurement', 'style_background_hpos_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'background_vpos_measurement', 'style_background_vpos_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'background_hpos', 'style_background_hpos', defaultPosH, ';', true); + fillSelect(0, 'background_vpos', 'style_background_vpos', defaultPosV, ';', true); + + fillSelect(0, 'block_wordspacing', 'style_wordspacing', 'normal', ';', true); + fillSelect(0, 'block_wordspacing_measurement', 'style_wordspacing_measurement', defaultSpacingMeasurement, ';', true); + fillSelect(0, 'block_letterspacing', 'style_letterspacing', 'normal', ';', true); + fillSelect(0, 'block_letterspacing_measurement', 'style_letterspacing_measurement', defaultSpacingMeasurement, ';', true); + fillSelect(0, 'block_vertical_alignment', 'style_vertical_alignment', defaultVAlign, ';', true); + fillSelect(0, 'block_text_align', 'style_text_align', "left;right;center;justify", ';', true); + fillSelect(0, 'block_whitespace', 'style_whitespace', "normal;pre;nowrap", ';', true); + fillSelect(0, 'block_display', 'style_display', defaultDisplay, ';', true); + fillSelect(0, 'block_text_indent_measurement', 'style_text_indent_measurement', defaultIndentMeasurement, ';', true); + + fillSelect(0, 'box_width_measurement', 'style_box_width_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_height_measurement', 'style_box_height_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_float', 'style_float', 'left;right;none', ';', true); + fillSelect(0, 'box_clear', 'style_clear', 'left;right;both;none', ';', true); + fillSelect(0, 'box_padding_left_measurement', 'style_padding_left_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_padding_top_measurement', 'style_padding_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_padding_bottom_measurement', 'style_padding_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_padding_right_measurement', 'style_padding_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_left_measurement', 'style_margin_left_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_top_measurement', 'style_margin_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_bottom_measurement', 'style_margin_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'box_margin_right_measurement', 'style_margin_right_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'border_style_top', 'style_border_style_top', defaultBorderStyle, ';', true); + fillSelect(0, 'border_style_right', 'style_border_style_right', defaultBorderStyle, ';', true); + fillSelect(0, 'border_style_bottom', 'style_border_style_bottom', defaultBorderStyle, ';', true); + fillSelect(0, 'border_style_left', 'style_border_style_left', defaultBorderStyle, ';', true); + + fillSelect(0, 'border_width_top', 'style_border_width_top', defaultBorderWidth, ';', true); + fillSelect(0, 'border_width_right', 'style_border_width_right', defaultBorderWidth, ';', true); + fillSelect(0, 'border_width_bottom', 'style_border_width_bottom', defaultBorderWidth, ';', true); + fillSelect(0, 'border_width_left', 'style_border_width_left', defaultBorderWidth, ';', true); + + fillSelect(0, 'border_width_top_measurement', 'style_border_width_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'border_width_right_measurement', 'style_border_width_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'border_width_bottom_measurement', 'style_border_width_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'border_width_left_measurement', 'style_border_width_left_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'list_type', 'style_list_type', defaultListType, ';', true); + fillSelect(0, 'list_position', 'style_list_position', "inside;outside", ';', true); + + fillSelect(0, 'positioning_type', 'style_positioning_type', "absolute;relative;static", ';', true); + fillSelect(0, 'positioning_visibility', 'style_positioning_visibility', "inherit;visible;hidden", ';', true); + + fillSelect(0, 'positioning_width_measurement', 'style_positioning_width_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_height_measurement', 'style_positioning_height_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_overflow', 'style_positioning_overflow', "visible;hidden;scroll;auto", ';', true); + + fillSelect(0, 'positioning_placement_top_measurement', 'style_positioning_placement_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_placement_right_measurement', 'style_positioning_placement_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_placement_bottom_measurement', 'style_positioning_placement_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_placement_left_measurement', 'style_positioning_placement_left_measurement', defaultMeasurement, ';', true); + + fillSelect(0, 'positioning_clip_top_measurement', 'style_positioning_clip_top_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_clip_right_measurement', 'style_positioning_clip_right_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_clip_bottom_measurement', 'style_positioning_clip_bottom_measurement', defaultMeasurement, ';', true); + fillSelect(0, 'positioning_clip_left_measurement', 'style_positioning_clip_left_measurement', defaultMeasurement, ';', true); + + TinyMCE_EditableSelects.init(); + setupFormData(); + showDisabledControls(); +} + +function setupFormData() { + var ce = document.getElementById('container'), f = document.forms[0], s, b, i; + + // Setup text fields + + selectByValue(f, 'text_font', ce.style.fontFamily, true, true); + selectByValue(f, 'text_size', getNum(ce.style.fontSize), true, true); + selectByValue(f, 'text_size_measurement', getMeasurement(ce.style.fontSize)); + selectByValue(f, 'text_weight', ce.style.fontWeight, true, true); + selectByValue(f, 'text_style', ce.style.fontStyle, true, true); + selectByValue(f, 'text_lineheight', getNum(ce.style.lineHeight), true, true); + selectByValue(f, 'text_lineheight_measurement', getMeasurement(ce.style.lineHeight)); + selectByValue(f, 'text_case', ce.style.textTransform, true, true); + selectByValue(f, 'text_variant', ce.style.fontVariant, true, true); + f.text_color.value = tinyMCEPopup.editor.dom.toHex(ce.style.color); + updateColor('text_color_pick', 'text_color'); + f.text_underline.checked = inStr(ce.style.textDecoration, 'underline'); + f.text_overline.checked = inStr(ce.style.textDecoration, 'overline'); + f.text_linethrough.checked = inStr(ce.style.textDecoration, 'line-through'); + f.text_blink.checked = inStr(ce.style.textDecoration, 'blink'); + + // Setup background fields + + f.background_color.value = tinyMCEPopup.editor.dom.toHex(ce.style.backgroundColor); + updateColor('background_color_pick', 'background_color'); + f.background_image.value = ce.style.backgroundImage.replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + selectByValue(f, 'background_repeat', ce.style.backgroundRepeat, true, true); + selectByValue(f, 'background_attachment', ce.style.backgroundAttachment, true, true); + selectByValue(f, 'background_hpos', getNum(getVal(ce.style.backgroundPosition, 0)), true, true); + selectByValue(f, 'background_hpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 0))); + selectByValue(f, 'background_vpos', getNum(getVal(ce.style.backgroundPosition, 1)), true, true); + selectByValue(f, 'background_vpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 1))); + + // Setup block fields + + selectByValue(f, 'block_wordspacing', getNum(ce.style.wordSpacing), true, true); + selectByValue(f, 'block_wordspacing_measurement', getMeasurement(ce.style.wordSpacing)); + selectByValue(f, 'block_letterspacing', getNum(ce.style.letterSpacing), true, true); + selectByValue(f, 'block_letterspacing_measurement', getMeasurement(ce.style.letterSpacing)); + selectByValue(f, 'block_vertical_alignment', ce.style.verticalAlign, true, true); + selectByValue(f, 'block_text_align', ce.style.textAlign, true, true); + f.block_text_indent.value = getNum(ce.style.textIndent); + selectByValue(f, 'block_text_indent_measurement', getMeasurement(ce.style.textIndent)); + selectByValue(f, 'block_whitespace', ce.style.whiteSpace, true, true); + selectByValue(f, 'block_display', ce.style.display, true, true); + + // Setup box fields + + f.box_width.value = getNum(ce.style.width); + selectByValue(f, 'box_width_measurement', getMeasurement(ce.style.width)); + + f.box_height.value = getNum(ce.style.height); + selectByValue(f, 'box_height_measurement', getMeasurement(ce.style.height)); + + if (tinymce.isGecko) + selectByValue(f, 'box_float', ce.style.cssFloat, true, true); + else + selectByValue(f, 'box_float', ce.style.styleFloat, true, true); + + selectByValue(f, 'box_clear', ce.style.clear, true, true); + + setupBox(f, ce, 'box_padding', 'padding', ''); + setupBox(f, ce, 'box_margin', 'margin', ''); + + // Setup border fields + + setupBox(f, ce, 'border_style', 'border', 'Style'); + setupBox(f, ce, 'border_width', 'border', 'Width'); + setupBox(f, ce, 'border_color', 'border', 'Color'); + + updateColor('border_color_top_pick', 'border_color_top'); + updateColor('border_color_right_pick', 'border_color_right'); + updateColor('border_color_bottom_pick', 'border_color_bottom'); + updateColor('border_color_left_pick', 'border_color_left'); + + f.elements.border_color_top.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_top.value); + f.elements.border_color_right.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_right.value); + f.elements.border_color_bottom.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_bottom.value); + f.elements.border_color_left.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_left.value); + + // Setup list fields + + selectByValue(f, 'list_type', ce.style.listStyleType, true, true); + selectByValue(f, 'list_position', ce.style.listStylePosition, true, true); + f.list_bullet_image.value = ce.style.listStyleImage.replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + + // Setup box fields + + selectByValue(f, 'positioning_type', ce.style.position, true, true); + selectByValue(f, 'positioning_visibility', ce.style.visibility, true, true); + selectByValue(f, 'positioning_overflow', ce.style.overflow, true, true); + f.positioning_zindex.value = ce.style.zIndex ? ce.style.zIndex : ""; + + f.positioning_width.value = getNum(ce.style.width); + selectByValue(f, 'positioning_width_measurement', getMeasurement(ce.style.width)); + + f.positioning_height.value = getNum(ce.style.height); + selectByValue(f, 'positioning_height_measurement', getMeasurement(ce.style.height)); + + setupBox(f, ce, 'positioning_placement', '', '', ['top', 'right', 'bottom', 'left']); + + s = ce.style.clip.replace(new RegExp("rect\\('?([^']*)'?\\)", 'gi'), "$1"); + s = s.replace(/,/g, ' '); + + if (!hasEqualValues([getVal(s, 0), getVal(s, 1), getVal(s, 2), getVal(s, 3)])) { + f.positioning_clip_top.value = getNum(getVal(s, 0)); + selectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0))); + f.positioning_clip_right.value = getNum(getVal(s, 1)); + selectByValue(f, 'positioning_clip_right_measurement', getMeasurement(getVal(s, 1))); + f.positioning_clip_bottom.value = getNum(getVal(s, 2)); + selectByValue(f, 'positioning_clip_bottom_measurement', getMeasurement(getVal(s, 2))); + f.positioning_clip_left.value = getNum(getVal(s, 3)); + selectByValue(f, 'positioning_clip_left_measurement', getMeasurement(getVal(s, 3))); + } else { + f.positioning_clip_top.value = getNum(getVal(s, 0)); + selectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0))); + f.positioning_clip_right.value = f.positioning_clip_bottom.value = f.positioning_clip_left.value; + } + +// setupBox(f, ce, '', 'border', 'Color'); +} + +function getMeasurement(s) { + return s.replace(/^([0-9.]+)(.*)$/, "$2"); +} + +function getNum(s) { + if (new RegExp('^(?:[0-9.]+)(?:[a-z%]+)$', 'gi').test(s)) + return s.replace(/[^0-9.]/g, ''); + + return s; +} + +function inStr(s, n) { + return new RegExp(n, 'gi').test(s); +} + +function getVal(s, i) { + var a = s.split(' '); + + if (a.length > 1) + return a[i]; + + return ""; +} + +function setValue(f, n, v) { + if (f.elements[n].type == "text") + f.elements[n].value = v; + else + selectByValue(f, n, v, true, true); +} + +function setupBox(f, ce, fp, pr, sf, b) { + if (typeof(b) == "undefined") + b = ['Top', 'Right', 'Bottom', 'Left']; + + if (isSame(ce, pr, sf, b)) { + f.elements[fp + "_same"].checked = true; + + setValue(f, fp + "_top", getNum(ce.style[pr + b[0] + sf])); + f.elements[fp + "_top"].disabled = false; + + f.elements[fp + "_right"].value = ""; + f.elements[fp + "_right"].disabled = true; + f.elements[fp + "_bottom"].value = ""; + f.elements[fp + "_bottom"].disabled = true; + f.elements[fp + "_left"].value = ""; + f.elements[fp + "_left"].disabled = true; + + if (f.elements[fp + "_top_measurement"]) { + selectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf])); + f.elements[fp + "_left_measurement"].disabled = true; + f.elements[fp + "_bottom_measurement"].disabled = true; + f.elements[fp + "_right_measurement"].disabled = true; + } + } else { + f.elements[fp + "_same"].checked = false; + + setValue(f, fp + "_top", getNum(ce.style[pr + b[0] + sf])); + f.elements[fp + "_top"].disabled = false; + + setValue(f, fp + "_right", getNum(ce.style[pr + b[1] + sf])); + f.elements[fp + "_right"].disabled = false; + + setValue(f, fp + "_bottom", getNum(ce.style[pr + b[2] + sf])); + f.elements[fp + "_bottom"].disabled = false; + + setValue(f, fp + "_left", getNum(ce.style[pr + b[3] + sf])); + f.elements[fp + "_left"].disabled = false; + + if (f.elements[fp + "_top_measurement"]) { + selectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf])); + selectByValue(f, fp + '_right_measurement', getMeasurement(ce.style[pr + b[1] + sf])); + selectByValue(f, fp + '_bottom_measurement', getMeasurement(ce.style[pr + b[2] + sf])); + selectByValue(f, fp + '_left_measurement', getMeasurement(ce.style[pr + b[3] + sf])); + f.elements[fp + "_left_measurement"].disabled = false; + f.elements[fp + "_bottom_measurement"].disabled = false; + f.elements[fp + "_right_measurement"].disabled = false; + } + } +} + +function isSame(e, pr, sf, b) { + var a = [], i, x; + + if (typeof(b) == "undefined") + b = ['Top', 'Right', 'Bottom', 'Left']; + + if (typeof(sf) == "undefined" || sf == null) + sf = ""; + + a[0] = e.style[pr + b[0] + sf]; + a[1] = e.style[pr + b[1] + sf]; + a[2] = e.style[pr + b[2] + sf]; + a[3] = e.style[pr + b[3] + sf]; + + for (i=0; i 0 ? s.substring(1) : s; + + if (f.text_none.checked) + s = "none"; + + ce.style.textDecoration = s; + + // Build background styles + + ce.style.backgroundColor = f.background_color.value; + ce.style.backgroundImage = f.background_image.value != "" ? "url(" + f.background_image.value + ")" : ""; + ce.style.backgroundRepeat = f.background_repeat.value; + ce.style.backgroundAttachment = f.background_attachment.value; + + if (f.background_hpos.value != "") { + s = ""; + s += f.background_hpos.value + (isNum(f.background_hpos.value) ? f.background_hpos_measurement.value : "") + " "; + s += f.background_vpos.value + (isNum(f.background_vpos.value) ? f.background_vpos_measurement.value : ""); + ce.style.backgroundPosition = s; + } + + // Build block styles + + ce.style.wordSpacing = f.block_wordspacing.value + (isNum(f.block_wordspacing.value) ? f.block_wordspacing_measurement.value : ""); + ce.style.letterSpacing = f.block_letterspacing.value + (isNum(f.block_letterspacing.value) ? f.block_letterspacing_measurement.value : ""); + ce.style.verticalAlign = f.block_vertical_alignment.value; + ce.style.textAlign = f.block_text_align.value; + ce.style.textIndent = f.block_text_indent.value + (isNum(f.block_text_indent.value) ? f.block_text_indent_measurement.value : ""); + ce.style.whiteSpace = f.block_whitespace.value; + ce.style.display = f.block_display.value; + + // Build box styles + + ce.style.width = f.box_width.value + (isNum(f.box_width.value) ? f.box_width_measurement.value : ""); + ce.style.height = f.box_height.value + (isNum(f.box_height.value) ? f.box_height_measurement.value : ""); + ce.style.styleFloat = f.box_float.value; + + if (tinymce.isGecko) + ce.style.cssFloat = f.box_float.value; + + ce.style.clear = f.box_clear.value; + + if (!f.box_padding_same.checked) { + ce.style.paddingTop = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : ""); + ce.style.paddingRight = f.box_padding_right.value + (isNum(f.box_padding_right.value) ? f.box_padding_right_measurement.value : ""); + ce.style.paddingBottom = f.box_padding_bottom.value + (isNum(f.box_padding_bottom.value) ? f.box_padding_bottom_measurement.value : ""); + ce.style.paddingLeft = f.box_padding_left.value + (isNum(f.box_padding_left.value) ? f.box_padding_left_measurement.value : ""); + } else + ce.style.padding = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : ""); + + if (!f.box_margin_same.checked) { + ce.style.marginTop = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : ""); + ce.style.marginRight = f.box_margin_right.value + (isNum(f.box_margin_right.value) ? f.box_margin_right_measurement.value : ""); + ce.style.marginBottom = f.box_margin_bottom.value + (isNum(f.box_margin_bottom.value) ? f.box_margin_bottom_measurement.value : ""); + ce.style.marginLeft = f.box_margin_left.value + (isNum(f.box_margin_left.value) ? f.box_margin_left_measurement.value : ""); + } else + ce.style.margin = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : ""); + + // Build border styles + + if (!f.border_style_same.checked) { + ce.style.borderTopStyle = f.border_style_top.value; + ce.style.borderRightStyle = f.border_style_right.value; + ce.style.borderBottomStyle = f.border_style_bottom.value; + ce.style.borderLeftStyle = f.border_style_left.value; + } else + ce.style.borderStyle = f.border_style_top.value; + + if (!f.border_width_same.checked) { + ce.style.borderTopWidth = f.border_width_top.value + (isNum(f.border_width_top.value) ? f.border_width_top_measurement.value : ""); + ce.style.borderRightWidth = f.border_width_right.value + (isNum(f.border_width_right.value) ? f.border_width_right_measurement.value : ""); + ce.style.borderBottomWidth = f.border_width_bottom.value + (isNum(f.border_width_bottom.value) ? f.border_width_bottom_measurement.value : ""); + ce.style.borderLeftWidth = f.border_width_left.value + (isNum(f.border_width_left.value) ? f.border_width_left_measurement.value : ""); + } else + ce.style.borderWidth = f.border_width_top.value + (isNum(f.border_width_top.value) ? f.border_width_top_measurement.value : ""); + + if (!f.border_color_same.checked) { + ce.style.borderTopColor = f.border_color_top.value; + ce.style.borderRightColor = f.border_color_right.value; + ce.style.borderBottomColor = f.border_color_bottom.value; + ce.style.borderLeftColor = f.border_color_left.value; + } else + ce.style.borderColor = f.border_color_top.value; + + // Build list styles + + ce.style.listStyleType = f.list_type.value; + ce.style.listStylePosition = f.list_position.value; + ce.style.listStyleImage = f.list_bullet_image.value != "" ? "url(" + f.list_bullet_image.value + ")" : ""; + + // Build positioning styles + + ce.style.position = f.positioning_type.value; + ce.style.visibility = f.positioning_visibility.value; + + if (ce.style.width == "") + ce.style.width = f.positioning_width.value + (isNum(f.positioning_width.value) ? f.positioning_width_measurement.value : ""); + + if (ce.style.height == "") + ce.style.height = f.positioning_height.value + (isNum(f.positioning_height.value) ? f.positioning_height_measurement.value : ""); + + ce.style.zIndex = f.positioning_zindex.value; + ce.style.overflow = f.positioning_overflow.value; + + if (!f.positioning_placement_same.checked) { + ce.style.top = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : ""); + ce.style.right = f.positioning_placement_right.value + (isNum(f.positioning_placement_right.value) ? f.positioning_placement_right_measurement.value : ""); + ce.style.bottom = f.positioning_placement_bottom.value + (isNum(f.positioning_placement_bottom.value) ? f.positioning_placement_bottom_measurement.value : ""); + ce.style.left = f.positioning_placement_left.value + (isNum(f.positioning_placement_left.value) ? f.positioning_placement_left_measurement.value : ""); + } else { + s = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : ""); + ce.style.top = s; + ce.style.right = s; + ce.style.bottom = s; + ce.style.left = s; + } + + if (!f.positioning_clip_same.checked) { + s = "rect("; + s += (isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : "auto") + " "; + s += (isNum(f.positioning_clip_right.value) ? f.positioning_clip_right.value + f.positioning_clip_right_measurement.value : "auto") + " "; + s += (isNum(f.positioning_clip_bottom.value) ? f.positioning_clip_bottom.value + f.positioning_clip_bottom_measurement.value : "auto") + " "; + s += (isNum(f.positioning_clip_left.value) ? f.positioning_clip_left.value + f.positioning_clip_left_measurement.value : "auto"); + s += ")"; + + if (s != "rect(auto auto auto auto)") + ce.style.clip = s; + } else { + s = "rect("; + t = isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : "auto"; + s += t + " "; + s += t + " "; + s += t + " "; + s += t + ")"; + + if (s != "rect(auto auto auto auto)") + ce.style.clip = s; + } + + ce.style.cssText = ce.style.cssText; +} + +function isNum(s) { + return new RegExp('[0-9]+', 'g').test(s); +} + +function showDisabledControls() { + var f = document.forms, i, a; + + for (i=0; i 1) { + addSelectValue(f, s, p[0], p[1]); + + if (se) + selectByValue(f, s, p[1]); + } else { + addSelectValue(f, s, p[0], p[0]); + + if (se) + selectByValue(f, s, p[0]); + } + } +} + +function toggleSame(ce, pre) { + var el = document.forms[0].elements, i; + + if (ce.checked) { + el[pre + "_top"].disabled = false; + el[pre + "_right"].disabled = true; + el[pre + "_bottom"].disabled = true; + el[pre + "_left"].disabled = true; + + if (el[pre + "_top_measurement"]) { + el[pre + "_top_measurement"].disabled = false; + el[pre + "_right_measurement"].disabled = true; + el[pre + "_bottom_measurement"].disabled = true; + el[pre + "_left_measurement"].disabled = true; + } + } else { + el[pre + "_top"].disabled = false; + el[pre + "_right"].disabled = false; + el[pre + "_bottom"].disabled = false; + el[pre + "_left"].disabled = false; + + if (el[pre + "_top_measurement"]) { + el[pre + "_top_measurement"].disabled = false; + el[pre + "_right_measurement"].disabled = false; + el[pre + "_bottom_measurement"].disabled = false; + el[pre + "_left_measurement"].disabled = false; + } + } + + showDisabledControls(); +} + +function synch(fr, to) { + var f = document.forms[0]; + + f.elements[to].value = f.elements[fr].value; + + if (f.elements[fr + "_measurement"]) + selectByValue(f, to + "_measurement", f.elements[fr + "_measurement"].value); +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/all-wcprops new file mode 100644 index 0000000..cb50371 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js +END +fr_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/langs/fr_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/entries new file mode 100644 index 0000000..5830bbc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/style/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:46.365615Z +1e069c2c7583b278b3cab074d1ff07d9 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1531 + +fr_dlg.js +file + + + + +2010-06-04T12:51:46.365615Z +f9240e37064b4f024f9065b768139f65 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1672 + +de_dlg.js +file + + + + +2010-06-04T12:51:46.365615Z +0d5e8cb9608c3e2fc22fa3350ffeee55 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1774 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..57a62ff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,63 @@ +tinyMCE.addI18n('de.style_dlg',{ +title:"CSS-Styles bearbeiten", +apply:"\u00DCbernehmen", +text_tab:"Text", +background_tab:"Hintergrund", +block_tab:"Block", +box_tab:"Box", +border_tab:"Rahmen", +list_tab:"Liste", +positioning_tab:"Positionierung", +text_props:"Text", +text_font:"Schriftart", +text_size:"Gr\u00F6\u00DFe", +text_weight:"Dicke", +text_style:"Stil", +text_variant:"Variante", +text_lineheight:"Zeilenh\u00F6he", +text_case:"Schreibung", +text_color:"Farbe", +text_decoration:"Gestaltung", +text_overline:"\u00FCberstrichen", +text_underline:"unterstrichen", +text_striketrough:"durchgestrichen", +text_blink:"blinkend", +text_none:"keine", +background_color:"Hintergrundfarbe", +background_image:"Hintergrundbild", +background_repeat:"Wiederholung", +background_attachment:"Wasserzeicheneffekt", +background_hpos:"Position X", +background_vpos:"Position Y", +block_wordspacing:"Wortabstand", +block_letterspacing:"Buchstabenabstand", +block_vertical_alignment:"Vertikale Ausrichtung", +block_text_align:"Ausrichtung", +block_text_indent:"Einr\u00FCckung", +block_whitespace:"Automatischer Umbruch", +block_display:"Umbruchverhalten", +box_width:"Breite", +box_height:"H\u00F6he", +box_float:"Umflie\u00DFung", +box_clear:"Umflie\u00DFung verhindern", +padding:"Innerer Abstand", +same:"Alle gleich", +top:"Oben", +right:"Rechts", +bottom:"Unten", +left:"Links", +margin:"\u00C4u\u00DFerer Abstand", +style:"Format", +width:"Breite", +height:"H\u00F6he", +color:"Textfarbe", +list_type:"Listenpunkt-Art", +bullet_image:"Listenpunkt-Grafik", +position:"Positionierung", +positioning_type:"Art der Positionierung", +visibility:"Sichtbar", +zindex:"Z-Wert", +overflow:"Verhalten bei \u00DCbergr\u00F6\u00DFe", +placement:"Platzierung", +clip:"Ausschnitt" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..5026313 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,63 @@ +tinyMCE.addI18n('en.style_dlg',{ +title:"Edit CSS Style", +apply:"Apply", +text_tab:"Text", +background_tab:"Background", +block_tab:"Block", +box_tab:"Box", +border_tab:"Border", +list_tab:"List", +positioning_tab:"Positioning", +text_props:"Text", +text_font:"Font", +text_size:"Size", +text_weight:"Weight", +text_style:"Style", +text_variant:"Variant", +text_lineheight:"Line height", +text_case:"Case", +text_color:"Color", +text_decoration:"Decoration", +text_overline:"overline", +text_underline:"underline", +text_striketrough:"strikethrough", +text_blink:"blink", +text_none:"none", +background_color:"Background color", +background_image:"Background image", +background_repeat:"Repeat", +background_attachment:"Attachment", +background_hpos:"Horizontal position", +background_vpos:"Vertical position", +block_wordspacing:"Word spacing", +block_letterspacing:"Letter spacing", +block_vertical_alignment:"Vertical alignment", +block_text_align:"Text align", +block_text_indent:"Text indent", +block_whitespace:"Whitespace", +block_display:"Display", +box_width:"Width", +box_height:"Height", +box_float:"Float", +box_clear:"Clear", +padding:"Padding", +same:"Same for all", +top:"Top", +right:"Right", +bottom:"Bottom", +left:"Left", +margin:"Margin", +style:"Style", +width:"Width", +height:"Height", +color:"Color", +list_type:"Type", +bullet_image:"Bullet image", +position:"Position", +positioning_type:"Type", +visibility:"Visibility", +zindex:"Z-index", +overflow:"Overflow", +placement:"Placement", +clip:"Clip" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/fr_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/fr_dlg.js.svn-base new file mode 100644 index 0000000..28897f8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/.svn/text-base/fr_dlg.js.svn-base @@ -0,0 +1,63 @@ +tinyMCE.addI18n('fr.style_dlg',{ +title:"\u00C9diter la feuille de style", +apply:"Appliquer", +text_tab:"Texte", +background_tab:"Fond", +block_tab:"Bloc", +box_tab:"Bo\u00EEte", +border_tab:"Bordure", +list_tab:"Liste", +positioning_tab:"Positionnement", +text_props:"Texte", +text_font:"Police", +text_size:"Taille", +text_weight:"Gras", +text_style:"Style", +text_variant:"Variante", +text_lineheight:"Hauteur de ligne", +text_case:"Casse", +text_color:"Couleur", +text_decoration:"D\u00E9coration", +text_overline:"ligne au-dessus", +text_underline:"soulign\u00E9", +text_striketrough:"barr\u00E9", +text_blink:"clignotant", +text_none:"aucun", +background_color:"Couleur de fond", +background_image:"Image de fond", +background_repeat:"R\u00E9p\u00E9ter", +background_attachment:"Attachement", +background_hpos:"Position horizontale", +background_vpos:"Position verticale", +block_wordspacing:"Espacement des mots ", +block_letterspacing:"Espacement des lettres", +block_vertical_alignment:"Alignement vertical", +block_text_align:"Alignement du texte", +block_text_indent:"Indentation du texte", +block_whitespace:"Fin de ligne", +block_display:"Affichage", +box_width:"Largeur", +box_height:"Hauteur", +box_float:"Flottant", +box_clear:"Vider", +padding:"Espacement", +same:"Identique pour tous", +top:"Haut", +right:"Droit", +bottom:"Bas", +left:"Gauche", +margin:"Marge", +style:"Style", +width:"Largeur", +height:"Hauteur", +color:"Couleur", +list_type:"Type", +bullet_image:"Image de puce", +position:"Position", +positioning_type:"Type", +visibility:"Visibilit\u00E9", +zindex:"Z-index", +overflow:"D\u00E9bordement", +placement:"Placement", +clip:"Clip" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/de_dlg.js new file mode 100644 index 0000000..57a62ff --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/de_dlg.js @@ -0,0 +1,63 @@ +tinyMCE.addI18n('de.style_dlg',{ +title:"CSS-Styles bearbeiten", +apply:"\u00DCbernehmen", +text_tab:"Text", +background_tab:"Hintergrund", +block_tab:"Block", +box_tab:"Box", +border_tab:"Rahmen", +list_tab:"Liste", +positioning_tab:"Positionierung", +text_props:"Text", +text_font:"Schriftart", +text_size:"Gr\u00F6\u00DFe", +text_weight:"Dicke", +text_style:"Stil", +text_variant:"Variante", +text_lineheight:"Zeilenh\u00F6he", +text_case:"Schreibung", +text_color:"Farbe", +text_decoration:"Gestaltung", +text_overline:"\u00FCberstrichen", +text_underline:"unterstrichen", +text_striketrough:"durchgestrichen", +text_blink:"blinkend", +text_none:"keine", +background_color:"Hintergrundfarbe", +background_image:"Hintergrundbild", +background_repeat:"Wiederholung", +background_attachment:"Wasserzeicheneffekt", +background_hpos:"Position X", +background_vpos:"Position Y", +block_wordspacing:"Wortabstand", +block_letterspacing:"Buchstabenabstand", +block_vertical_alignment:"Vertikale Ausrichtung", +block_text_align:"Ausrichtung", +block_text_indent:"Einr\u00FCckung", +block_whitespace:"Automatischer Umbruch", +block_display:"Umbruchverhalten", +box_width:"Breite", +box_height:"H\u00F6he", +box_float:"Umflie\u00DFung", +box_clear:"Umflie\u00DFung verhindern", +padding:"Innerer Abstand", +same:"Alle gleich", +top:"Oben", +right:"Rechts", +bottom:"Unten", +left:"Links", +margin:"\u00C4u\u00DFerer Abstand", +style:"Format", +width:"Breite", +height:"H\u00F6he", +color:"Textfarbe", +list_type:"Listenpunkt-Art", +bullet_image:"Listenpunkt-Grafik", +position:"Positionierung", +positioning_type:"Art der Positionierung", +visibility:"Sichtbar", +zindex:"Z-Wert", +overflow:"Verhalten bei \u00DCbergr\u00F6\u00DFe", +placement:"Platzierung", +clip:"Ausschnitt" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js new file mode 100644 index 0000000..5026313 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js @@ -0,0 +1,63 @@ +tinyMCE.addI18n('en.style_dlg',{ +title:"Edit CSS Style", +apply:"Apply", +text_tab:"Text", +background_tab:"Background", +block_tab:"Block", +box_tab:"Box", +border_tab:"Border", +list_tab:"List", +positioning_tab:"Positioning", +text_props:"Text", +text_font:"Font", +text_size:"Size", +text_weight:"Weight", +text_style:"Style", +text_variant:"Variant", +text_lineheight:"Line height", +text_case:"Case", +text_color:"Color", +text_decoration:"Decoration", +text_overline:"overline", +text_underline:"underline", +text_striketrough:"strikethrough", +text_blink:"blink", +text_none:"none", +background_color:"Background color", +background_image:"Background image", +background_repeat:"Repeat", +background_attachment:"Attachment", +background_hpos:"Horizontal position", +background_vpos:"Vertical position", +block_wordspacing:"Word spacing", +block_letterspacing:"Letter spacing", +block_vertical_alignment:"Vertical alignment", +block_text_align:"Text align", +block_text_indent:"Text indent", +block_whitespace:"Whitespace", +block_display:"Display", +box_width:"Width", +box_height:"Height", +box_float:"Float", +box_clear:"Clear", +padding:"Padding", +same:"Same for all", +top:"Top", +right:"Right", +bottom:"Bottom", +left:"Left", +margin:"Margin", +style:"Style", +width:"Width", +height:"Height", +color:"Color", +list_type:"Type", +bullet_image:"Bullet image", +position:"Position", +positioning_type:"Type", +visibility:"Visibility", +zindex:"Z-index", +overflow:"Overflow", +placement:"Placement", +clip:"Clip" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/fr_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/fr_dlg.js new file mode 100644 index 0000000..28897f8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/langs/fr_dlg.js @@ -0,0 +1,63 @@ +tinyMCE.addI18n('fr.style_dlg',{ +title:"\u00C9diter la feuille de style", +apply:"Appliquer", +text_tab:"Texte", +background_tab:"Fond", +block_tab:"Bloc", +box_tab:"Bo\u00EEte", +border_tab:"Bordure", +list_tab:"Liste", +positioning_tab:"Positionnement", +text_props:"Texte", +text_font:"Police", +text_size:"Taille", +text_weight:"Gras", +text_style:"Style", +text_variant:"Variante", +text_lineheight:"Hauteur de ligne", +text_case:"Casse", +text_color:"Couleur", +text_decoration:"D\u00E9coration", +text_overline:"ligne au-dessus", +text_underline:"soulign\u00E9", +text_striketrough:"barr\u00E9", +text_blink:"clignotant", +text_none:"aucun", +background_color:"Couleur de fond", +background_image:"Image de fond", +background_repeat:"R\u00E9p\u00E9ter", +background_attachment:"Attachement", +background_hpos:"Position horizontale", +background_vpos:"Position verticale", +block_wordspacing:"Espacement des mots ", +block_letterspacing:"Espacement des lettres", +block_vertical_alignment:"Alignement vertical", +block_text_align:"Alignement du texte", +block_text_indent:"Indentation du texte", +block_whitespace:"Fin de ligne", +block_display:"Affichage", +box_width:"Largeur", +box_height:"Hauteur", +box_float:"Flottant", +box_clear:"Vider", +padding:"Espacement", +same:"Identique pour tous", +top:"Haut", +right:"Droit", +bottom:"Bas", +left:"Gauche", +margin:"Marge", +style:"Style", +width:"Largeur", +height:"Hauteur", +color:"Couleur", +list_type:"Type", +bullet_image:"Image de puce", +position:"Position", +positioning_type:"Type", +visibility:"Visibilit\u00E9", +zindex:"Z-index", +overflow:"D\u00E9bordement", +placement:"Placement", +clip:"Clip" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/style/props.htm b/assets/tinymce/jscripts/tiny_mce/plugins/style/props.htm new file mode 100644 index 0000000..08e02f1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/style/props.htm @@ -0,0 +1,726 @@ + + + + {#style_dlg.title} + + + + + + + + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
 
+
+ +
+ + + +
+ + + + + + +
+ +  
+
+ +
+ + + + + +
 
+
{#style_dlg.text_decoration} + + + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
 
+
+ + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+ +
+ + + + + + + + + + + + + + +
+ + + + + + +
 
+
   
+ + + + + + +
 
+
   
+
+
+ {#style_dlg.padding} + + + + + + + + + + + + + + + + + + + + + + +
 
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+
+ +
+
+ {#style_dlg.margin} + + + + + + + + + + + + + + + + + + + + + + +
 
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+ + + + + + +
 
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  {#style_dlg.style} {#style_dlg.width} {#style_dlg.color}
      
{#style_dlg.top}   + + + + + + +
 
+
  + + + + + +
 
+
{#style_dlg.right}   + + + + + + +
 
+
  + + + + + +
 
+
{#style_dlg.bottom}   + + + + + + +
 
+
  + + + + + +
 
+
{#style_dlg.left}   + + + + + + +
 
+
  + + + + + +
 
+
+
+ +
+ + + + + + + + + + + + + + + +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
   
+ + + + + + +
 
+
   
+ + + + + + +
 
+
   
+ +
+
+ {#style_dlg.placement} + + + + + + + + + + + + + + + + + + + + + + +
 
{#style_dlg.top} + + + + + + +
 
+
{#style_dlg.right} + + + + + + +
 
+
{#style_dlg.bottom} + + + + + + +
 
+
{#style_dlg.left} + + + + + + +
 
+
+
+
+ +
+
+ {#style_dlg.clip} + + + + + + + + + + + + + + + + + + + + + + +
 
{#style_dlg.top} + + + + + + +
 
+
{#style_dlg.right} + + + + + + +
 
+
{#style_dlg.bottom} + + + + + + +
 
+
{#style_dlg.left} + + + + + + +
 
+
+
+
+
+
+
+ +
+
+ + +
+ + +
+
+ +
+
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/all-wcprops new file mode 100644 index 0000000..7378fe6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/tabfocus +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/entries new file mode 100644 index 0000000..ff33296 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/tabfocus +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.445199Z +15397ee0ab8280702de894ed2c8e9e40 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1417 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.445199Z +25383c65e70b10e8a759801b7ab9566e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2593 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..27d2440 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var c=tinymce.DOM,a=tinymce.dom.Event,d=tinymce.each,b=tinymce.explode;tinymce.create("tinymce.plugins.TabFocusPlugin",{init:function(f,g){function e(i,j){if(j.keyCode===9){return a.cancel(j)}}function h(l,p){var j,m,o,n,k;function q(i){o=c.getParent(l.id,"form");n=o.elements;if(o){d(n,function(s,r){if(s.id==l.id){j=r;return false}});if(i>0){for(m=j+1;m=0;m--){if(n[m].type!="hidden"){return n[m]}}}}return null}if(p.keyCode===9){k=b(l.getParam("tab_focus",l.getParam("tabfocus_elements",":prev,:next")));if(k.length==1){k[1]=k[0];k[0]=":prev"}if(p.shiftKey){if(k[0]==":prev"){n=q(-1)}else{n=c.get(k[0])}}else{if(k[1]==":next"){n=q(1)}else{n=c.get(k[1])}}if(n){if(l=tinymce.get(n.id||n.name)){l.focus()}else{window.setTimeout(function(){window.focus();n.focus()},10)}return a.cancel(p)}}}f.onKeyUp.add(e);if(tinymce.isGecko){f.onKeyPress.add(h);f.onKeyDown.add(e)}else{f.onKeyDown.add(h)}f.onInit.add(function(){d(c.select("a:first,a:last",f.getContainer()),function(i){a.add(i,"focus",function(){f.focus()})})})},getInfo:function(){return{longname:"Tabfocus",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("tabfocus",tinymce.plugins.TabFocusPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..c2be2f4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,112 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, explode = tinymce.explode; + + tinymce.create('tinymce.plugins.TabFocusPlugin', { + init : function(ed, url) { + function tabCancel(ed, e) { + if (e.keyCode === 9) + return Event.cancel(e); + }; + + function tabHandler(ed, e) { + var x, i, f, el, v; + + function find(d) { + f = DOM.getParent(ed.id, 'form'); + el = f.elements; + + if (f) { + each(el, function(e, i) { + if (e.id == ed.id) { + x = i; + return false; + } + }); + + if (d > 0) { + for (i = x + 1; i < el.length; i++) { + if (el[i].type != 'hidden') + return el[i]; + } + } else { + for (i = x - 1; i >= 0; i--) { + if (el[i].type != 'hidden') + return el[i]; + } + } + } + + return null; + }; + + if (e.keyCode === 9) { + v = explode(ed.getParam('tab_focus', ed.getParam('tabfocus_elements', ':prev,:next'))); + + if (v.length == 1) { + v[1] = v[0]; + v[0] = ':prev'; + } + + // Find element to focus + if (e.shiftKey) { + if (v[0] == ':prev') + el = find(-1); + else + el = DOM.get(v[0]); + } else { + if (v[1] == ':next') + el = find(1); + else + el = DOM.get(v[1]); + } + + if (el) { + if (ed = tinymce.get(el.id || el.name)) + ed.focus(); + else + window.setTimeout(function() {window.focus();el.focus();}, 10); + + return Event.cancel(e); + } + } + }; + + ed.onKeyUp.add(tabCancel); + + if (tinymce.isGecko) { + ed.onKeyPress.add(tabHandler); + ed.onKeyDown.add(tabCancel); + } else + ed.onKeyDown.add(tabHandler); + + ed.onInit.add(function() { + each(DOM.select('a:first,a:last', ed.getContainer()), function(n) { + Event.add(n, 'focus', function() {ed.focus();}); + }); + }); + }, + + getInfo : function() { + return { + longname : 'Tabfocus', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('tabfocus', tinymce.plugins.TabFocusPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js new file mode 100644 index 0000000..27d2440 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js @@ -0,0 +1 @@ +(function(){var c=tinymce.DOM,a=tinymce.dom.Event,d=tinymce.each,b=tinymce.explode;tinymce.create("tinymce.plugins.TabFocusPlugin",{init:function(f,g){function e(i,j){if(j.keyCode===9){return a.cancel(j)}}function h(l,p){var j,m,o,n,k;function q(i){o=c.getParent(l.id,"form");n=o.elements;if(o){d(n,function(s,r){if(s.id==l.id){j=r;return false}});if(i>0){for(m=j+1;m=0;m--){if(n[m].type!="hidden"){return n[m]}}}}return null}if(p.keyCode===9){k=b(l.getParam("tab_focus",l.getParam("tabfocus_elements",":prev,:next")));if(k.length==1){k[1]=k[0];k[0]=":prev"}if(p.shiftKey){if(k[0]==":prev"){n=q(-1)}else{n=c.get(k[0])}}else{if(k[1]==":next"){n=q(1)}else{n=c.get(k[1])}}if(n){if(l=tinymce.get(n.id||n.name)){l.focus()}else{window.setTimeout(function(){window.focus();n.focus()},10)}return a.cancel(p)}}}f.onKeyUp.add(e);if(tinymce.isGecko){f.onKeyPress.add(h);f.onKeyDown.add(e)}else{f.onKeyDown.add(h)}f.onInit.add(function(){d(c.select("a:first,a:last",f.getContainer()),function(i){a.add(i,"focus",function(){f.focus()})})})},getInfo:function(){return{longname:"Tabfocus",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("tabfocus",tinymce.plugins.TabFocusPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js new file mode 100644 index 0000000..c2be2f4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js @@ -0,0 +1,112 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + var DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, explode = tinymce.explode; + + tinymce.create('tinymce.plugins.TabFocusPlugin', { + init : function(ed, url) { + function tabCancel(ed, e) { + if (e.keyCode === 9) + return Event.cancel(e); + }; + + function tabHandler(ed, e) { + var x, i, f, el, v; + + function find(d) { + f = DOM.getParent(ed.id, 'form'); + el = f.elements; + + if (f) { + each(el, function(e, i) { + if (e.id == ed.id) { + x = i; + return false; + } + }); + + if (d > 0) { + for (i = x + 1; i < el.length; i++) { + if (el[i].type != 'hidden') + return el[i]; + } + } else { + for (i = x - 1; i >= 0; i--) { + if (el[i].type != 'hidden') + return el[i]; + } + } + } + + return null; + }; + + if (e.keyCode === 9) { + v = explode(ed.getParam('tab_focus', ed.getParam('tabfocus_elements', ':prev,:next'))); + + if (v.length == 1) { + v[1] = v[0]; + v[0] = ':prev'; + } + + // Find element to focus + if (e.shiftKey) { + if (v[0] == ':prev') + el = find(-1); + else + el = DOM.get(v[0]); + } else { + if (v[1] == ':next') + el = find(1); + else + el = DOM.get(v[1]); + } + + if (el) { + if (ed = tinymce.get(el.id || el.name)) + ed.focus(); + else + window.setTimeout(function() {window.focus();el.focus();}, 10); + + return Event.cancel(e); + } + } + }; + + ed.onKeyUp.add(tabCancel); + + if (tinymce.isGecko) { + ed.onKeyPress.add(tabHandler); + ed.onKeyDown.add(tabCancel); + } else + ed.onKeyDown.add(tabHandler); + + ed.onInit.add(function() { + each(DOM.select('a:first,a:last', ed.getContainer()), function(n) { + Event.add(n, 'focus', function() {ed.focus();}); + }); + }); + }, + + getInfo : function() { + return { + longname : 'Tabfocus', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('tabfocus', tinymce.plugins.TabFocusPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/all-wcprops new file mode 100644 index 0000000..b28ff31 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/all-wcprops @@ -0,0 +1,41 @@ +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js +END +cell.htm +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/cell.htm +END +merge_cells.htm +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm +END +row.htm +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/row.htm +END +table.htm +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/table.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/entries new file mode 100644 index 0000000..ad63cd6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/entries @@ -0,0 +1,241 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.985635Z +25fd24b3aed51479d50968f490f15024 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +13418 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.988948Z +743b7257dff570e9709b7efebb2824ff +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +29067 + +cell.htm +file + + + + +2010-06-04T12:51:45.988948Z +0db1ac5138f19b8c9e1e6a3c65200574 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +6820 + +css +dir + +merge_cells.htm +file + + + + +2010-06-04T12:51:45.988948Z +aa4adb853b442af2bf6164276f23d5e0 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1355 + +js +dir + +row.htm +file + + + + +2010-06-04T12:51:45.988948Z +072be8a0ff2b4680c6d596383ad5af5b +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +5905 + +table.htm +file + + + + +2010-06-04T12:51:45.988948Z +84b70f7c6796fad9a1bd953901d8406c +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +8607 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/cell.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/cell.htm.svn-base new file mode 100644 index 0000000..d243e1d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/cell.htm.svn-base @@ -0,0 +1,178 @@ + + + + {#table_dlg.cell_title} + + + + + + + + +
+ + +
+
+
+ {#table_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ +
+
+
+ +
+
+ {#table_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + +
 
+
+ + + + + +
 
+
+ + + + + +
 
+
+
+
+
+ +
+
+ +
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..39f2c69 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(b){var c=b.each;function a(E,D,H){var e,I,A,n;r();n=D.getParent(H.getStart(),"th,td");if(n){I=C(n);A=F();n=v(I.x,I.y)}function r(){var J=0;e=[];c(["thead","tbody","tfoot"],function(K){var L=D.select(K+" tr",E);c(L,function(M,N){N+=J;c(D.select("td,th",M),function(T,O){var P,Q,R,S;if(e[N]){while(e[N][O]){O++}}R=g(T,"rowspan");S=g(T,"colspan");for(Q=N;Q'}return false}},"childNodes");J=J.cloneNode(false);J.rowSpan=J.colSpan=1;if(K){J.appendChild(K)}else{if(!b.isIE){J.innerHTML='
'}}return J}function p(){var J=D.createRng();c(D.select("tr",E),function(K){if(K.cells.length==0){D.remove(K)}});if(D.select("tr",E).length==0){J.setStartAfter(E);J.setEndAfter(E);H.setRng(J);D.remove(E);return}c(D.select("thead,tbody,tfoot",E),function(K){if(K.rows.length==0){D.remove(K)}});r();row=e[Math.min(e.length-1,I.y)];if(row){H.select(row[Math.min(row.length-1,I.x)].elm,true);H.collapse(true)}}function s(P,N,R,O){var M,K,J,L,Q;M=e[N][P].elm.parentNode;for(J=1;J<=R;J++){M=D.getNext(M,"tr");if(M){for(K=P;K>=0;K--){Q=e[N+J][K].elm;if(Q.parentNode==M){for(L=1;L<=O;L++){D.insertAfter(d(Q),Q)}break}}if(K==-1){for(L=1;L<=O;L++){M.insertBefore(d(M.cells[0]),M.cells[0])}}}}}function z(){c(e,function(J,K){c(J,function(M,L){var P,O,Q,N;if(h(M)){M=M.elm;P=g(M,"colspan");O=g(M,"rowspan");if(P>1||O>1){M.colSpan=M.rowSpan=1;for(N=0;N1){O.rowSpan=rowSpan+1;continue}}else{if(J>0&&e[J-1][N]){R=e[J-1][N].elm;rowSpan=g(R,"rowspan");if(rowSpan>1){R.rowSpan=rowSpan+1;continue}}}K=d(O);K.colSpan=O.colSpan;Q.appendChild(K);L=O}}if(Q.hasChildNodes()){if(!M){D.insertAfter(Q,P)}else{P.parentNode.insertBefore(Q,P)}}}function f(K){var L,J;c(e,function(M,N){c(M,function(P,O){if(h(P)){L=O;if(K){return false}}});if(K){return !L}});c(e,function(P,Q){var M=P[L].elm,N,O;if(M!=J){O=g(M,"colspan");N=g(M,"rowspan");if(O==1){if(!K){D.insertAfter(d(M),M);s(L,Q,N-1,O)}else{M.parentNode.insertBefore(d(M),M);s(L,Q,N-1,O)}}else{M.colSpan++}J=M}})}function m(){var J=[];c(e,function(K,L){c(K,function(N,M){if(h(N)&&b.inArray(J,M)===-1){c(e,function(Q){var O=Q[M].elm,P;P=g(O,"colspan");if(P>1){O.colSpan=P-1}else{D.remove(O)}});J.push(M)}})});p()}function l(){var K;function J(N){var M,O,L;M=D.getNext(N,"tr");c(N.cells,function(P){var Q=g(P,"rowspan");if(Q>1){P.rowSpan=Q-1;O=C(P);s(O.x,O.y,1,1)}});O=C(N.cells[0]);c(e[O.y],function(P){var Q;P=P.elm;if(P!=L){Q=g(P,"rowspan");if(Q<=1){D.remove(P)}else{P.rowSpan=Q-1}L=P}})}K=j();c(K.reverse(),function(L){J(L)});p()}function B(){var J=j();D.remove(J);p();return J}function G(){var J=j();c(J,function(L,K){J[K]=L.cloneNode(true)});return J}function w(L,K){var M=j(),J=M[K?0:M.length-1],N=J.cells.length;c(e,function(P){var O;N=0;c(P,function(R,Q){if(R.real){N+=R.colspan}if(R.elm.parentNode==J){O=1}});if(O){return false}});if(!K){L.reverse()}c(L,function(Q){var P=Q.cells.length,O;for(i=0;iK){K=O}if(N>J){J=N}if(P.real){R=P.colspan-1;Q=P.rowspan-1;if(R){if(O+R>K){K=O+R}}if(Q){if(N+Q>J){J=N+Q}}}}})});return{x:K,y:J}}function t(P){var M,L,R,Q,K,J,N,O;A=C(P);if(I&&A){M=Math.min(I.x,A.x);L=Math.min(I.y,A.y);R=Math.max(I.x,A.x);Q=Math.max(I.y,A.y);K=R;J=Q;for(y=L;y<=J;y++){P=e[y][M];if(!P.real){if(M-(P.colspan-1)K){K=x+N}}if(O){if(y+O>J){J=y+O}}}}}D.removeClass(D.select("td.mceSelected,th.mceSelected"),"mceSelected");for(y=L;y<=J;y++){for(x=M;x<=K;x++){D.addClass(e[y][x].elm,"mceSelected")}}}}b.extend(this,{deleteTable:q,split:z,merge:o,insertRow:k,insertCol:f,deleteCols:m,deleteRows:l,cutRows:B,copyRows:G,pasteRows:w,getPos:C,setStartCell:u,setEndCell:t})}b.create("tinymce.plugins.TablePlugin",{init:function(e,f){var d,j;function h(m){var l=e.selection,k=e.dom.getParent(m||l.getNode(),"table");if(k){return new a(k,e.dom,l)}}function g(){e.getBody().style.webkitUserSelect="";e.dom.removeClass(e.dom.select("td.mceSelected,th.mceSelected"),"mceSelected")}c([["table","table.desc","mceInsertTable",true],["delete_table","table.del","mceTableDelete"],["delete_col","table.delete_col_desc","mceTableDeleteCol"],["delete_row","table.delete_row_desc","mceTableDeleteRow"],["col_after","table.col_after_desc","mceTableInsertColAfter"],["col_before","table.col_before_desc","mceTableInsertColBefore"],["row_after","table.row_after_desc","mceTableInsertRowAfter"],["row_before","table.row_before_desc","mceTableInsertRowBefore"],["row_props","table.row_desc","mceTableRowProps",true],["cell_props","table.cell_desc","mceTableCellProps",true],["split_cells","table.split_cells_desc","mceTableSplitCells",true],["merge_cells","table.merge_cells_desc","mceTableMergeCells",true]],function(k){e.addButton(k[0],{title:k[1],cmd:k[2],ui:k[3]})});if(!b.isIE){e.onClick.add(function(k,l){l=l.target;if(l.nodeName==="TABLE"){k.selection.select(l)}})}e.onNodeChange.add(function(l,k,o){var m;o=l.selection.getStart();m=l.dom.getParent(o,"td,th,caption");k.setActive("table",o.nodeName==="TABLE"||!!m);if(m&&m.nodeName==="CAPTION"){m=0}k.setDisabled("delete_table",!m);k.setDisabled("delete_col",!m);k.setDisabled("delete_table",!m);k.setDisabled("delete_row",!m);k.setDisabled("col_after",!m);k.setDisabled("col_before",!m);k.setDisabled("row_after",!m);k.setDisabled("row_before",!m);k.setDisabled("row_props",!m);k.setDisabled("cell_props",!m);k.setDisabled("split_cells",!m);k.setDisabled("merge_cells",!m)});e.onInit.add(function(l){var k,o,p=l.dom,m;d=l.windowManager;l.onMouseDown.add(function(q,r){if(r.button!=2){g();o=p.getParent(r.target,"td,th");k=p.getParent(o,"table")}});p.bind(l.getDoc(),"mouseover",function(t){var r,q,s=t.target;if(o&&(m||s!=o)&&(s.nodeName=="TD"||s.nodeName=="TH")){q=p.getParent(s,"table");if(q==k){if(!m){m=h(q);m.setStartCell(o);l.getBody().style.webkitUserSelect="none"}m.setEndCell(s)}r=l.selection.getSel();if(r.removeAllRanges){r.removeAllRanges()}else{r.empty()}t.preventDefault()}});l.onMouseUp.add(function(z,A){var r,t=z.selection,B,C=t.getSel(),q,u,s,w;if(o){if(m){z.getBody().style.webkitUserSelect=""}function v(D,F){var E=new b.dom.TreeWalker(D,D);do{if(D.nodeType==3&&b.trim(D.nodeValue).length!=0){if(F){r.setStart(D,0)}else{r.setEnd(D,D.nodeValue.length)}return}if(D.nodeName=="BR"){if(F){r.setStartBefore(D)}else{r.setEndBefore(D)}return}}while(D=(F?E.next():E.prev()))}B=p.select("td.mceSelected,th.mceSelected");if(B.length>0){r=p.createRng();u=B[0];w=B[B.length-1];v(u,1);q=new b.dom.TreeWalker(u,p.getParent(B[0],"table"));do{if(u.nodeName=="TD"||u.nodeName=="TH"){if(!p.hasClass(u,"mceSelected")){break}s=u}}while(u=q.next());v(s);t.setRng(r)}z.nodeChanged();o=m=k=null}});l.onKeyUp.add(function(q,r){g()});if(l&&l.plugins.contextmenu){l.plugins.contextmenu.onContextMenu.add(function(s,q,u){var v,t=l.selection,r=t.getNode()||l.getBody();if(l.dom.getParent(u,"td")||l.dom.getParent(u,"th")){q.removeAll();if(r.nodeName=="A"&&!l.dom.getAttrib(r,"name")){q.add({title:"advanced.link_desc",icon:"link",cmd:l.plugins.advlink?"mceAdvLink":"mceLink",ui:true});q.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"});q.addSeparator()}if(r.nodeName=="IMG"&&r.className.indexOf("mceItem")==-1){q.add({title:"advanced.image_desc",icon:"image",cmd:l.plugins.advimage?"mceAdvImage":"mceImage",ui:true});q.addSeparator()}q.add({title:"table.desc",icon:"table",cmd:"mceInsertTable",value:{action:"insert"}});q.add({title:"table.props_desc",icon:"table_props",cmd:"mceInsertTable"});q.add({title:"table.del",icon:"delete_table",cmd:"mceTableDelete"});q.addSeparator();v=q.addMenu({title:"table.cell"});v.add({title:"table.cell_desc",icon:"cell_props",cmd:"mceTableCellProps"});v.add({title:"table.split_cells_desc",icon:"split_cells",cmd:"mceTableSplitCells"});v.add({title:"table.merge_cells_desc",icon:"merge_cells",cmd:"mceTableMergeCells"});v=q.addMenu({title:"table.row"});v.add({title:"table.row_desc",icon:"row_props",cmd:"mceTableRowProps"});v.add({title:"table.row_before_desc",icon:"row_before",cmd:"mceTableInsertRowBefore"});v.add({title:"table.row_after_desc",icon:"row_after",cmd:"mceTableInsertRowAfter"});v.add({title:"table.delete_row_desc",icon:"delete_row",cmd:"mceTableDeleteRow"});v.addSeparator();v.add({title:"table.cut_row_desc",icon:"cut",cmd:"mceTableCutRow"});v.add({title:"table.copy_row_desc",icon:"copy",cmd:"mceTableCopyRow"});v.add({title:"table.paste_row_before_desc",icon:"paste",cmd:"mceTablePasteRowBefore"}).setDisabled(!j);v.add({title:"table.paste_row_after_desc",icon:"paste",cmd:"mceTablePasteRowAfter"}).setDisabled(!j);v=q.addMenu({title:"table.col"});v.add({title:"table.col_before_desc",icon:"col_before",cmd:"mceTableInsertColBefore"});v.add({title:"table.col_after_desc",icon:"col_after",cmd:"mceTableInsertColAfter"});v.add({title:"table.delete_col_desc",icon:"delete_col",cmd:"mceTableDeleteCol"})}else{q.add({title:"table.desc",icon:"table",cmd:"mceInsertTable"})}})}if(!b.isIE){function n(){var q;for(q=l.getBody().lastChild;q&&q.nodeType==3&&!q.nodeValue.length;q=q.previousSibling){}if(q&&q.nodeName=="TABLE"){l.dom.add(l.getBody(),"p",null,'
')}}if(b.isGecko){l.onKeyDown.add(function(r,t){var q,s,u=r.dom;if(t.keyCode==37||t.keyCode==38){q=r.selection.getRng();s=u.getParent(q.startContainer,"table");if(s&&r.getBody().firstChild==s){if(isAtStart(q,s)){q=u.createRng();q.setStartBefore(s);q.setEndBefore(s);r.selection.setRng(q);t.preventDefault()}}}})}l.onKeyUp.add(n);l.onSetContent.add(n);l.onVisualAid.add(n);l.onPreProcess.add(function(q,s){var r=s.node.lastChild;if(r&&r.childNodes.length==1&&r.firstChild.nodeName=="BR"){q.dom.remove(r)}});n()}});c({mceTableSplitCells:function(k){k.split()},mceTableMergeCells:function(l){var m,n,k;k=e.dom.getParent(e.selection.getNode(),"th,td");if(k){m=k.rowSpan;n=k.colSpan}if(!e.dom.select("td.mceSelected,th.mceSelected").length){d.open({url:f+"/merge_cells.htm",width:240+parseInt(e.getLang("table.merge_cells_delta_width",0)),height:110+parseInt(e.getLang("table.merge_cells_delta_height",0)),inline:1},{rows:m,cols:n,onaction:function(o){l.merge(k,o.cols,o.rows)},plugin_url:f})}else{l.merge()}},mceTableInsertRowBefore:function(k){k.insertRow(true)},mceTableInsertRowAfter:function(k){k.insertRow()},mceTableInsertColBefore:function(k){k.insertCol(true)},mceTableInsertColAfter:function(k){k.insertCol()},mceTableDeleteCol:function(k){k.deleteCols()},mceTableDeleteRow:function(k){k.deleteRows()},mceTableCutRow:function(k){j=k.cutRows()},mceTableCopyRow:function(k){j=k.copyRows()},mceTablePasteRowBefore:function(k){k.pasteRows(j,true)},mceTablePasteRowAfter:function(k){k.pasteRows(j)},mceTableDelete:function(k){k.deleteTable()}},function(l,k){e.addCommand(k,function(){var m=h();if(m){l(m);e.execCommand("mceRepaint");g()}})});c({mceInsertTable:function(k){d.open({url:f+"/table.htm",width:400+parseInt(e.getLang("table.table_delta_width",0)),height:320+parseInt(e.getLang("table.table_delta_height",0)),inline:1},{plugin_url:f,action:k?k.action:0})},mceTableRowProps:function(){d.open({url:f+"/row.htm",width:400+parseInt(e.getLang("table.rowprops_delta_width",0)),height:295+parseInt(e.getLang("table.rowprops_delta_height",0)),inline:1},{plugin_url:f})},mceTableCellProps:function(){d.open({url:f+"/cell.htm",width:400+parseInt(e.getLang("table.cellprops_delta_width",0)),height:295+parseInt(e.getLang("table.cellprops_delta_height",0)),inline:1},{plugin_url:f})}},function(l,k){e.addCommand(k,function(m,n){l(n)})})}});b.PluginManager.add("table",b.plugins.TablePlugin)})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..2260f34 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,1118 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function(tinymce) { + var each = tinymce.each; + + /** + * Table Grid class. + */ + function TableGrid(table, dom, selection) { + var grid, startPos, endPos, selectedCell; + + buildGrid(); + selectedCell = dom.getParent(selection.getStart(), 'th,td'); + if (selectedCell) { + startPos = getPos(selectedCell); + endPos = findEndPos(); + selectedCell = getCell(startPos.x, startPos.y); + } + + function buildGrid() { + var startY = 0; + + grid = []; + + each(['thead', 'tbody', 'tfoot'], function(part) { + var rows = dom.select(part + ' tr', table); + + each(rows, function(tr, y) { + y += startY; + + each(dom.select('td,th', tr), function(td, x) { + var x2, y2, rowspan, colspan; + + // Skip over existing cells produced by rowspan + if (grid[y]) { + while (grid[y][x]) + x++; + } + + // Get col/rowspan from cell + rowspan = getSpanVal(td, 'rowspan'); + colspan = getSpanVal(td, 'colspan'); + + // Fill out rowspan/colspan right and down + for (y2 = y; y2 < y + rowspan; y2++) { + if (!grid[y2]) + grid[y2] = []; + + for (x2 = x; x2 < x + colspan; x2++) { + grid[y2][x2] = { + part : part, + real : y2 == y && x2 == x, + elm : td, + rowspan : rowspan, + colspan : colspan + }; + } + } + }); + }); + + startY += rows.length; + }); + }; + + function getCell(x, y) { + var row; + + row = grid[y]; + if (row) + return row[x]; + }; + + function getSpanVal(td, name) { + return parseInt(td.getAttribute(name) || 1); + }; + + function isCellSelected(cell) { + return dom.hasClass(cell.elm, 'mceSelected') || cell == selectedCell; + }; + + function getSelectedRows() { + var rows = []; + + each(table.rows, function(row) { + each(row.cells, function(cell) { + if (dom.hasClass(cell, 'mceSelected') || cell == selectedCell.elm) { + rows.push(row); + return false; + } + }); + }); + + return rows; + }; + + function deleteTable() { + var rng = dom.createRng(); + + rng.setStartAfter(table); + rng.setEndAfter(table); + + selection.setRng(rng); + + dom.remove(table); + }; + + function cloneCell(cell) { + var formatNode; + + // Clone formats + tinymce.walk(cell, function(node) { + var curNode; + + if (node.nodeType == 3) { + each(dom.getParents(node.parentNode, null, cell).reverse(), function(node) { + node = node.cloneNode(false); + + if (!formatNode) + formatNode = curNode = node; + else if (curNode) + curNode.appendChild(node); + + curNode = node; + }); + + // Add something to the inner node + if (curNode) + curNode.innerHTML = tinymce.isIE ? ' ' : '
'; + + return false; + } + }, 'childNodes'); + + cell = cell.cloneNode(false); + cell.rowSpan = cell.colSpan = 1; + + if (formatNode) { + cell.appendChild(formatNode); + } else { + if (!tinymce.isIE) + cell.innerHTML = '
'; + } + + return cell; + }; + + function cleanup() { + var rng = dom.createRng(); + + // Empty rows + each(dom.select('tr', table), function(tr) { + if (tr.cells.length == 0) + dom.remove(tr); + }); + + // Empty table + if (dom.select('tr', table).length == 0) { + rng.setStartAfter(table); + rng.setEndAfter(table); + selection.setRng(rng); + dom.remove(table); + return; + } + + // Empty header/body/footer + each(dom.select('thead,tbody,tfoot', table), function(part) { + if (part.rows.length == 0) + dom.remove(part); + }); + + // Restore selection to start position if it still exists + buildGrid(); + + // Restore the selection to the closest table position + row = grid[Math.min(grid.length - 1, startPos.y)]; + if (row) { + selection.select(row[Math.min(row.length - 1, startPos.x)].elm, true); + selection.collapse(true); + } + }; + + function fillLeftDown(x, y, rows, cols) { + var tr, x2, r, c, cell; + + tr = grid[y][x].elm.parentNode; + for (r = 1; r <= rows; r++) { + tr = dom.getNext(tr, 'tr'); + + if (tr) { + // Loop left to find real cell + for (x2 = x; x2 >= 0; x2--) { + cell = grid[y + r][x2].elm; + + if (cell.parentNode == tr) { + // Append clones after + for (c = 1; c <= cols; c++) + dom.insertAfter(cloneCell(cell), cell); + + break; + } + } + + if (x2 == -1) { + // Insert nodes before first cell + for (c = 1; c <= cols; c++) + tr.insertBefore(cloneCell(tr.cells[0]), tr.cells[0]); + } + } + } + }; + + function split() { + each(grid, function(row, y) { + each(row, function(cell, x) { + var colSpan, rowSpan, newCell, i; + + if (isCellSelected(cell)) { + cell = cell.elm; + colSpan = getSpanVal(cell, 'colspan'); + rowSpan = getSpanVal(cell, 'rowspan'); + + if (colSpan > 1 || rowSpan > 1) { + cell.colSpan = cell.rowSpan = 1; + + // Insert cells right + for (i = 0; i < colSpan - 1; i++) + dom.insertAfter(cloneCell(cell), cell); + + fillLeftDown(x, y, rowSpan - 1, colSpan); + } + } + }); + }); + }; + + function merge(cell, cols, rows) { + var startX, startY, endX, endY, x, y, startCell, endCell, cell, children; + + // Use specified cell and cols/rows + if (cell) { + pos = getPos(cell); + startX = pos.x; + startY = pos.y; + endX = startX + (cols - 1); + endY = startY + (rows - 1); + } else { + // Use selection + startX = startPos.x; + startY = startPos.y; + endX = endPos.x; + endY = endPos.y; + } + + // Find start/end cells + startCell = getCell(startX, startY); + endCell = getCell(endX, endY); + + // Check if the cells exists and if they are of the same part for example tbody = tbody + if (startCell && endCell && startCell.part == endCell.part) { + // Split and rebuild grid + split(); + buildGrid(); + + // Set row/col span to start cell + startCell = getCell(startX, startY).elm; + startCell.colSpan = (endX - startX) + 1; + startCell.rowSpan = (endY - startY) + 1; + + // Remove other cells and add it's contents to the start cell + for (y = startY; y <= endY; y++) { + for (x = startX; x <= endX; x++) { + cell = grid[y][x].elm; + + if (cell != startCell) { + // Move children to startCell + children = tinymce.grep(cell.childNodes); + each(children, function(node, i) { + // Jump over last BR element + if (node.nodeName != 'BR' || i != children.length - 1) + startCell.appendChild(node); + }); + + // Remove cell + dom.remove(cell); + } + } + } + + // Remove empty rows etc and restore caret location + cleanup(); + } + }; + + function insertRow(before) { + var posY, cell, lastCell, x, rowElm, newRow, newCell, otherCell; + + // Find first/last row + each(grid, function(row, y) { + each(row, function(cell, x) { + if (isCellSelected(cell)) { + cell = cell.elm; + rowElm = cell.parentNode; + newRow = rowElm.cloneNode(false); + posY = y; + + if (before) + return false; + } + }); + + if (before) + return !posY; + }); + + for (x = 0; x < grid[0].length; x++) { + cell = grid[posY][x].elm; + + if (cell != lastCell) { + if (!before) { + rowSpan = getSpanVal(cell, 'rowspan'); + if (rowSpan > 1) { + cell.rowSpan = rowSpan + 1; + continue; + } + } else { + // Check if cell above can be expanded + if (posY > 0 && grid[posY - 1][x]) { + otherCell = grid[posY - 1][x].elm; + rowSpan = getSpanVal(otherCell, 'rowspan'); + if (rowSpan > 1) { + otherCell.rowSpan = rowSpan + 1; + continue; + } + } + } + + // Insert new cell into new row + newCell = cloneCell(cell) + newCell.colSpan = cell.colSpan; + newRow.appendChild(newCell); + + lastCell = cell; + } + } + + if (newRow.hasChildNodes()) { + if (!before) + dom.insertAfter(newRow, rowElm); + else + rowElm.parentNode.insertBefore(newRow, rowElm); + } + }; + + function insertCol(before) { + var posX, lastCell; + + // Find first/last column + each(grid, function(row, y) { + each(row, function(cell, x) { + if (isCellSelected(cell)) { + posX = x; + + if (before) + return false; + } + }); + + if (before) + return !posX; + }); + + each(grid, function(row, y) { + var cell = row[posX].elm, rowSpan, colSpan; + + if (cell != lastCell) { + colSpan = getSpanVal(cell, 'colspan'); + rowSpan = getSpanVal(cell, 'rowspan'); + + if (colSpan == 1) { + if (!before) { + dom.insertAfter(cloneCell(cell), cell); + fillLeftDown(posX, y, rowSpan - 1, colSpan); + } else { + cell.parentNode.insertBefore(cloneCell(cell), cell); + fillLeftDown(posX, y, rowSpan - 1, colSpan); + } + } else + cell.colSpan++; + + lastCell = cell; + } + }); + }; + + function deleteCols() { + var cols = []; + + // Get selected column indexes + each(grid, function(row, y) { + each(row, function(cell, x) { + if (isCellSelected(cell) && tinymce.inArray(cols, x) === -1) { + each(grid, function(row) { + var cell = row[x].elm, colSpan; + + colSpan = getSpanVal(cell, 'colspan'); + + if (colSpan > 1) + cell.colSpan = colSpan - 1; + else + dom.remove(cell); + }); + + cols.push(x); + } + }); + }); + + cleanup(); + }; + + function deleteRows() { + var rows; + + function deleteRow(tr) { + var nextTr, pos, lastCell; + + nextTr = dom.getNext(tr, 'tr'); + + // Move down row spanned cells + each(tr.cells, function(cell) { + var rowSpan = getSpanVal(cell, 'rowspan'); + + if (rowSpan > 1) { + cell.rowSpan = rowSpan - 1; + pos = getPos(cell); + fillLeftDown(pos.x, pos.y, 1, 1); + } + }); + + // Delete cells + pos = getPos(tr.cells[0]); + each(grid[pos.y], function(cell) { + var rowSpan; + + cell = cell.elm; + + if (cell != lastCell) { + rowSpan = getSpanVal(cell, 'rowspan'); + + if (rowSpan <= 1) + dom.remove(cell); + else + cell.rowSpan = rowSpan - 1; + + lastCell = cell; + } + }); + }; + + // Get selected rows and move selection out of scope + rows = getSelectedRows(); + + // Delete all selected rows + each(rows.reverse(), function(tr) { + deleteRow(tr); + }); + + cleanup(); + }; + + function cutRows() { + var rows = getSelectedRows(); + + dom.remove(rows); + cleanup(); + + return rows; + }; + + function copyRows() { + var rows = getSelectedRows(); + + each(rows, function(row, i) { + rows[i] = row.cloneNode(true); + }); + + return rows; + }; + + function pasteRows(rows, before) { + var selectedRows = getSelectedRows(), + targetRow = selectedRows[before ? 0 : selectedRows.length - 1], + targetCellCount = targetRow.cells.length; + + // Calc target cell count + each(grid, function(row) { + var match; + + targetCellCount = 0; + each(row, function(cell, x) { + if (cell.real) + targetCellCount += cell.colspan; + + if (cell.elm.parentNode == targetRow) + match = 1; + }); + + if (match) + return false; + }); + + if (!before) + rows.reverse(); + + each(rows, function(row) { + var cellCount = row.cells.length, cell; + + // Remove col/rowspans + for (i = 0; i < cellCount; i++) { + cell = row.cells[i]; + cell.colSpan = cell.rowSpan = 1; + } + + // Needs more cells + for (i = cellCount; i < targetCellCount; i++) + row.appendChild(cloneCell(row.cells[cellCount - 1])); + + // Needs less cells + for (i = targetCellCount; i < cellCount; i++) + dom.remove(row.cells[i]); + + // Add before/after + if (before) + targetRow.parentNode.insertBefore(row, targetRow); + else + dom.insertAfter(row, targetRow); + }); + }; + + function getPos(target) { + var pos; + + each(grid, function(row, y) { + each(row, function(cell, x) { + if (cell.elm == target) { + pos = {x : x, y : y}; + return false; + } + }); + + return !pos; + }); + + return pos; + }; + + function setStartCell(cell) { + startPos = getPos(cell); + }; + + function findEndPos() { + var pos, maxX, maxY; + + maxX = maxY = 0; + + each(grid, function(row, y) { + each(row, function(cell, x) { + var colSpan, rowSpan; + + if (isCellSelected(cell)) { + cell = grid[y][x]; + + if (x > maxX) + maxX = x; + + if (y > maxY) + maxY = y; + + if (cell.real) { + colSpan = cell.colspan - 1; + rowSpan = cell.rowspan - 1; + + if (colSpan) { + if (x + colSpan > maxX) + maxX = x + colSpan; + } + + if (rowSpan) { + if (y + rowSpan > maxY) + maxY = y + rowSpan; + } + } + } + }); + }); + + return {x : maxX, y : maxY}; + }; + + function setEndCell(cell) { + var startX, startY, endX, endY, maxX, maxY, colSpan, rowSpan; + + endPos = getPos(cell); + + if (startPos && endPos) { + // Get start/end positions + startX = Math.min(startPos.x, endPos.x); + startY = Math.min(startPos.y, endPos.y); + endX = Math.max(startPos.x, endPos.x); + endY = Math.max(startPos.y, endPos.y); + + // Expand end positon to include spans + maxX = endX; + maxY = endY; + + // Expand startX + for (y = startY; y <= maxY; y++) { + cell = grid[y][startX]; + + if (!cell.real) { + if (startX - (cell.colspan - 1) < startX) + startX -= cell.colspan - 1; + } + } + + // Expand startY + for (x = startX; x <= maxX; x++) { + cell = grid[startY][x]; + + if (!cell.real) { + if (startY - (cell.rowspan - 1) < startY) + startY -= cell.rowspan - 1; + } + } + + // Find max X, Y + for (y = startY; y <= endY; y++) { + for (x = startX; x <= endX; x++) { + cell = grid[y][x]; + + if (cell.real) { + colSpan = cell.colspan - 1; + rowSpan = cell.rowspan - 1; + + if (colSpan) { + if (x + colSpan > maxX) + maxX = x + colSpan; + } + + if (rowSpan) { + if (y + rowSpan > maxY) + maxY = y + rowSpan; + } + } + } + } + + // Remove current selection + dom.removeClass(dom.select('td.mceSelected,th.mceSelected'), 'mceSelected'); + + // Add new selection + for (y = startY; y <= maxY; y++) { + for (x = startX; x <= maxX; x++) + dom.addClass(grid[y][x].elm, 'mceSelected'); + } + } + }; + + // Expose to public + tinymce.extend(this, { + deleteTable : deleteTable, + split : split, + merge : merge, + insertRow : insertRow, + insertCol : insertCol, + deleteCols : deleteCols, + deleteRows : deleteRows, + cutRows : cutRows, + copyRows : copyRows, + pasteRows : pasteRows, + getPos : getPos, + setStartCell : setStartCell, + setEndCell : setEndCell + }); + }; + + tinymce.create('tinymce.plugins.TablePlugin', { + init : function(ed, url) { + var winMan, clipboardRows; + + function createTableGrid(node) { + var selection = ed.selection, tblElm = ed.dom.getParent(node || selection.getNode(), 'table'); + + if (tblElm) + return new TableGrid(tblElm, ed.dom, selection); + }; + + function cleanup() { + // Restore selection possibilities + ed.getBody().style.webkitUserSelect = ''; + ed.dom.removeClass(ed.dom.select('td.mceSelected,th.mceSelected'), 'mceSelected'); + }; + + // Register buttons + each([ + ['table', 'table.desc', 'mceInsertTable', true], + ['delete_table', 'table.del', 'mceTableDelete'], + ['delete_col', 'table.delete_col_desc', 'mceTableDeleteCol'], + ['delete_row', 'table.delete_row_desc', 'mceTableDeleteRow'], + ['col_after', 'table.col_after_desc', 'mceTableInsertColAfter'], + ['col_before', 'table.col_before_desc', 'mceTableInsertColBefore'], + ['row_after', 'table.row_after_desc', 'mceTableInsertRowAfter'], + ['row_before', 'table.row_before_desc', 'mceTableInsertRowBefore'], + ['row_props', 'table.row_desc', 'mceTableRowProps', true], + ['cell_props', 'table.cell_desc', 'mceTableCellProps', true], + ['split_cells', 'table.split_cells_desc', 'mceTableSplitCells', true], + ['merge_cells', 'table.merge_cells_desc', 'mceTableMergeCells', true] + ], function(c) { + ed.addButton(c[0], {title : c[1], cmd : c[2], ui : c[3]}); + }); + + // Select whole table is a table border is clicked + if (!tinymce.isIE) { + ed.onClick.add(function(ed, e) { + e = e.target; + + if (e.nodeName === 'TABLE') + ed.selection.select(e); + }); + } + + // Handle node change updates + ed.onNodeChange.add(function(ed, cm, n) { + var p; + + n = ed.selection.getStart(); + p = ed.dom.getParent(n, 'td,th,caption'); + cm.setActive('table', n.nodeName === 'TABLE' || !!p); + + // Disable table tools if we are in caption + if (p && p.nodeName === 'CAPTION') + p = 0; + + cm.setDisabled('delete_table', !p); + cm.setDisabled('delete_col', !p); + cm.setDisabled('delete_table', !p); + cm.setDisabled('delete_row', !p); + cm.setDisabled('col_after', !p); + cm.setDisabled('col_before', !p); + cm.setDisabled('row_after', !p); + cm.setDisabled('row_before', !p); + cm.setDisabled('row_props', !p); + cm.setDisabled('cell_props', !p); + cm.setDisabled('split_cells', !p); + cm.setDisabled('merge_cells', !p); + }); + + ed.onInit.add(function(ed) { + var startTable, startCell, dom = ed.dom, tableGrid; + + winMan = ed.windowManager; + + // Add cell selection logic + ed.onMouseDown.add(function(ed, e) { + if (e.button != 2) { + cleanup(); + + startCell = dom.getParent(e.target, 'td,th'); + startTable = dom.getParent(startCell, 'table'); + } + }); + + dom.bind(ed.getDoc(), 'mouseover', function(e) { + var sel, table, target = e.target; + + if (startCell && (tableGrid || target != startCell) && (target.nodeName == 'TD' || target.nodeName == 'TH')) { + table = dom.getParent(target, 'table'); + if (table == startTable) { + if (!tableGrid) { + tableGrid = createTableGrid(table); + tableGrid.setStartCell(startCell); + + ed.getBody().style.webkitUserSelect = 'none'; + } + + tableGrid.setEndCell(target); + } + + // Remove current selection + sel = ed.selection.getSel(); + + if (sel.removeAllRanges) + sel.removeAllRanges(); + else + sel.empty(); + + e.preventDefault(); + } + }); + + ed.onMouseUp.add(function(ed, e) { + var rng, sel = ed.selection, selectedCells, nativeSel = sel.getSel(), walker, node, lastNode, endNode; + + // Move selection to startCell + if (startCell) { + if (tableGrid) + ed.getBody().style.webkitUserSelect = ''; + + function setPoint(node, start) { + var walker = new tinymce.dom.TreeWalker(node, node); + + do { + // Text node + if (node.nodeType == 3 && tinymce.trim(node.nodeValue).length != 0) { + if (start) + rng.setStart(node, 0); + else + rng.setEnd(node, node.nodeValue.length); + + return; + } + + // BR element + if (node.nodeName == 'BR') { + if (start) + rng.setStartBefore(node); + else + rng.setEndBefore(node); + + return; + } + } while (node = (start ? walker.next() : walker.prev())); + }; + + // Try to expand text selection as much as we can only Gecko supports cell selection + selectedCells = dom.select('td.mceSelected,th.mceSelected'); + if (selectedCells.length > 0) { + rng = dom.createRng(); + node = selectedCells[0]; + endNode = selectedCells[selectedCells.length - 1]; + + setPoint(node, 1); + walker = new tinymce.dom.TreeWalker(node, dom.getParent(selectedCells[0], 'table')); + + do { + if (node.nodeName == 'TD' || node.nodeName == 'TH') { + if (!dom.hasClass(node, 'mceSelected')) + break; + + lastNode = node; + } + } while (node = walker.next()); + + setPoint(lastNode); + + sel.setRng(rng); + } + + ed.nodeChanged(); + startCell = tableGrid = startTable = null; + } + }); + + ed.onKeyUp.add(function(ed, e) { + cleanup(); + }); + + // Add context menu + if (ed && ed.plugins.contextmenu) { + ed.plugins.contextmenu.onContextMenu.add(function(th, m, e) { + var sm, se = ed.selection, el = se.getNode() || ed.getBody(); + + if (ed.dom.getParent(e, 'td') || ed.dom.getParent(e, 'th')) { + m.removeAll(); + + if (el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) { + m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true}); + m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'}); + m.addSeparator(); + } + + if (el.nodeName == 'IMG' && el.className.indexOf('mceItem') == -1) { + m.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true}); + m.addSeparator(); + } + + m.add({title : 'table.desc', icon : 'table', cmd : 'mceInsertTable', value : {action : 'insert'}}); + m.add({title : 'table.props_desc', icon : 'table_props', cmd : 'mceInsertTable'}); + m.add({title : 'table.del', icon : 'delete_table', cmd : 'mceTableDelete'}); + m.addSeparator(); + + // Cell menu + sm = m.addMenu({title : 'table.cell'}); + sm.add({title : 'table.cell_desc', icon : 'cell_props', cmd : 'mceTableCellProps'}); + sm.add({title : 'table.split_cells_desc', icon : 'split_cells', cmd : 'mceTableSplitCells'}); + sm.add({title : 'table.merge_cells_desc', icon : 'merge_cells', cmd : 'mceTableMergeCells'}); + + // Row menu + sm = m.addMenu({title : 'table.row'}); + sm.add({title : 'table.row_desc', icon : 'row_props', cmd : 'mceTableRowProps'}); + sm.add({title : 'table.row_before_desc', icon : 'row_before', cmd : 'mceTableInsertRowBefore'}); + sm.add({title : 'table.row_after_desc', icon : 'row_after', cmd : 'mceTableInsertRowAfter'}); + sm.add({title : 'table.delete_row_desc', icon : 'delete_row', cmd : 'mceTableDeleteRow'}); + sm.addSeparator(); + sm.add({title : 'table.cut_row_desc', icon : 'cut', cmd : 'mceTableCutRow'}); + sm.add({title : 'table.copy_row_desc', icon : 'copy', cmd : 'mceTableCopyRow'}); + sm.add({title : 'table.paste_row_before_desc', icon : 'paste', cmd : 'mceTablePasteRowBefore'}).setDisabled(!clipboardRows); + sm.add({title : 'table.paste_row_after_desc', icon : 'paste', cmd : 'mceTablePasteRowAfter'}).setDisabled(!clipboardRows); + + // Column menu + sm = m.addMenu({title : 'table.col'}); + sm.add({title : 'table.col_before_desc', icon : 'col_before', cmd : 'mceTableInsertColBefore'}); + sm.add({title : 'table.col_after_desc', icon : 'col_after', cmd : 'mceTableInsertColAfter'}); + sm.add({title : 'table.delete_col_desc', icon : 'delete_col', cmd : 'mceTableDeleteCol'}); + } else + m.add({title : 'table.desc', icon : 'table', cmd : 'mceInsertTable'}); + }); + } + + // Fixes an issue on Gecko where it's impossible to place the caret behind a table + // This fix will force a paragraph element after the table but only when the forced_root_block setting is enabled + if (!tinymce.isIE) { + function fixTableCaretPos() { + var last; + + // Skip empty text nodes form the end + for (last = ed.getBody().lastChild; last && last.nodeType == 3 && !last.nodeValue.length; last = last.previousSibling) ; + + if (last && last.nodeName == 'TABLE') + ed.dom.add(ed.getBody(), 'p', null, '
'); + }; + + // Fixes an bug where it's impossible to place the caret before a table in Gecko + // this fix solves it by detecting when the caret is at the beginning of such a table + // and then manually moves the caret infront of the table + if (tinymce.isGecko) { + ed.onKeyDown.add(function(ed, e) { + var rng, table, dom = ed.dom; + + // On gecko it's not possible to place the caret before a table + if (e.keyCode == 37 || e.keyCode == 38) { + rng = ed.selection.getRng(); + table = dom.getParent(rng.startContainer, 'table'); + + if (table && ed.getBody().firstChild == table) { + if (isAtStart(rng, table)) { + rng = dom.createRng(); + + rng.setStartBefore(table); + rng.setEndBefore(table); + + ed.selection.setRng(rng); + + e.preventDefault(); + } + } + } + }); + } + + ed.onKeyUp.add(fixTableCaretPos); + ed.onSetContent.add(fixTableCaretPos); + ed.onVisualAid.add(fixTableCaretPos); + + ed.onPreProcess.add(function(ed, o) { + var last = o.node.lastChild; + + if (last && last.childNodes.length == 1 && last.firstChild.nodeName == 'BR') + ed.dom.remove(last); + }); + + fixTableCaretPos(); + } + }); + + // Register action commands + each({ + mceTableSplitCells : function(grid) { + grid.split(); + }, + + mceTableMergeCells : function(grid) { + var rowSpan, colSpan, cell; + + cell = ed.dom.getParent(ed.selection.getNode(), 'th,td'); + if (cell) { + rowSpan = cell.rowSpan; + colSpan = cell.colSpan; + } + + if (!ed.dom.select('td.mceSelected,th.mceSelected').length) { + winMan.open({ + url : url + '/merge_cells.htm', + width : 240 + parseInt(ed.getLang('table.merge_cells_delta_width', 0)), + height : 110 + parseInt(ed.getLang('table.merge_cells_delta_height', 0)), + inline : 1 + }, { + rows : rowSpan, + cols : colSpan, + onaction : function(data) { + grid.merge(cell, data.cols, data.rows); + }, + plugin_url : url + }); + } else + grid.merge(); + }, + + mceTableInsertRowBefore : function(grid) { + grid.insertRow(true); + }, + + mceTableInsertRowAfter : function(grid) { + grid.insertRow(); + }, + + mceTableInsertColBefore : function(grid) { + grid.insertCol(true); + }, + + mceTableInsertColAfter : function(grid) { + grid.insertCol(); + }, + + mceTableDeleteCol : function(grid) { + grid.deleteCols(); + }, + + mceTableDeleteRow : function(grid) { + grid.deleteRows(); + }, + + mceTableCutRow : function(grid) { + clipboardRows = grid.cutRows(); + }, + + mceTableCopyRow : function(grid) { + clipboardRows = grid.copyRows(); + }, + + mceTablePasteRowBefore : function(grid) { + grid.pasteRows(clipboardRows, true); + }, + + mceTablePasteRowAfter : function(grid) { + grid.pasteRows(clipboardRows); + }, + + mceTableDelete : function(grid) { + grid.deleteTable(); + } + }, function(func, name) { + ed.addCommand(name, function() { + var grid = createTableGrid(); + + if (grid) { + func(grid); + ed.execCommand('mceRepaint'); + cleanup(); + } + }); + }); + + // Register dialog commands + each({ + mceInsertTable : function(val) { + winMan.open({ + url : url + '/table.htm', + width : 400 + parseInt(ed.getLang('table.table_delta_width', 0)), + height : 320 + parseInt(ed.getLang('table.table_delta_height', 0)), + inline : 1 + }, { + plugin_url : url, + action : val ? val.action : 0 + }); + }, + + mceTableRowProps : function() { + winMan.open({ + url : url + '/row.htm', + width : 400 + parseInt(ed.getLang('table.rowprops_delta_width', 0)), + height : 295 + parseInt(ed.getLang('table.rowprops_delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }, + + mceTableCellProps : function() { + winMan.open({ + url : url + '/cell.htm', + width : 400 + parseInt(ed.getLang('table.cellprops_delta_width', 0)), + height : 295 + parseInt(ed.getLang('table.cellprops_delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + } + }, function(func, name) { + ed.addCommand(name, function(ui, val) { + func(val); + }); + }); + } + }); + + // Register plugin + tinymce.PluginManager.add('table', tinymce.plugins.TablePlugin); +})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/merge_cells.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/merge_cells.htm.svn-base new file mode 100644 index 0000000..9736ed8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/merge_cells.htm.svn-base @@ -0,0 +1,32 @@ + + + + {#table_dlg.merge_cells_title} + + + + + + +
+
+ {#table_dlg.merge_cells_title} + + + + + + + + + +
{#table_dlg.cols}:
{#table_dlg.rows}:
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/row.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/row.htm.svn-base new file mode 100644 index 0000000..092e6c8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/row.htm.svn-base @@ -0,0 +1,155 @@ + + + + {#table_dlg.row_title} + + + + + + + + +
+ + +
+
+
+ {#table_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ +
+
+
+ +
+
+ {#table_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + +
 
+
+ + + + + +
 
+
+
+
+
+ +
+
+ +
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/table.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/table.htm.svn-base new file mode 100644 index 0000000..f269039 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/.svn/text-base/table.htm.svn-base @@ -0,0 +1,187 @@ + + + + {#table_dlg.title} + + + + + + + + + +
+ + +
+
+
+ {#table_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ +
+
+ {#table_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + +
 
+
+ +
+ +
+ +
+ + + + + +
 
+
+ + + + + +
 
+
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/cell.htm b/assets/tinymce/jscripts/tiny_mce/plugins/table/cell.htm new file mode 100644 index 0000000..d243e1d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/cell.htm @@ -0,0 +1,178 @@ + + + + {#table_dlg.cell_title} + + + + + + + + +
+ + +
+
+
+ {#table_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ +
+
+
+ +
+
+ {#table_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + +
 
+
+ + + + + +
 
+
+ + + + + +
 
+
+
+
+
+ +
+
+ +
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/all-wcprops new file mode 100644 index 0000000..f098acf --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 84 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/css +END +cell.css +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css +END +table.css +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/css/table.css +END +row.css +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/css/row.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/entries new file mode 100644 index 0000000..50fb0fb --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +cell.css +file + + + + +2010-06-04T12:51:45.958947Z +56394e6cdb267d97e23a07a98820e84b +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +205 + +table.css +file + + + + +2010-06-04T12:51:45.958947Z +f5e651f5a32284f1c4e0faa1d7cd5ff4 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +170 + +row.css +file + + + + +2010-06-04T12:51:45.962282Z +81a75523c1e83be93e524c8bb901a089 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +306 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/cell.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/cell.css.svn-base new file mode 100644 index 0000000..a067ecd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/cell.css.svn-base @@ -0,0 +1,17 @@ +/* CSS file for cell dialog in the table plugin */ + +.panel_wrapper div.current { + height: 200px; +} + +.advfield { + width: 200px; +} + +#action { + margin-bottom: 3px; +} + +#class { + width: 150px; +} \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/row.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/row.css.svn-base new file mode 100644 index 0000000..1f7755d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/row.css.svn-base @@ -0,0 +1,25 @@ +/* CSS file for row dialog in the table plugin */ + +.panel_wrapper div.current { + height: 200px; +} + +.advfield { + width: 200px; +} + +#action { + margin-bottom: 3px; +} + +#rowtype,#align,#valign,#class,#height { + width: 150px; +} + +#height { + width: 50px; +} + +.col2 { + padding-left: 20px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/table.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/table.css.svn-base new file mode 100644 index 0000000..d11c3f6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/.svn/text-base/table.css.svn-base @@ -0,0 +1,13 @@ +/* CSS file for table dialog in the table plugin */ + +.panel_wrapper div.current { + height: 245px; +} + +.advfield { + width: 200px; +} + +#class { + width: 150px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css new file mode 100644 index 0000000..a067ecd --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css @@ -0,0 +1,17 @@ +/* CSS file for cell dialog in the table plugin */ + +.panel_wrapper div.current { + height: 200px; +} + +.advfield { + width: 200px; +} + +#action { + margin-bottom: 3px; +} + +#class { + width: 150px; +} \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/row.css b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/row.css new file mode 100644 index 0000000..1f7755d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/row.css @@ -0,0 +1,25 @@ +/* CSS file for row dialog in the table plugin */ + +.panel_wrapper div.current { + height: 200px; +} + +.advfield { + width: 200px; +} + +#action { + margin-bottom: 3px; +} + +#rowtype,#align,#valign,#class,#height { + width: 150px; +} + +#height { + width: 50px; +} + +.col2 { + padding-left: 20px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/css/table.css b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/table.css new file mode 100644 index 0000000..d11c3f6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/css/table.css @@ -0,0 +1,13 @@ +/* CSS file for table dialog in the table plugin */ + +.panel_wrapper div.current { + height: 245px; +} + +.advfield { + width: 200px; +} + +#class { + width: 150px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js new file mode 100644 index 0000000..39f2c69 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js @@ -0,0 +1 @@ +(function(b){var c=b.each;function a(E,D,H){var e,I,A,n;r();n=D.getParent(H.getStart(),"th,td");if(n){I=C(n);A=F();n=v(I.x,I.y)}function r(){var J=0;e=[];c(["thead","tbody","tfoot"],function(K){var L=D.select(K+" tr",E);c(L,function(M,N){N+=J;c(D.select("td,th",M),function(T,O){var P,Q,R,S;if(e[N]){while(e[N][O]){O++}}R=g(T,"rowspan");S=g(T,"colspan");for(Q=N;Q'}return false}},"childNodes");J=J.cloneNode(false);J.rowSpan=J.colSpan=1;if(K){J.appendChild(K)}else{if(!b.isIE){J.innerHTML='
'}}return J}function p(){var J=D.createRng();c(D.select("tr",E),function(K){if(K.cells.length==0){D.remove(K)}});if(D.select("tr",E).length==0){J.setStartAfter(E);J.setEndAfter(E);H.setRng(J);D.remove(E);return}c(D.select("thead,tbody,tfoot",E),function(K){if(K.rows.length==0){D.remove(K)}});r();row=e[Math.min(e.length-1,I.y)];if(row){H.select(row[Math.min(row.length-1,I.x)].elm,true);H.collapse(true)}}function s(P,N,R,O){var M,K,J,L,Q;M=e[N][P].elm.parentNode;for(J=1;J<=R;J++){M=D.getNext(M,"tr");if(M){for(K=P;K>=0;K--){Q=e[N+J][K].elm;if(Q.parentNode==M){for(L=1;L<=O;L++){D.insertAfter(d(Q),Q)}break}}if(K==-1){for(L=1;L<=O;L++){M.insertBefore(d(M.cells[0]),M.cells[0])}}}}}function z(){c(e,function(J,K){c(J,function(M,L){var P,O,Q,N;if(h(M)){M=M.elm;P=g(M,"colspan");O=g(M,"rowspan");if(P>1||O>1){M.colSpan=M.rowSpan=1;for(N=0;N1){O.rowSpan=rowSpan+1;continue}}else{if(J>0&&e[J-1][N]){R=e[J-1][N].elm;rowSpan=g(R,"rowspan");if(rowSpan>1){R.rowSpan=rowSpan+1;continue}}}K=d(O);K.colSpan=O.colSpan;Q.appendChild(K);L=O}}if(Q.hasChildNodes()){if(!M){D.insertAfter(Q,P)}else{P.parentNode.insertBefore(Q,P)}}}function f(K){var L,J;c(e,function(M,N){c(M,function(P,O){if(h(P)){L=O;if(K){return false}}});if(K){return !L}});c(e,function(P,Q){var M=P[L].elm,N,O;if(M!=J){O=g(M,"colspan");N=g(M,"rowspan");if(O==1){if(!K){D.insertAfter(d(M),M);s(L,Q,N-1,O)}else{M.parentNode.insertBefore(d(M),M);s(L,Q,N-1,O)}}else{M.colSpan++}J=M}})}function m(){var J=[];c(e,function(K,L){c(K,function(N,M){if(h(N)&&b.inArray(J,M)===-1){c(e,function(Q){var O=Q[M].elm,P;P=g(O,"colspan");if(P>1){O.colSpan=P-1}else{D.remove(O)}});J.push(M)}})});p()}function l(){var K;function J(N){var M,O,L;M=D.getNext(N,"tr");c(N.cells,function(P){var Q=g(P,"rowspan");if(Q>1){P.rowSpan=Q-1;O=C(P);s(O.x,O.y,1,1)}});O=C(N.cells[0]);c(e[O.y],function(P){var Q;P=P.elm;if(P!=L){Q=g(P,"rowspan");if(Q<=1){D.remove(P)}else{P.rowSpan=Q-1}L=P}})}K=j();c(K.reverse(),function(L){J(L)});p()}function B(){var J=j();D.remove(J);p();return J}function G(){var J=j();c(J,function(L,K){J[K]=L.cloneNode(true)});return J}function w(L,K){var M=j(),J=M[K?0:M.length-1],N=J.cells.length;c(e,function(P){var O;N=0;c(P,function(R,Q){if(R.real){N+=R.colspan}if(R.elm.parentNode==J){O=1}});if(O){return false}});if(!K){L.reverse()}c(L,function(Q){var P=Q.cells.length,O;for(i=0;iK){K=O}if(N>J){J=N}if(P.real){R=P.colspan-1;Q=P.rowspan-1;if(R){if(O+R>K){K=O+R}}if(Q){if(N+Q>J){J=N+Q}}}}})});return{x:K,y:J}}function t(P){var M,L,R,Q,K,J,N,O;A=C(P);if(I&&A){M=Math.min(I.x,A.x);L=Math.min(I.y,A.y);R=Math.max(I.x,A.x);Q=Math.max(I.y,A.y);K=R;J=Q;for(y=L;y<=J;y++){P=e[y][M];if(!P.real){if(M-(P.colspan-1)K){K=x+N}}if(O){if(y+O>J){J=y+O}}}}}D.removeClass(D.select("td.mceSelected,th.mceSelected"),"mceSelected");for(y=L;y<=J;y++){for(x=M;x<=K;x++){D.addClass(e[y][x].elm,"mceSelected")}}}}b.extend(this,{deleteTable:q,split:z,merge:o,insertRow:k,insertCol:f,deleteCols:m,deleteRows:l,cutRows:B,copyRows:G,pasteRows:w,getPos:C,setStartCell:u,setEndCell:t})}b.create("tinymce.plugins.TablePlugin",{init:function(e,f){var d,j;function h(m){var l=e.selection,k=e.dom.getParent(m||l.getNode(),"table");if(k){return new a(k,e.dom,l)}}function g(){e.getBody().style.webkitUserSelect="";e.dom.removeClass(e.dom.select("td.mceSelected,th.mceSelected"),"mceSelected")}c([["table","table.desc","mceInsertTable",true],["delete_table","table.del","mceTableDelete"],["delete_col","table.delete_col_desc","mceTableDeleteCol"],["delete_row","table.delete_row_desc","mceTableDeleteRow"],["col_after","table.col_after_desc","mceTableInsertColAfter"],["col_before","table.col_before_desc","mceTableInsertColBefore"],["row_after","table.row_after_desc","mceTableInsertRowAfter"],["row_before","table.row_before_desc","mceTableInsertRowBefore"],["row_props","table.row_desc","mceTableRowProps",true],["cell_props","table.cell_desc","mceTableCellProps",true],["split_cells","table.split_cells_desc","mceTableSplitCells",true],["merge_cells","table.merge_cells_desc","mceTableMergeCells",true]],function(k){e.addButton(k[0],{title:k[1],cmd:k[2],ui:k[3]})});if(!b.isIE){e.onClick.add(function(k,l){l=l.target;if(l.nodeName==="TABLE"){k.selection.select(l)}})}e.onNodeChange.add(function(l,k,o){var m;o=l.selection.getStart();m=l.dom.getParent(o,"td,th,caption");k.setActive("table",o.nodeName==="TABLE"||!!m);if(m&&m.nodeName==="CAPTION"){m=0}k.setDisabled("delete_table",!m);k.setDisabled("delete_col",!m);k.setDisabled("delete_table",!m);k.setDisabled("delete_row",!m);k.setDisabled("col_after",!m);k.setDisabled("col_before",!m);k.setDisabled("row_after",!m);k.setDisabled("row_before",!m);k.setDisabled("row_props",!m);k.setDisabled("cell_props",!m);k.setDisabled("split_cells",!m);k.setDisabled("merge_cells",!m)});e.onInit.add(function(l){var k,o,p=l.dom,m;d=l.windowManager;l.onMouseDown.add(function(q,r){if(r.button!=2){g();o=p.getParent(r.target,"td,th");k=p.getParent(o,"table")}});p.bind(l.getDoc(),"mouseover",function(t){var r,q,s=t.target;if(o&&(m||s!=o)&&(s.nodeName=="TD"||s.nodeName=="TH")){q=p.getParent(s,"table");if(q==k){if(!m){m=h(q);m.setStartCell(o);l.getBody().style.webkitUserSelect="none"}m.setEndCell(s)}r=l.selection.getSel();if(r.removeAllRanges){r.removeAllRanges()}else{r.empty()}t.preventDefault()}});l.onMouseUp.add(function(z,A){var r,t=z.selection,B,C=t.getSel(),q,u,s,w;if(o){if(m){z.getBody().style.webkitUserSelect=""}function v(D,F){var E=new b.dom.TreeWalker(D,D);do{if(D.nodeType==3&&b.trim(D.nodeValue).length!=0){if(F){r.setStart(D,0)}else{r.setEnd(D,D.nodeValue.length)}return}if(D.nodeName=="BR"){if(F){r.setStartBefore(D)}else{r.setEndBefore(D)}return}}while(D=(F?E.next():E.prev()))}B=p.select("td.mceSelected,th.mceSelected");if(B.length>0){r=p.createRng();u=B[0];w=B[B.length-1];v(u,1);q=new b.dom.TreeWalker(u,p.getParent(B[0],"table"));do{if(u.nodeName=="TD"||u.nodeName=="TH"){if(!p.hasClass(u,"mceSelected")){break}s=u}}while(u=q.next());v(s);t.setRng(r)}z.nodeChanged();o=m=k=null}});l.onKeyUp.add(function(q,r){g()});if(l&&l.plugins.contextmenu){l.plugins.contextmenu.onContextMenu.add(function(s,q,u){var v,t=l.selection,r=t.getNode()||l.getBody();if(l.dom.getParent(u,"td")||l.dom.getParent(u,"th")){q.removeAll();if(r.nodeName=="A"&&!l.dom.getAttrib(r,"name")){q.add({title:"advanced.link_desc",icon:"link",cmd:l.plugins.advlink?"mceAdvLink":"mceLink",ui:true});q.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"});q.addSeparator()}if(r.nodeName=="IMG"&&r.className.indexOf("mceItem")==-1){q.add({title:"advanced.image_desc",icon:"image",cmd:l.plugins.advimage?"mceAdvImage":"mceImage",ui:true});q.addSeparator()}q.add({title:"table.desc",icon:"table",cmd:"mceInsertTable",value:{action:"insert"}});q.add({title:"table.props_desc",icon:"table_props",cmd:"mceInsertTable"});q.add({title:"table.del",icon:"delete_table",cmd:"mceTableDelete"});q.addSeparator();v=q.addMenu({title:"table.cell"});v.add({title:"table.cell_desc",icon:"cell_props",cmd:"mceTableCellProps"});v.add({title:"table.split_cells_desc",icon:"split_cells",cmd:"mceTableSplitCells"});v.add({title:"table.merge_cells_desc",icon:"merge_cells",cmd:"mceTableMergeCells"});v=q.addMenu({title:"table.row"});v.add({title:"table.row_desc",icon:"row_props",cmd:"mceTableRowProps"});v.add({title:"table.row_before_desc",icon:"row_before",cmd:"mceTableInsertRowBefore"});v.add({title:"table.row_after_desc",icon:"row_after",cmd:"mceTableInsertRowAfter"});v.add({title:"table.delete_row_desc",icon:"delete_row",cmd:"mceTableDeleteRow"});v.addSeparator();v.add({title:"table.cut_row_desc",icon:"cut",cmd:"mceTableCutRow"});v.add({title:"table.copy_row_desc",icon:"copy",cmd:"mceTableCopyRow"});v.add({title:"table.paste_row_before_desc",icon:"paste",cmd:"mceTablePasteRowBefore"}).setDisabled(!j);v.add({title:"table.paste_row_after_desc",icon:"paste",cmd:"mceTablePasteRowAfter"}).setDisabled(!j);v=q.addMenu({title:"table.col"});v.add({title:"table.col_before_desc",icon:"col_before",cmd:"mceTableInsertColBefore"});v.add({title:"table.col_after_desc",icon:"col_after",cmd:"mceTableInsertColAfter"});v.add({title:"table.delete_col_desc",icon:"delete_col",cmd:"mceTableDeleteCol"})}else{q.add({title:"table.desc",icon:"table",cmd:"mceInsertTable"})}})}if(!b.isIE){function n(){var q;for(q=l.getBody().lastChild;q&&q.nodeType==3&&!q.nodeValue.length;q=q.previousSibling){}if(q&&q.nodeName=="TABLE"){l.dom.add(l.getBody(),"p",null,'
')}}if(b.isGecko){l.onKeyDown.add(function(r,t){var q,s,u=r.dom;if(t.keyCode==37||t.keyCode==38){q=r.selection.getRng();s=u.getParent(q.startContainer,"table");if(s&&r.getBody().firstChild==s){if(isAtStart(q,s)){q=u.createRng();q.setStartBefore(s);q.setEndBefore(s);r.selection.setRng(q);t.preventDefault()}}}})}l.onKeyUp.add(n);l.onSetContent.add(n);l.onVisualAid.add(n);l.onPreProcess.add(function(q,s){var r=s.node.lastChild;if(r&&r.childNodes.length==1&&r.firstChild.nodeName=="BR"){q.dom.remove(r)}});n()}});c({mceTableSplitCells:function(k){k.split()},mceTableMergeCells:function(l){var m,n,k;k=e.dom.getParent(e.selection.getNode(),"th,td");if(k){m=k.rowSpan;n=k.colSpan}if(!e.dom.select("td.mceSelected,th.mceSelected").length){d.open({url:f+"/merge_cells.htm",width:240+parseInt(e.getLang("table.merge_cells_delta_width",0)),height:110+parseInt(e.getLang("table.merge_cells_delta_height",0)),inline:1},{rows:m,cols:n,onaction:function(o){l.merge(k,o.cols,o.rows)},plugin_url:f})}else{l.merge()}},mceTableInsertRowBefore:function(k){k.insertRow(true)},mceTableInsertRowAfter:function(k){k.insertRow()},mceTableInsertColBefore:function(k){k.insertCol(true)},mceTableInsertColAfter:function(k){k.insertCol()},mceTableDeleteCol:function(k){k.deleteCols()},mceTableDeleteRow:function(k){k.deleteRows()},mceTableCutRow:function(k){j=k.cutRows()},mceTableCopyRow:function(k){j=k.copyRows()},mceTablePasteRowBefore:function(k){k.pasteRows(j,true)},mceTablePasteRowAfter:function(k){k.pasteRows(j)},mceTableDelete:function(k){k.deleteTable()}},function(l,k){e.addCommand(k,function(){var m=h();if(m){l(m);e.execCommand("mceRepaint");g()}})});c({mceInsertTable:function(k){d.open({url:f+"/table.htm",width:400+parseInt(e.getLang("table.table_delta_width",0)),height:320+parseInt(e.getLang("table.table_delta_height",0)),inline:1},{plugin_url:f,action:k?k.action:0})},mceTableRowProps:function(){d.open({url:f+"/row.htm",width:400+parseInt(e.getLang("table.rowprops_delta_width",0)),height:295+parseInt(e.getLang("table.rowprops_delta_height",0)),inline:1},{plugin_url:f})},mceTableCellProps:function(){d.open({url:f+"/cell.htm",width:400+parseInt(e.getLang("table.cellprops_delta_width",0)),height:295+parseInt(e.getLang("table.cellprops_delta_height",0)),inline:1},{plugin_url:f})}},function(l,k){e.addCommand(k,function(m,n){l(n)})})}});b.PluginManager.add("table",b.plugins.TablePlugin)})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js new file mode 100644 index 0000000..2260f34 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js @@ -0,0 +1,1118 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function(tinymce) { + var each = tinymce.each; + + /** + * Table Grid class. + */ + function TableGrid(table, dom, selection) { + var grid, startPos, endPos, selectedCell; + + buildGrid(); + selectedCell = dom.getParent(selection.getStart(), 'th,td'); + if (selectedCell) { + startPos = getPos(selectedCell); + endPos = findEndPos(); + selectedCell = getCell(startPos.x, startPos.y); + } + + function buildGrid() { + var startY = 0; + + grid = []; + + each(['thead', 'tbody', 'tfoot'], function(part) { + var rows = dom.select(part + ' tr', table); + + each(rows, function(tr, y) { + y += startY; + + each(dom.select('td,th', tr), function(td, x) { + var x2, y2, rowspan, colspan; + + // Skip over existing cells produced by rowspan + if (grid[y]) { + while (grid[y][x]) + x++; + } + + // Get col/rowspan from cell + rowspan = getSpanVal(td, 'rowspan'); + colspan = getSpanVal(td, 'colspan'); + + // Fill out rowspan/colspan right and down + for (y2 = y; y2 < y + rowspan; y2++) { + if (!grid[y2]) + grid[y2] = []; + + for (x2 = x; x2 < x + colspan; x2++) { + grid[y2][x2] = { + part : part, + real : y2 == y && x2 == x, + elm : td, + rowspan : rowspan, + colspan : colspan + }; + } + } + }); + }); + + startY += rows.length; + }); + }; + + function getCell(x, y) { + var row; + + row = grid[y]; + if (row) + return row[x]; + }; + + function getSpanVal(td, name) { + return parseInt(td.getAttribute(name) || 1); + }; + + function isCellSelected(cell) { + return dom.hasClass(cell.elm, 'mceSelected') || cell == selectedCell; + }; + + function getSelectedRows() { + var rows = []; + + each(table.rows, function(row) { + each(row.cells, function(cell) { + if (dom.hasClass(cell, 'mceSelected') || cell == selectedCell.elm) { + rows.push(row); + return false; + } + }); + }); + + return rows; + }; + + function deleteTable() { + var rng = dom.createRng(); + + rng.setStartAfter(table); + rng.setEndAfter(table); + + selection.setRng(rng); + + dom.remove(table); + }; + + function cloneCell(cell) { + var formatNode; + + // Clone formats + tinymce.walk(cell, function(node) { + var curNode; + + if (node.nodeType == 3) { + each(dom.getParents(node.parentNode, null, cell).reverse(), function(node) { + node = node.cloneNode(false); + + if (!formatNode) + formatNode = curNode = node; + else if (curNode) + curNode.appendChild(node); + + curNode = node; + }); + + // Add something to the inner node + if (curNode) + curNode.innerHTML = tinymce.isIE ? ' ' : '
'; + + return false; + } + }, 'childNodes'); + + cell = cell.cloneNode(false); + cell.rowSpan = cell.colSpan = 1; + + if (formatNode) { + cell.appendChild(formatNode); + } else { + if (!tinymce.isIE) + cell.innerHTML = '
'; + } + + return cell; + }; + + function cleanup() { + var rng = dom.createRng(); + + // Empty rows + each(dom.select('tr', table), function(tr) { + if (tr.cells.length == 0) + dom.remove(tr); + }); + + // Empty table + if (dom.select('tr', table).length == 0) { + rng.setStartAfter(table); + rng.setEndAfter(table); + selection.setRng(rng); + dom.remove(table); + return; + } + + // Empty header/body/footer + each(dom.select('thead,tbody,tfoot', table), function(part) { + if (part.rows.length == 0) + dom.remove(part); + }); + + // Restore selection to start position if it still exists + buildGrid(); + + // Restore the selection to the closest table position + row = grid[Math.min(grid.length - 1, startPos.y)]; + if (row) { + selection.select(row[Math.min(row.length - 1, startPos.x)].elm, true); + selection.collapse(true); + } + }; + + function fillLeftDown(x, y, rows, cols) { + var tr, x2, r, c, cell; + + tr = grid[y][x].elm.parentNode; + for (r = 1; r <= rows; r++) { + tr = dom.getNext(tr, 'tr'); + + if (tr) { + // Loop left to find real cell + for (x2 = x; x2 >= 0; x2--) { + cell = grid[y + r][x2].elm; + + if (cell.parentNode == tr) { + // Append clones after + for (c = 1; c <= cols; c++) + dom.insertAfter(cloneCell(cell), cell); + + break; + } + } + + if (x2 == -1) { + // Insert nodes before first cell + for (c = 1; c <= cols; c++) + tr.insertBefore(cloneCell(tr.cells[0]), tr.cells[0]); + } + } + } + }; + + function split() { + each(grid, function(row, y) { + each(row, function(cell, x) { + var colSpan, rowSpan, newCell, i; + + if (isCellSelected(cell)) { + cell = cell.elm; + colSpan = getSpanVal(cell, 'colspan'); + rowSpan = getSpanVal(cell, 'rowspan'); + + if (colSpan > 1 || rowSpan > 1) { + cell.colSpan = cell.rowSpan = 1; + + // Insert cells right + for (i = 0; i < colSpan - 1; i++) + dom.insertAfter(cloneCell(cell), cell); + + fillLeftDown(x, y, rowSpan - 1, colSpan); + } + } + }); + }); + }; + + function merge(cell, cols, rows) { + var startX, startY, endX, endY, x, y, startCell, endCell, cell, children; + + // Use specified cell and cols/rows + if (cell) { + pos = getPos(cell); + startX = pos.x; + startY = pos.y; + endX = startX + (cols - 1); + endY = startY + (rows - 1); + } else { + // Use selection + startX = startPos.x; + startY = startPos.y; + endX = endPos.x; + endY = endPos.y; + } + + // Find start/end cells + startCell = getCell(startX, startY); + endCell = getCell(endX, endY); + + // Check if the cells exists and if they are of the same part for example tbody = tbody + if (startCell && endCell && startCell.part == endCell.part) { + // Split and rebuild grid + split(); + buildGrid(); + + // Set row/col span to start cell + startCell = getCell(startX, startY).elm; + startCell.colSpan = (endX - startX) + 1; + startCell.rowSpan = (endY - startY) + 1; + + // Remove other cells and add it's contents to the start cell + for (y = startY; y <= endY; y++) { + for (x = startX; x <= endX; x++) { + cell = grid[y][x].elm; + + if (cell != startCell) { + // Move children to startCell + children = tinymce.grep(cell.childNodes); + each(children, function(node, i) { + // Jump over last BR element + if (node.nodeName != 'BR' || i != children.length - 1) + startCell.appendChild(node); + }); + + // Remove cell + dom.remove(cell); + } + } + } + + // Remove empty rows etc and restore caret location + cleanup(); + } + }; + + function insertRow(before) { + var posY, cell, lastCell, x, rowElm, newRow, newCell, otherCell; + + // Find first/last row + each(grid, function(row, y) { + each(row, function(cell, x) { + if (isCellSelected(cell)) { + cell = cell.elm; + rowElm = cell.parentNode; + newRow = rowElm.cloneNode(false); + posY = y; + + if (before) + return false; + } + }); + + if (before) + return !posY; + }); + + for (x = 0; x < grid[0].length; x++) { + cell = grid[posY][x].elm; + + if (cell != lastCell) { + if (!before) { + rowSpan = getSpanVal(cell, 'rowspan'); + if (rowSpan > 1) { + cell.rowSpan = rowSpan + 1; + continue; + } + } else { + // Check if cell above can be expanded + if (posY > 0 && grid[posY - 1][x]) { + otherCell = grid[posY - 1][x].elm; + rowSpan = getSpanVal(otherCell, 'rowspan'); + if (rowSpan > 1) { + otherCell.rowSpan = rowSpan + 1; + continue; + } + } + } + + // Insert new cell into new row + newCell = cloneCell(cell) + newCell.colSpan = cell.colSpan; + newRow.appendChild(newCell); + + lastCell = cell; + } + } + + if (newRow.hasChildNodes()) { + if (!before) + dom.insertAfter(newRow, rowElm); + else + rowElm.parentNode.insertBefore(newRow, rowElm); + } + }; + + function insertCol(before) { + var posX, lastCell; + + // Find first/last column + each(grid, function(row, y) { + each(row, function(cell, x) { + if (isCellSelected(cell)) { + posX = x; + + if (before) + return false; + } + }); + + if (before) + return !posX; + }); + + each(grid, function(row, y) { + var cell = row[posX].elm, rowSpan, colSpan; + + if (cell != lastCell) { + colSpan = getSpanVal(cell, 'colspan'); + rowSpan = getSpanVal(cell, 'rowspan'); + + if (colSpan == 1) { + if (!before) { + dom.insertAfter(cloneCell(cell), cell); + fillLeftDown(posX, y, rowSpan - 1, colSpan); + } else { + cell.parentNode.insertBefore(cloneCell(cell), cell); + fillLeftDown(posX, y, rowSpan - 1, colSpan); + } + } else + cell.colSpan++; + + lastCell = cell; + } + }); + }; + + function deleteCols() { + var cols = []; + + // Get selected column indexes + each(grid, function(row, y) { + each(row, function(cell, x) { + if (isCellSelected(cell) && tinymce.inArray(cols, x) === -1) { + each(grid, function(row) { + var cell = row[x].elm, colSpan; + + colSpan = getSpanVal(cell, 'colspan'); + + if (colSpan > 1) + cell.colSpan = colSpan - 1; + else + dom.remove(cell); + }); + + cols.push(x); + } + }); + }); + + cleanup(); + }; + + function deleteRows() { + var rows; + + function deleteRow(tr) { + var nextTr, pos, lastCell; + + nextTr = dom.getNext(tr, 'tr'); + + // Move down row spanned cells + each(tr.cells, function(cell) { + var rowSpan = getSpanVal(cell, 'rowspan'); + + if (rowSpan > 1) { + cell.rowSpan = rowSpan - 1; + pos = getPos(cell); + fillLeftDown(pos.x, pos.y, 1, 1); + } + }); + + // Delete cells + pos = getPos(tr.cells[0]); + each(grid[pos.y], function(cell) { + var rowSpan; + + cell = cell.elm; + + if (cell != lastCell) { + rowSpan = getSpanVal(cell, 'rowspan'); + + if (rowSpan <= 1) + dom.remove(cell); + else + cell.rowSpan = rowSpan - 1; + + lastCell = cell; + } + }); + }; + + // Get selected rows and move selection out of scope + rows = getSelectedRows(); + + // Delete all selected rows + each(rows.reverse(), function(tr) { + deleteRow(tr); + }); + + cleanup(); + }; + + function cutRows() { + var rows = getSelectedRows(); + + dom.remove(rows); + cleanup(); + + return rows; + }; + + function copyRows() { + var rows = getSelectedRows(); + + each(rows, function(row, i) { + rows[i] = row.cloneNode(true); + }); + + return rows; + }; + + function pasteRows(rows, before) { + var selectedRows = getSelectedRows(), + targetRow = selectedRows[before ? 0 : selectedRows.length - 1], + targetCellCount = targetRow.cells.length; + + // Calc target cell count + each(grid, function(row) { + var match; + + targetCellCount = 0; + each(row, function(cell, x) { + if (cell.real) + targetCellCount += cell.colspan; + + if (cell.elm.parentNode == targetRow) + match = 1; + }); + + if (match) + return false; + }); + + if (!before) + rows.reverse(); + + each(rows, function(row) { + var cellCount = row.cells.length, cell; + + // Remove col/rowspans + for (i = 0; i < cellCount; i++) { + cell = row.cells[i]; + cell.colSpan = cell.rowSpan = 1; + } + + // Needs more cells + for (i = cellCount; i < targetCellCount; i++) + row.appendChild(cloneCell(row.cells[cellCount - 1])); + + // Needs less cells + for (i = targetCellCount; i < cellCount; i++) + dom.remove(row.cells[i]); + + // Add before/after + if (before) + targetRow.parentNode.insertBefore(row, targetRow); + else + dom.insertAfter(row, targetRow); + }); + }; + + function getPos(target) { + var pos; + + each(grid, function(row, y) { + each(row, function(cell, x) { + if (cell.elm == target) { + pos = {x : x, y : y}; + return false; + } + }); + + return !pos; + }); + + return pos; + }; + + function setStartCell(cell) { + startPos = getPos(cell); + }; + + function findEndPos() { + var pos, maxX, maxY; + + maxX = maxY = 0; + + each(grid, function(row, y) { + each(row, function(cell, x) { + var colSpan, rowSpan; + + if (isCellSelected(cell)) { + cell = grid[y][x]; + + if (x > maxX) + maxX = x; + + if (y > maxY) + maxY = y; + + if (cell.real) { + colSpan = cell.colspan - 1; + rowSpan = cell.rowspan - 1; + + if (colSpan) { + if (x + colSpan > maxX) + maxX = x + colSpan; + } + + if (rowSpan) { + if (y + rowSpan > maxY) + maxY = y + rowSpan; + } + } + } + }); + }); + + return {x : maxX, y : maxY}; + }; + + function setEndCell(cell) { + var startX, startY, endX, endY, maxX, maxY, colSpan, rowSpan; + + endPos = getPos(cell); + + if (startPos && endPos) { + // Get start/end positions + startX = Math.min(startPos.x, endPos.x); + startY = Math.min(startPos.y, endPos.y); + endX = Math.max(startPos.x, endPos.x); + endY = Math.max(startPos.y, endPos.y); + + // Expand end positon to include spans + maxX = endX; + maxY = endY; + + // Expand startX + for (y = startY; y <= maxY; y++) { + cell = grid[y][startX]; + + if (!cell.real) { + if (startX - (cell.colspan - 1) < startX) + startX -= cell.colspan - 1; + } + } + + // Expand startY + for (x = startX; x <= maxX; x++) { + cell = grid[startY][x]; + + if (!cell.real) { + if (startY - (cell.rowspan - 1) < startY) + startY -= cell.rowspan - 1; + } + } + + // Find max X, Y + for (y = startY; y <= endY; y++) { + for (x = startX; x <= endX; x++) { + cell = grid[y][x]; + + if (cell.real) { + colSpan = cell.colspan - 1; + rowSpan = cell.rowspan - 1; + + if (colSpan) { + if (x + colSpan > maxX) + maxX = x + colSpan; + } + + if (rowSpan) { + if (y + rowSpan > maxY) + maxY = y + rowSpan; + } + } + } + } + + // Remove current selection + dom.removeClass(dom.select('td.mceSelected,th.mceSelected'), 'mceSelected'); + + // Add new selection + for (y = startY; y <= maxY; y++) { + for (x = startX; x <= maxX; x++) + dom.addClass(grid[y][x].elm, 'mceSelected'); + } + } + }; + + // Expose to public + tinymce.extend(this, { + deleteTable : deleteTable, + split : split, + merge : merge, + insertRow : insertRow, + insertCol : insertCol, + deleteCols : deleteCols, + deleteRows : deleteRows, + cutRows : cutRows, + copyRows : copyRows, + pasteRows : pasteRows, + getPos : getPos, + setStartCell : setStartCell, + setEndCell : setEndCell + }); + }; + + tinymce.create('tinymce.plugins.TablePlugin', { + init : function(ed, url) { + var winMan, clipboardRows; + + function createTableGrid(node) { + var selection = ed.selection, tblElm = ed.dom.getParent(node || selection.getNode(), 'table'); + + if (tblElm) + return new TableGrid(tblElm, ed.dom, selection); + }; + + function cleanup() { + // Restore selection possibilities + ed.getBody().style.webkitUserSelect = ''; + ed.dom.removeClass(ed.dom.select('td.mceSelected,th.mceSelected'), 'mceSelected'); + }; + + // Register buttons + each([ + ['table', 'table.desc', 'mceInsertTable', true], + ['delete_table', 'table.del', 'mceTableDelete'], + ['delete_col', 'table.delete_col_desc', 'mceTableDeleteCol'], + ['delete_row', 'table.delete_row_desc', 'mceTableDeleteRow'], + ['col_after', 'table.col_after_desc', 'mceTableInsertColAfter'], + ['col_before', 'table.col_before_desc', 'mceTableInsertColBefore'], + ['row_after', 'table.row_after_desc', 'mceTableInsertRowAfter'], + ['row_before', 'table.row_before_desc', 'mceTableInsertRowBefore'], + ['row_props', 'table.row_desc', 'mceTableRowProps', true], + ['cell_props', 'table.cell_desc', 'mceTableCellProps', true], + ['split_cells', 'table.split_cells_desc', 'mceTableSplitCells', true], + ['merge_cells', 'table.merge_cells_desc', 'mceTableMergeCells', true] + ], function(c) { + ed.addButton(c[0], {title : c[1], cmd : c[2], ui : c[3]}); + }); + + // Select whole table is a table border is clicked + if (!tinymce.isIE) { + ed.onClick.add(function(ed, e) { + e = e.target; + + if (e.nodeName === 'TABLE') + ed.selection.select(e); + }); + } + + // Handle node change updates + ed.onNodeChange.add(function(ed, cm, n) { + var p; + + n = ed.selection.getStart(); + p = ed.dom.getParent(n, 'td,th,caption'); + cm.setActive('table', n.nodeName === 'TABLE' || !!p); + + // Disable table tools if we are in caption + if (p && p.nodeName === 'CAPTION') + p = 0; + + cm.setDisabled('delete_table', !p); + cm.setDisabled('delete_col', !p); + cm.setDisabled('delete_table', !p); + cm.setDisabled('delete_row', !p); + cm.setDisabled('col_after', !p); + cm.setDisabled('col_before', !p); + cm.setDisabled('row_after', !p); + cm.setDisabled('row_before', !p); + cm.setDisabled('row_props', !p); + cm.setDisabled('cell_props', !p); + cm.setDisabled('split_cells', !p); + cm.setDisabled('merge_cells', !p); + }); + + ed.onInit.add(function(ed) { + var startTable, startCell, dom = ed.dom, tableGrid; + + winMan = ed.windowManager; + + // Add cell selection logic + ed.onMouseDown.add(function(ed, e) { + if (e.button != 2) { + cleanup(); + + startCell = dom.getParent(e.target, 'td,th'); + startTable = dom.getParent(startCell, 'table'); + } + }); + + dom.bind(ed.getDoc(), 'mouseover', function(e) { + var sel, table, target = e.target; + + if (startCell && (tableGrid || target != startCell) && (target.nodeName == 'TD' || target.nodeName == 'TH')) { + table = dom.getParent(target, 'table'); + if (table == startTable) { + if (!tableGrid) { + tableGrid = createTableGrid(table); + tableGrid.setStartCell(startCell); + + ed.getBody().style.webkitUserSelect = 'none'; + } + + tableGrid.setEndCell(target); + } + + // Remove current selection + sel = ed.selection.getSel(); + + if (sel.removeAllRanges) + sel.removeAllRanges(); + else + sel.empty(); + + e.preventDefault(); + } + }); + + ed.onMouseUp.add(function(ed, e) { + var rng, sel = ed.selection, selectedCells, nativeSel = sel.getSel(), walker, node, lastNode, endNode; + + // Move selection to startCell + if (startCell) { + if (tableGrid) + ed.getBody().style.webkitUserSelect = ''; + + function setPoint(node, start) { + var walker = new tinymce.dom.TreeWalker(node, node); + + do { + // Text node + if (node.nodeType == 3 && tinymce.trim(node.nodeValue).length != 0) { + if (start) + rng.setStart(node, 0); + else + rng.setEnd(node, node.nodeValue.length); + + return; + } + + // BR element + if (node.nodeName == 'BR') { + if (start) + rng.setStartBefore(node); + else + rng.setEndBefore(node); + + return; + } + } while (node = (start ? walker.next() : walker.prev())); + }; + + // Try to expand text selection as much as we can only Gecko supports cell selection + selectedCells = dom.select('td.mceSelected,th.mceSelected'); + if (selectedCells.length > 0) { + rng = dom.createRng(); + node = selectedCells[0]; + endNode = selectedCells[selectedCells.length - 1]; + + setPoint(node, 1); + walker = new tinymce.dom.TreeWalker(node, dom.getParent(selectedCells[0], 'table')); + + do { + if (node.nodeName == 'TD' || node.nodeName == 'TH') { + if (!dom.hasClass(node, 'mceSelected')) + break; + + lastNode = node; + } + } while (node = walker.next()); + + setPoint(lastNode); + + sel.setRng(rng); + } + + ed.nodeChanged(); + startCell = tableGrid = startTable = null; + } + }); + + ed.onKeyUp.add(function(ed, e) { + cleanup(); + }); + + // Add context menu + if (ed && ed.plugins.contextmenu) { + ed.plugins.contextmenu.onContextMenu.add(function(th, m, e) { + var sm, se = ed.selection, el = se.getNode() || ed.getBody(); + + if (ed.dom.getParent(e, 'td') || ed.dom.getParent(e, 'th')) { + m.removeAll(); + + if (el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) { + m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true}); + m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'}); + m.addSeparator(); + } + + if (el.nodeName == 'IMG' && el.className.indexOf('mceItem') == -1) { + m.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true}); + m.addSeparator(); + } + + m.add({title : 'table.desc', icon : 'table', cmd : 'mceInsertTable', value : {action : 'insert'}}); + m.add({title : 'table.props_desc', icon : 'table_props', cmd : 'mceInsertTable'}); + m.add({title : 'table.del', icon : 'delete_table', cmd : 'mceTableDelete'}); + m.addSeparator(); + + // Cell menu + sm = m.addMenu({title : 'table.cell'}); + sm.add({title : 'table.cell_desc', icon : 'cell_props', cmd : 'mceTableCellProps'}); + sm.add({title : 'table.split_cells_desc', icon : 'split_cells', cmd : 'mceTableSplitCells'}); + sm.add({title : 'table.merge_cells_desc', icon : 'merge_cells', cmd : 'mceTableMergeCells'}); + + // Row menu + sm = m.addMenu({title : 'table.row'}); + sm.add({title : 'table.row_desc', icon : 'row_props', cmd : 'mceTableRowProps'}); + sm.add({title : 'table.row_before_desc', icon : 'row_before', cmd : 'mceTableInsertRowBefore'}); + sm.add({title : 'table.row_after_desc', icon : 'row_after', cmd : 'mceTableInsertRowAfter'}); + sm.add({title : 'table.delete_row_desc', icon : 'delete_row', cmd : 'mceTableDeleteRow'}); + sm.addSeparator(); + sm.add({title : 'table.cut_row_desc', icon : 'cut', cmd : 'mceTableCutRow'}); + sm.add({title : 'table.copy_row_desc', icon : 'copy', cmd : 'mceTableCopyRow'}); + sm.add({title : 'table.paste_row_before_desc', icon : 'paste', cmd : 'mceTablePasteRowBefore'}).setDisabled(!clipboardRows); + sm.add({title : 'table.paste_row_after_desc', icon : 'paste', cmd : 'mceTablePasteRowAfter'}).setDisabled(!clipboardRows); + + // Column menu + sm = m.addMenu({title : 'table.col'}); + sm.add({title : 'table.col_before_desc', icon : 'col_before', cmd : 'mceTableInsertColBefore'}); + sm.add({title : 'table.col_after_desc', icon : 'col_after', cmd : 'mceTableInsertColAfter'}); + sm.add({title : 'table.delete_col_desc', icon : 'delete_col', cmd : 'mceTableDeleteCol'}); + } else + m.add({title : 'table.desc', icon : 'table', cmd : 'mceInsertTable'}); + }); + } + + // Fixes an issue on Gecko where it's impossible to place the caret behind a table + // This fix will force a paragraph element after the table but only when the forced_root_block setting is enabled + if (!tinymce.isIE) { + function fixTableCaretPos() { + var last; + + // Skip empty text nodes form the end + for (last = ed.getBody().lastChild; last && last.nodeType == 3 && !last.nodeValue.length; last = last.previousSibling) ; + + if (last && last.nodeName == 'TABLE') + ed.dom.add(ed.getBody(), 'p', null, '
'); + }; + + // Fixes an bug where it's impossible to place the caret before a table in Gecko + // this fix solves it by detecting when the caret is at the beginning of such a table + // and then manually moves the caret infront of the table + if (tinymce.isGecko) { + ed.onKeyDown.add(function(ed, e) { + var rng, table, dom = ed.dom; + + // On gecko it's not possible to place the caret before a table + if (e.keyCode == 37 || e.keyCode == 38) { + rng = ed.selection.getRng(); + table = dom.getParent(rng.startContainer, 'table'); + + if (table && ed.getBody().firstChild == table) { + if (isAtStart(rng, table)) { + rng = dom.createRng(); + + rng.setStartBefore(table); + rng.setEndBefore(table); + + ed.selection.setRng(rng); + + e.preventDefault(); + } + } + } + }); + } + + ed.onKeyUp.add(fixTableCaretPos); + ed.onSetContent.add(fixTableCaretPos); + ed.onVisualAid.add(fixTableCaretPos); + + ed.onPreProcess.add(function(ed, o) { + var last = o.node.lastChild; + + if (last && last.childNodes.length == 1 && last.firstChild.nodeName == 'BR') + ed.dom.remove(last); + }); + + fixTableCaretPos(); + } + }); + + // Register action commands + each({ + mceTableSplitCells : function(grid) { + grid.split(); + }, + + mceTableMergeCells : function(grid) { + var rowSpan, colSpan, cell; + + cell = ed.dom.getParent(ed.selection.getNode(), 'th,td'); + if (cell) { + rowSpan = cell.rowSpan; + colSpan = cell.colSpan; + } + + if (!ed.dom.select('td.mceSelected,th.mceSelected').length) { + winMan.open({ + url : url + '/merge_cells.htm', + width : 240 + parseInt(ed.getLang('table.merge_cells_delta_width', 0)), + height : 110 + parseInt(ed.getLang('table.merge_cells_delta_height', 0)), + inline : 1 + }, { + rows : rowSpan, + cols : colSpan, + onaction : function(data) { + grid.merge(cell, data.cols, data.rows); + }, + plugin_url : url + }); + } else + grid.merge(); + }, + + mceTableInsertRowBefore : function(grid) { + grid.insertRow(true); + }, + + mceTableInsertRowAfter : function(grid) { + grid.insertRow(); + }, + + mceTableInsertColBefore : function(grid) { + grid.insertCol(true); + }, + + mceTableInsertColAfter : function(grid) { + grid.insertCol(); + }, + + mceTableDeleteCol : function(grid) { + grid.deleteCols(); + }, + + mceTableDeleteRow : function(grid) { + grid.deleteRows(); + }, + + mceTableCutRow : function(grid) { + clipboardRows = grid.cutRows(); + }, + + mceTableCopyRow : function(grid) { + clipboardRows = grid.copyRows(); + }, + + mceTablePasteRowBefore : function(grid) { + grid.pasteRows(clipboardRows, true); + }, + + mceTablePasteRowAfter : function(grid) { + grid.pasteRows(clipboardRows); + }, + + mceTableDelete : function(grid) { + grid.deleteTable(); + } + }, function(func, name) { + ed.addCommand(name, function() { + var grid = createTableGrid(); + + if (grid) { + func(grid); + ed.execCommand('mceRepaint'); + cleanup(); + } + }); + }); + + // Register dialog commands + each({ + mceInsertTable : function(val) { + winMan.open({ + url : url + '/table.htm', + width : 400 + parseInt(ed.getLang('table.table_delta_width', 0)), + height : 320 + parseInt(ed.getLang('table.table_delta_height', 0)), + inline : 1 + }, { + plugin_url : url, + action : val ? val.action : 0 + }); + }, + + mceTableRowProps : function() { + winMan.open({ + url : url + '/row.htm', + width : 400 + parseInt(ed.getLang('table.rowprops_delta_width', 0)), + height : 295 + parseInt(ed.getLang('table.rowprops_delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }, + + mceTableCellProps : function() { + winMan.open({ + url : url + '/cell.htm', + width : 400 + parseInt(ed.getLang('table.cellprops_delta_width', 0)), + height : 295 + parseInt(ed.getLang('table.cellprops_delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + } + }, function(func, name) { + ed.addCommand(name, function(ui, val) { + func(val); + }); + }); + } + }); + + // Register plugin + tinymce.PluginManager.add('table', tinymce.plugins.TablePlugin); +})(tinymce); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/all-wcprops new file mode 100644 index 0000000..294ee99 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/js +END +table.js +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/js/table.js +END +row.js +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/js/row.js +END +cell.js +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js +END +merge_cells.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/entries new file mode 100644 index 0000000..4de0ae4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +table.js +file + + + + +2010-06-04T12:51:45.982301Z +a5c89bb3bc1b60989ee80dc001be8900 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +13980 + +row.js +file + + + + +2010-06-04T12:51:45.982301Z +03f071d707c322ce5b0ab53476c8880e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +7306 + +cell.js +file + + + + +2010-06-04T12:51:45.982301Z +59ca8d3606556f1b56bd554a4b0a1f37 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +8554 + +merge_cells.js +file + + + + +2010-06-04T12:51:45.982301Z +3650484c93d6c9a197d03a5c3c3d2e80 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +566 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/text-base/cell.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/text-base/cell.js.svn-base new file mode 100644 index 0000000..f246191 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/.svn/text-base/cell.js.svn-base @@ -0,0 +1,286 @@ +tinyMCEPopup.requireLangPack(); + +var ed; + +function init() { + ed = tinyMCEPopup.editor; + tinyMCEPopup.resizeToInnerSize(); + + document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table'); + document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor') + + var inst = ed; + var tdElm = ed.dom.getParent(ed.selection.getStart(), "td,th"); + var formObj = document.forms[0]; + var st = ed.dom.parseStyle(ed.dom.getAttrib(tdElm, "style")); + + // Get table cell data + var celltype = tdElm.nodeName.toLowerCase(); + var align = ed.dom.getAttrib(tdElm, 'align'); + var valign = ed.dom.getAttrib(tdElm, 'valign'); + var width = trimSize(getStyle(tdElm, 'width', 'width')); + var height = trimSize(getStyle(tdElm, 'height', 'height')); + var bordercolor = convertRGBToHex(getStyle(tdElm, 'bordercolor', 'borderLeftColor')); + var bgcolor = convertRGBToHex(getStyle(tdElm, 'bgcolor', 'backgroundColor')); + var className = ed.dom.getAttrib(tdElm, 'class'); + var backgroundimage = getStyle(tdElm, 'background', 'backgroundImage').replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");; + var id = ed.dom.getAttrib(tdElm, 'id'); + var lang = ed.dom.getAttrib(tdElm, 'lang'); + var dir = ed.dom.getAttrib(tdElm, 'dir'); + var scope = ed.dom.getAttrib(tdElm, 'scope'); + + // Setup form + addClassesToList('class', 'table_cell_styles'); + TinyMCE_EditableSelects.init(); + + if (!ed.dom.hasClass(tdElm, 'mceSelected')) { + formObj.bordercolor.value = bordercolor; + formObj.bgcolor.value = bgcolor; + formObj.backgroundimage.value = backgroundimage; + formObj.width.value = width; + formObj.height.value = height; + formObj.id.value = id; + formObj.lang.value = lang; + formObj.style.value = ed.dom.serializeStyle(st); + selectByValue(formObj, 'align', align); + selectByValue(formObj, 'valign', valign); + selectByValue(formObj, 'class', className, true, true); + selectByValue(formObj, 'celltype', celltype); + selectByValue(formObj, 'dir', dir); + selectByValue(formObj, 'scope', scope); + + // Resize some elements + if (isVisible('backgroundimagebrowser')) + document.getElementById('backgroundimage').style.width = '180px'; + + updateColor('bordercolor_pick', 'bordercolor'); + updateColor('bgcolor_pick', 'bgcolor'); + } else + tinyMCEPopup.dom.hide('action'); +} + +function updateAction() { + var el, inst = ed, tdElm, trElm, tableElm, formObj = document.forms[0]; + + tinyMCEPopup.restoreSelection(); + el = ed.selection.getStart(); + tdElm = ed.dom.getParent(el, "td,th"); + trElm = ed.dom.getParent(el, "tr"); + tableElm = ed.dom.getParent(el, "table"); + + // Cell is selected + if (ed.dom.hasClass(tdElm, 'mceSelected')) { + // Update all selected sells + tinymce.each(ed.dom.select('td.mceSelected,th.mceSelected'), function(td) { + updateCell(td); + }); + + ed.addVisual(); + ed.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + tinyMCEPopup.close(); + return; + } + + ed.execCommand('mceBeginUndoLevel'); + + switch (getSelectValue(formObj, 'action')) { + case "cell": + var celltype = getSelectValue(formObj, 'celltype'); + var scope = getSelectValue(formObj, 'scope'); + + function doUpdate(s) { + if (s) { + updateCell(tdElm); + + ed.addVisual(); + ed.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + tinyMCEPopup.close(); + } + }; + + if (ed.getParam("accessibility_warnings", 1)) { + if (celltype == "th" && scope == "") + tinyMCEPopup.confirm(ed.getLang('table_dlg.missing_scope', '', true), doUpdate); + else + doUpdate(1); + + return; + } + + updateCell(tdElm); + break; + + case "row": + var cell = trElm.firstChild; + + if (cell.nodeName != "TD" && cell.nodeName != "TH") + cell = nextCell(cell); + + do { + cell = updateCell(cell, true); + } while ((cell = nextCell(cell)) != null); + + break; + + case "all": + var rows = tableElm.getElementsByTagName("tr"); + + for (var i=0; i 0) { + tinymce.each(tableElm.rows, function(tr) { + var i; + + for (i = 0; i < tr.cells.length; i++) { + if (dom.hasClass(tr.cells[i], 'mceSelected')) { + updateRow(tr, true); + return; + } + } + }); + + inst.addVisual(); + inst.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + tinyMCEPopup.close(); + return; + } + + inst.execCommand('mceBeginUndoLevel'); + + switch (action) { + case "row": + updateRow(trElm); + break; + + case "all": + var rows = tableElm.getElementsByTagName("tr"); + + for (var i=0; i colLimit) { + tinyMCEPopup.alert(inst.getLang('table_dlg.col_limit').replace(/\{\$cols\}/g, colLimit)); + return false; + } else if (rowLimit && rows > rowLimit) { + tinyMCEPopup.alert(inst.getLang('table_dlg.row_limit').replace(/\{\$rows\}/g, rowLimit)); + return false; + } else if (cellLimit && cols * rows > cellLimit) { + tinyMCEPopup.alert(inst.getLang('table_dlg.cell_limit').replace(/\{\$cells\}/g, cellLimit)); + return false; + } + + // Update table + if (action == "update") { + inst.execCommand('mceBeginUndoLevel'); + + dom.setAttrib(elm, 'cellPadding', cellpadding, true); + dom.setAttrib(elm, 'cellSpacing', cellspacing, true); + dom.setAttrib(elm, 'border', border); + dom.setAttrib(elm, 'align', align); + dom.setAttrib(elm, 'frame', frame); + dom.setAttrib(elm, 'rules', rules); + dom.setAttrib(elm, 'class', className); + dom.setAttrib(elm, 'style', style); + dom.setAttrib(elm, 'id', id); + dom.setAttrib(elm, 'summary', summary); + dom.setAttrib(elm, 'dir', dir); + dom.setAttrib(elm, 'lang', lang); + + capEl = inst.dom.select('caption', elm)[0]; + + if (capEl && !caption) + capEl.parentNode.removeChild(capEl); + + if (!capEl && caption) { + capEl = elm.ownerDocument.createElement('caption'); + + if (!tinymce.isIE) + capEl.innerHTML = '
'; + + elm.insertBefore(capEl, elm.firstChild); + } + + if (width && inst.settings.inline_styles) { + dom.setStyle(elm, 'width', width); + dom.setAttrib(elm, 'width', ''); + } else { + dom.setAttrib(elm, 'width', width, true); + dom.setStyle(elm, 'width', ''); + } + + // Remove these since they are not valid XHTML + dom.setAttrib(elm, 'borderColor', ''); + dom.setAttrib(elm, 'bgColor', ''); + dom.setAttrib(elm, 'background', ''); + + if (height && inst.settings.inline_styles) { + dom.setStyle(elm, 'height', height); + dom.setAttrib(elm, 'height', ''); + } else { + dom.setAttrib(elm, 'height', height, true); + dom.setStyle(elm, 'height', ''); + } + + if (background != '') + elm.style.backgroundImage = "url('" + background + "')"; + else + elm.style.backgroundImage = ''; + +/* if (tinyMCEPopup.getParam("inline_styles")) { + if (width != '') + elm.style.width = getCSSSize(width); + }*/ + + if (bordercolor != "") { + elm.style.borderColor = bordercolor; + elm.style.borderStyle = elm.style.borderStyle == "" ? "solid" : elm.style.borderStyle; + elm.style.borderWidth = border == "" ? "1px" : border; + } else + elm.style.borderColor = ''; + + elm.style.backgroundColor = bgcolor; + elm.style.height = getCSSSize(height); + + inst.addVisual(); + + // Fix for stange MSIE align bug + //elm.outerHTML = elm.outerHTML; + + inst.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + + // Repaint if dimensions changed + if (formObj.width.value != orgTableWidth || formObj.height.value != orgTableHeight) + inst.execCommand('mceRepaint'); + + tinyMCEPopup.close(); + return true; + } + + // Create new table + html += ''); + + tinymce.each('h1,h2,h3,h4,h5,h6,p'.split(','), function(n) { + if (patt) + patt += ','; + + patt += n + ' ._mce_marker'; + }); + + tinymce.each(inst.dom.select(patt), function(n) { + inst.dom.split(inst.dom.getParent(n, 'h1,h2,h3,h4,h5,h6,p'), n); + }); + + dom.setOuterHTML(dom.select('br._mce_marker')[0], html); + } else + inst.execCommand('mceInsertContent', false, html); + + tinymce.each(dom.select('table[_mce_new]'), function(node) { + var td = dom.select('td', node); + + inst.selection.select(td[0], true); + inst.selection.collapse(); + + dom.setAttrib(node, '_mce_new', ''); + }); + + inst.addVisual(); + inst.execCommand('mceEndUndoLevel'); + + tinyMCEPopup.close(); +} + +function makeAttrib(attrib, value) { + var formObj = document.forms[0]; + var valueElm = formObj.elements[attrib]; + + if (typeof(value) == "undefined" || value == null) { + value = ""; + + if (valueElm) + value = valueElm.value; + } + + if (value == "") + return ""; + + // XML encode it + value = value.replace(/&/g, '&'); + value = value.replace(/\"/g, '"'); + value = value.replace(//g, '>'); + + return ' ' + attrib + '="' + value + '"'; +} + +function init() { + tinyMCEPopup.resizeToInnerSize(); + + document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table'); + document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table'); + document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor'); + + var cols = 2, rows = 2, border = tinyMCEPopup.getParam('table_default_border', '0'), cellpadding = tinyMCEPopup.getParam('table_default_cellpadding', ''), cellspacing = tinyMCEPopup.getParam('table_default_cellspacing', ''); + var align = "", width = "", height = "", bordercolor = "", bgcolor = "", className = ""; + var id = "", summary = "", style = "", dir = "", lang = "", background = "", bgcolor = "", bordercolor = "", rules, frame; + var inst = tinyMCEPopup.editor, dom = inst.dom; + var formObj = document.forms[0]; + var elm = dom.getParent(inst.selection.getNode(), "table"); + + action = tinyMCEPopup.getWindowArg('action'); + + if (!action) + action = elm ? "update" : "insert"; + + if (elm && action != "insert") { + var rowsAr = elm.rows; + var cols = 0; + for (var i=0; i cols) + cols = rowsAr[i].cells.length; + + cols = cols; + rows = rowsAr.length; + + st = dom.parseStyle(dom.getAttrib(elm, "style")); + border = trimSize(getStyle(elm, 'border', 'borderWidth')); + cellpadding = dom.getAttrib(elm, 'cellpadding', ""); + cellspacing = dom.getAttrib(elm, 'cellspacing', ""); + width = trimSize(getStyle(elm, 'width', 'width')); + height = trimSize(getStyle(elm, 'height', 'height')); + bordercolor = convertRGBToHex(getStyle(elm, 'bordercolor', 'borderLeftColor')); + bgcolor = convertRGBToHex(getStyle(elm, 'bgcolor', 'backgroundColor')); + align = dom.getAttrib(elm, 'align', align); + frame = dom.getAttrib(elm, 'frame'); + rules = dom.getAttrib(elm, 'rules'); + className = tinymce.trim(dom.getAttrib(elm, 'class').replace(/mceItem.+/g, '')); + id = dom.getAttrib(elm, 'id'); + summary = dom.getAttrib(elm, 'summary'); + style = dom.serializeStyle(st); + dir = dom.getAttrib(elm, 'dir'); + lang = dom.getAttrib(elm, 'lang'); + background = getStyle(elm, 'background', 'backgroundImage').replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + formObj.caption.checked = elm.getElementsByTagName('caption').length > 0; + + orgTableWidth = width; + orgTableHeight = height; + + action = "update"; + formObj.insert.value = inst.getLang('update'); + } + + addClassesToList('class', "table_styles"); + TinyMCE_EditableSelects.init(); + + // Update form + selectByValue(formObj, 'align', align); + selectByValue(formObj, 'tframe', frame); + selectByValue(formObj, 'rules', rules); + selectByValue(formObj, 'class', className, true, true); + formObj.cols.value = cols; + formObj.rows.value = rows; + formObj.border.value = border; + formObj.cellpadding.value = cellpadding; + formObj.cellspacing.value = cellspacing; + formObj.width.value = width; + formObj.height.value = height; + formObj.bordercolor.value = bordercolor; + formObj.bgcolor.value = bgcolor; + formObj.id.value = id; + formObj.summary.value = summary; + formObj.style.value = style; + formObj.dir.value = dir; + formObj.lang.value = lang; + formObj.backgroundimage.value = background; + + updateColor('bordercolor_pick', 'bordercolor'); + updateColor('bgcolor_pick', 'bgcolor'); + + // Resize some elements + if (isVisible('backgroundimagebrowser')) + document.getElementById('backgroundimage').style.width = '180px'; + + // Disable some fields in update mode + if (action == "update") { + formObj.cols.disabled = true; + formObj.rows.disabled = true; + } +} + +function changedSize() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + +/* var width = formObj.width.value; + if (width != "") + st['width'] = tinyMCEPopup.getParam("inline_styles") ? getCSSSize(width) : ""; + else + st['width'] = "";*/ + + var height = formObj.height.value; + if (height != "") + st['height'] = getCSSSize(height); + else + st['height'] = ""; + + formObj.style.value = dom.serializeStyle(st); +} + +function changedBackgroundImage() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + st['background-image'] = "url('" + formObj.backgroundimage.value + "')"; + + formObj.style.value = dom.serializeStyle(st); +} + +function changedBorder() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + // Update border width if the element has a color + if (formObj.border.value != "" && formObj.bordercolor.value != "") + st['border-width'] = formObj.border.value + "px"; + + formObj.style.value = dom.serializeStyle(st); +} + +function changedColor() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + st['background-color'] = formObj.bgcolor.value; + + if (formObj.bordercolor.value != "") { + st['border-color'] = formObj.bordercolor.value; + + // Add border-width if it's missing + if (!st['border-width']) + st['border-width'] = formObj.border.value == "" ? "1px" : formObj.border.value + "px"; + } + + formObj.style.value = dom.serializeStyle(st); +} + +function changedStyle() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + if (st['background-image']) + formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + else + formObj.backgroundimage.value = ''; + + if (st['width']) + formObj.width.value = trimSize(st['width']); + + if (st['height']) + formObj.height.value = trimSize(st['height']); + + if (st['background-color']) { + formObj.bgcolor.value = st['background-color']; + updateColor('bgcolor_pick','bgcolor'); + } + + if (st['border-color']) { + formObj.bordercolor.value = st['border-color']; + updateColor('bordercolor_pick','bordercolor'); + } +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js new file mode 100644 index 0000000..f246191 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js @@ -0,0 +1,286 @@ +tinyMCEPopup.requireLangPack(); + +var ed; + +function init() { + ed = tinyMCEPopup.editor; + tinyMCEPopup.resizeToInnerSize(); + + document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table'); + document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor') + + var inst = ed; + var tdElm = ed.dom.getParent(ed.selection.getStart(), "td,th"); + var formObj = document.forms[0]; + var st = ed.dom.parseStyle(ed.dom.getAttrib(tdElm, "style")); + + // Get table cell data + var celltype = tdElm.nodeName.toLowerCase(); + var align = ed.dom.getAttrib(tdElm, 'align'); + var valign = ed.dom.getAttrib(tdElm, 'valign'); + var width = trimSize(getStyle(tdElm, 'width', 'width')); + var height = trimSize(getStyle(tdElm, 'height', 'height')); + var bordercolor = convertRGBToHex(getStyle(tdElm, 'bordercolor', 'borderLeftColor')); + var bgcolor = convertRGBToHex(getStyle(tdElm, 'bgcolor', 'backgroundColor')); + var className = ed.dom.getAttrib(tdElm, 'class'); + var backgroundimage = getStyle(tdElm, 'background', 'backgroundImage').replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");; + var id = ed.dom.getAttrib(tdElm, 'id'); + var lang = ed.dom.getAttrib(tdElm, 'lang'); + var dir = ed.dom.getAttrib(tdElm, 'dir'); + var scope = ed.dom.getAttrib(tdElm, 'scope'); + + // Setup form + addClassesToList('class', 'table_cell_styles'); + TinyMCE_EditableSelects.init(); + + if (!ed.dom.hasClass(tdElm, 'mceSelected')) { + formObj.bordercolor.value = bordercolor; + formObj.bgcolor.value = bgcolor; + formObj.backgroundimage.value = backgroundimage; + formObj.width.value = width; + formObj.height.value = height; + formObj.id.value = id; + formObj.lang.value = lang; + formObj.style.value = ed.dom.serializeStyle(st); + selectByValue(formObj, 'align', align); + selectByValue(formObj, 'valign', valign); + selectByValue(formObj, 'class', className, true, true); + selectByValue(formObj, 'celltype', celltype); + selectByValue(formObj, 'dir', dir); + selectByValue(formObj, 'scope', scope); + + // Resize some elements + if (isVisible('backgroundimagebrowser')) + document.getElementById('backgroundimage').style.width = '180px'; + + updateColor('bordercolor_pick', 'bordercolor'); + updateColor('bgcolor_pick', 'bgcolor'); + } else + tinyMCEPopup.dom.hide('action'); +} + +function updateAction() { + var el, inst = ed, tdElm, trElm, tableElm, formObj = document.forms[0]; + + tinyMCEPopup.restoreSelection(); + el = ed.selection.getStart(); + tdElm = ed.dom.getParent(el, "td,th"); + trElm = ed.dom.getParent(el, "tr"); + tableElm = ed.dom.getParent(el, "table"); + + // Cell is selected + if (ed.dom.hasClass(tdElm, 'mceSelected')) { + // Update all selected sells + tinymce.each(ed.dom.select('td.mceSelected,th.mceSelected'), function(td) { + updateCell(td); + }); + + ed.addVisual(); + ed.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + tinyMCEPopup.close(); + return; + } + + ed.execCommand('mceBeginUndoLevel'); + + switch (getSelectValue(formObj, 'action')) { + case "cell": + var celltype = getSelectValue(formObj, 'celltype'); + var scope = getSelectValue(formObj, 'scope'); + + function doUpdate(s) { + if (s) { + updateCell(tdElm); + + ed.addVisual(); + ed.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + tinyMCEPopup.close(); + } + }; + + if (ed.getParam("accessibility_warnings", 1)) { + if (celltype == "th" && scope == "") + tinyMCEPopup.confirm(ed.getLang('table_dlg.missing_scope', '', true), doUpdate); + else + doUpdate(1); + + return; + } + + updateCell(tdElm); + break; + + case "row": + var cell = trElm.firstChild; + + if (cell.nodeName != "TD" && cell.nodeName != "TH") + cell = nextCell(cell); + + do { + cell = updateCell(cell, true); + } while ((cell = nextCell(cell)) != null); + + break; + + case "all": + var rows = tableElm.getElementsByTagName("tr"); + + for (var i=0; i 0) { + tinymce.each(tableElm.rows, function(tr) { + var i; + + for (i = 0; i < tr.cells.length; i++) { + if (dom.hasClass(tr.cells[i], 'mceSelected')) { + updateRow(tr, true); + return; + } + } + }); + + inst.addVisual(); + inst.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + tinyMCEPopup.close(); + return; + } + + inst.execCommand('mceBeginUndoLevel'); + + switch (action) { + case "row": + updateRow(trElm); + break; + + case "all": + var rows = tableElm.getElementsByTagName("tr"); + + for (var i=0; i colLimit) { + tinyMCEPopup.alert(inst.getLang('table_dlg.col_limit').replace(/\{\$cols\}/g, colLimit)); + return false; + } else if (rowLimit && rows > rowLimit) { + tinyMCEPopup.alert(inst.getLang('table_dlg.row_limit').replace(/\{\$rows\}/g, rowLimit)); + return false; + } else if (cellLimit && cols * rows > cellLimit) { + tinyMCEPopup.alert(inst.getLang('table_dlg.cell_limit').replace(/\{\$cells\}/g, cellLimit)); + return false; + } + + // Update table + if (action == "update") { + inst.execCommand('mceBeginUndoLevel'); + + dom.setAttrib(elm, 'cellPadding', cellpadding, true); + dom.setAttrib(elm, 'cellSpacing', cellspacing, true); + dom.setAttrib(elm, 'border', border); + dom.setAttrib(elm, 'align', align); + dom.setAttrib(elm, 'frame', frame); + dom.setAttrib(elm, 'rules', rules); + dom.setAttrib(elm, 'class', className); + dom.setAttrib(elm, 'style', style); + dom.setAttrib(elm, 'id', id); + dom.setAttrib(elm, 'summary', summary); + dom.setAttrib(elm, 'dir', dir); + dom.setAttrib(elm, 'lang', lang); + + capEl = inst.dom.select('caption', elm)[0]; + + if (capEl && !caption) + capEl.parentNode.removeChild(capEl); + + if (!capEl && caption) { + capEl = elm.ownerDocument.createElement('caption'); + + if (!tinymce.isIE) + capEl.innerHTML = '
'; + + elm.insertBefore(capEl, elm.firstChild); + } + + if (width && inst.settings.inline_styles) { + dom.setStyle(elm, 'width', width); + dom.setAttrib(elm, 'width', ''); + } else { + dom.setAttrib(elm, 'width', width, true); + dom.setStyle(elm, 'width', ''); + } + + // Remove these since they are not valid XHTML + dom.setAttrib(elm, 'borderColor', ''); + dom.setAttrib(elm, 'bgColor', ''); + dom.setAttrib(elm, 'background', ''); + + if (height && inst.settings.inline_styles) { + dom.setStyle(elm, 'height', height); + dom.setAttrib(elm, 'height', ''); + } else { + dom.setAttrib(elm, 'height', height, true); + dom.setStyle(elm, 'height', ''); + } + + if (background != '') + elm.style.backgroundImage = "url('" + background + "')"; + else + elm.style.backgroundImage = ''; + +/* if (tinyMCEPopup.getParam("inline_styles")) { + if (width != '') + elm.style.width = getCSSSize(width); + }*/ + + if (bordercolor != "") { + elm.style.borderColor = bordercolor; + elm.style.borderStyle = elm.style.borderStyle == "" ? "solid" : elm.style.borderStyle; + elm.style.borderWidth = border == "" ? "1px" : border; + } else + elm.style.borderColor = ''; + + elm.style.backgroundColor = bgcolor; + elm.style.height = getCSSSize(height); + + inst.addVisual(); + + // Fix for stange MSIE align bug + //elm.outerHTML = elm.outerHTML; + + inst.nodeChanged(); + inst.execCommand('mceEndUndoLevel'); + + // Repaint if dimensions changed + if (formObj.width.value != orgTableWidth || formObj.height.value != orgTableHeight) + inst.execCommand('mceRepaint'); + + tinyMCEPopup.close(); + return true; + } + + // Create new table + html += ''); + + tinymce.each('h1,h2,h3,h4,h5,h6,p'.split(','), function(n) { + if (patt) + patt += ','; + + patt += n + ' ._mce_marker'; + }); + + tinymce.each(inst.dom.select(patt), function(n) { + inst.dom.split(inst.dom.getParent(n, 'h1,h2,h3,h4,h5,h6,p'), n); + }); + + dom.setOuterHTML(dom.select('br._mce_marker')[0], html); + } else + inst.execCommand('mceInsertContent', false, html); + + tinymce.each(dom.select('table[_mce_new]'), function(node) { + var td = dom.select('td', node); + + inst.selection.select(td[0], true); + inst.selection.collapse(); + + dom.setAttrib(node, '_mce_new', ''); + }); + + inst.addVisual(); + inst.execCommand('mceEndUndoLevel'); + + tinyMCEPopup.close(); +} + +function makeAttrib(attrib, value) { + var formObj = document.forms[0]; + var valueElm = formObj.elements[attrib]; + + if (typeof(value) == "undefined" || value == null) { + value = ""; + + if (valueElm) + value = valueElm.value; + } + + if (value == "") + return ""; + + // XML encode it + value = value.replace(/&/g, '&'); + value = value.replace(/\"/g, '"'); + value = value.replace(//g, '>'); + + return ' ' + attrib + '="' + value + '"'; +} + +function init() { + tinyMCEPopup.resizeToInnerSize(); + + document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table'); + document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table'); + document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor'); + document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor'); + + var cols = 2, rows = 2, border = tinyMCEPopup.getParam('table_default_border', '0'), cellpadding = tinyMCEPopup.getParam('table_default_cellpadding', ''), cellspacing = tinyMCEPopup.getParam('table_default_cellspacing', ''); + var align = "", width = "", height = "", bordercolor = "", bgcolor = "", className = ""; + var id = "", summary = "", style = "", dir = "", lang = "", background = "", bgcolor = "", bordercolor = "", rules, frame; + var inst = tinyMCEPopup.editor, dom = inst.dom; + var formObj = document.forms[0]; + var elm = dom.getParent(inst.selection.getNode(), "table"); + + action = tinyMCEPopup.getWindowArg('action'); + + if (!action) + action = elm ? "update" : "insert"; + + if (elm && action != "insert") { + var rowsAr = elm.rows; + var cols = 0; + for (var i=0; i cols) + cols = rowsAr[i].cells.length; + + cols = cols; + rows = rowsAr.length; + + st = dom.parseStyle(dom.getAttrib(elm, "style")); + border = trimSize(getStyle(elm, 'border', 'borderWidth')); + cellpadding = dom.getAttrib(elm, 'cellpadding', ""); + cellspacing = dom.getAttrib(elm, 'cellspacing', ""); + width = trimSize(getStyle(elm, 'width', 'width')); + height = trimSize(getStyle(elm, 'height', 'height')); + bordercolor = convertRGBToHex(getStyle(elm, 'bordercolor', 'borderLeftColor')); + bgcolor = convertRGBToHex(getStyle(elm, 'bgcolor', 'backgroundColor')); + align = dom.getAttrib(elm, 'align', align); + frame = dom.getAttrib(elm, 'frame'); + rules = dom.getAttrib(elm, 'rules'); + className = tinymce.trim(dom.getAttrib(elm, 'class').replace(/mceItem.+/g, '')); + id = dom.getAttrib(elm, 'id'); + summary = dom.getAttrib(elm, 'summary'); + style = dom.serializeStyle(st); + dir = dom.getAttrib(elm, 'dir'); + lang = dom.getAttrib(elm, 'lang'); + background = getStyle(elm, 'background', 'backgroundImage').replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + formObj.caption.checked = elm.getElementsByTagName('caption').length > 0; + + orgTableWidth = width; + orgTableHeight = height; + + action = "update"; + formObj.insert.value = inst.getLang('update'); + } + + addClassesToList('class', "table_styles"); + TinyMCE_EditableSelects.init(); + + // Update form + selectByValue(formObj, 'align', align); + selectByValue(formObj, 'tframe', frame); + selectByValue(formObj, 'rules', rules); + selectByValue(formObj, 'class', className, true, true); + formObj.cols.value = cols; + formObj.rows.value = rows; + formObj.border.value = border; + formObj.cellpadding.value = cellpadding; + formObj.cellspacing.value = cellspacing; + formObj.width.value = width; + formObj.height.value = height; + formObj.bordercolor.value = bordercolor; + formObj.bgcolor.value = bgcolor; + formObj.id.value = id; + formObj.summary.value = summary; + formObj.style.value = style; + formObj.dir.value = dir; + formObj.lang.value = lang; + formObj.backgroundimage.value = background; + + updateColor('bordercolor_pick', 'bordercolor'); + updateColor('bgcolor_pick', 'bgcolor'); + + // Resize some elements + if (isVisible('backgroundimagebrowser')) + document.getElementById('backgroundimage').style.width = '180px'; + + // Disable some fields in update mode + if (action == "update") { + formObj.cols.disabled = true; + formObj.rows.disabled = true; + } +} + +function changedSize() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + +/* var width = formObj.width.value; + if (width != "") + st['width'] = tinyMCEPopup.getParam("inline_styles") ? getCSSSize(width) : ""; + else + st['width'] = "";*/ + + var height = formObj.height.value; + if (height != "") + st['height'] = getCSSSize(height); + else + st['height'] = ""; + + formObj.style.value = dom.serializeStyle(st); +} + +function changedBackgroundImage() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + st['background-image'] = "url('" + formObj.backgroundimage.value + "')"; + + formObj.style.value = dom.serializeStyle(st); +} + +function changedBorder() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + // Update border width if the element has a color + if (formObj.border.value != "" && formObj.bordercolor.value != "") + st['border-width'] = formObj.border.value + "px"; + + formObj.style.value = dom.serializeStyle(st); +} + +function changedColor() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + st['background-color'] = formObj.bgcolor.value; + + if (formObj.bordercolor.value != "") { + st['border-color'] = formObj.bordercolor.value; + + // Add border-width if it's missing + if (!st['border-width']) + st['border-width'] = formObj.border.value == "" ? "1px" : formObj.border.value + "px"; + } + + formObj.style.value = dom.serializeStyle(st); +} + +function changedStyle() { + var formObj = document.forms[0]; + var st = dom.parseStyle(formObj.style.value); + + if (st['background-image']) + formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1"); + else + formObj.backgroundimage.value = ''; + + if (st['width']) + formObj.width.value = trimSize(st['width']); + + if (st['height']) + formObj.height.value = trimSize(st['height']); + + if (st['background-color']) { + formObj.bgcolor.value = st['background-color']; + updateColor('bgcolor_pick','bgcolor'); + } + + if (st['border-color']) { + formObj.bordercolor.value = st['border-color']; + updateColor('bordercolor_pick','bordercolor'); + } +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/all-wcprops new file mode 100644 index 0000000..4d2ef00 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/langs +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js +END +fr_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/langs/fr_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/langs/de_dlg.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/entries new file mode 100644 index 0000000..ec25731 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/table/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +en_dlg.js +file + + + + +2010-06-04T12:51:45.865616Z +9828ab260a60ea25a88b7657c937f666 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2137 + +fr_dlg.js +file + + + + +2010-06-04T12:51:45.868948Z +aacc2a006f6a25e0bfe9f5199a8ea21f +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2702 + +de_dlg.js +file + + + + +2010-06-04T12:51:45.868948Z +afcca9939e085b9710509cdb0f495acc +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2474 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..850ffc9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,74 @@ +tinyMCE.addI18n('de.table_dlg',{ +general_tab:"Allgemein", +advanced_tab:"Erweitert", +general_props:"Allgemeine Einstellungen", +advanced_props:"Erweiterte Einstellungen", +rowtype:"Gruppierung", +title:"Tabelle einf\u00FCgen/bearbeiten", +width:"Breite", +height:"H\u00F6he", +cols:"Spalten", +rows:"Zeilen", +cellspacing:"Zellenabstand", +cellpadding:"Abstand innerhalb der Zellen", +border:"Rahmen", +align:"Ausrichtung", +align_default:"Standard", +align_left:"Links", +align_right:"Rechts", +align_middle:"Mittig", +row_title:"Eigenschaften der Zeile", +cell_title:"Eigenschaften der Zelle", +cell_type:"Zellentyp", +valign:"Vertikale Ausrichtung", +align_top:"Oben", +align_bottom:"Unten", +bordercolor:"Rahmenfarbe", +bgcolor:"Hintergrundfarbe", +merge_cells_title:"Zellen vereinen", +id:"ID", +style:"Format", +langdir:"Schriftrichtung", +langcode:"Sprachcode", +mime:"MIME-Type des Inhalts", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +bgimage:"Hintergrundbild", +summary:"Zusammenfassung", +td:"Textzelle", +th:"\u00DCberschrift", +cell_cell:"Diese Zelle ver\u00E4ndern", +cell_row:"Alle Zellen in dieser Zeile ver\u00E4ndern", +cell_all:"Alle Zellen der Tabelle ver\u00E4ndern", +row_row:"Diese Zeile ver\u00E4ndern", +row_odd:"Ungerade Zeilen ver\u00E4ndern", +row_even:"Gerade Zeilen ver\u00E4ndern", +row_all:"Alle Zeilen ver\u00E4ndern", +thead:"Tabellenkopf", +tbody:"Tabelleninhalt", +tfoot:"Tabellenfu\u00DF", +scope:"Bezug", +rowgroup:"Vertikal gruppieren", +colgroup:"Horizontal gruppieren", +col_limit:"Sie haben die maximale Spaltenzahl von {$cols} \u00FCberschritten.", +row_limit:"Sie haben die maximale Zeilenzahl von {$rows} \u00FCberschritten.", +cell_limit:"Sie haben die maximale Zellenzahl von {$cells} \u00FCberschritten.", +missing_scope:"Wollen Sie wirklich keine Beziehung f\u00FCr diese \u00DCberschrift angeben? Benutzer mit k\u00F6rperlichen Einschr\u00E4nkungen k\u00F6nnten Schwierigkeiten haben, den Inhalt der Tabelle zu verstehen.", +caption:"Beschriftung der Tabelle", +frame:"Rahmen", +frame_none:"keine", +frame_groups:"zwischen Gruppen", +frame_rows:"zwischen Zeilen", +frame_cols:"zwischen Spalten", +frame_all:"zwischen allen Zellen", +rules:"Gitter", +rules_void:"keins", +rules_above:"nur oben", +rules_below:"nur unten", +rules_hsides:"oben und unten", +rules_lhs:"nur links", +rules_rhs:"nur rechts", +rules_vsides:"links und rechts", +rules_box:"alle 4 Seiten (Box)", +rules_border:"alle 4 Seiten (Border)" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..000332a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,74 @@ +tinyMCE.addI18n('en.table_dlg',{ +general_tab:"General", +advanced_tab:"Advanced", +general_props:"General properties", +advanced_props:"Advanced properties", +rowtype:"Row in table part", +title:"Insert/Modify table", +width:"Width", +height:"Height", +cols:"Cols", +rows:"Rows", +cellspacing:"Cellspacing", +cellpadding:"Cellpadding", +border:"Border", +align:"Alignment", +align_default:"Default", +align_left:"Left", +align_right:"Right", +align_middle:"Center", +row_title:"Table row properties", +cell_title:"Table cell properties", +cell_type:"Cell type", +valign:"Vertical alignment", +align_top:"Top", +align_bottom:"Bottom", +bordercolor:"Border color", +bgcolor:"Background color", +merge_cells_title:"Merge table cells", +id:"Id", +style:"Style", +langdir:"Language direction", +langcode:"Language code", +mime:"Target MIME type", +ltr:"Left to right", +rtl:"Right to left", +bgimage:"Background image", +summary:"Summary", +td:"Data", +th:"Header", +cell_cell:"Update current cell", +cell_row:"Update all cells in row", +cell_all:"Update all cells in table", +row_row:"Update current row", +row_odd:"Update odd rows in table", +row_even:"Update even rows in table", +row_all:"Update all rows in table", +thead:"Table Head", +tbody:"Table Body", +tfoot:"Table Foot", +scope:"Scope", +rowgroup:"Row Group", +colgroup:"Col Group", +col_limit:"You've exceeded the maximum number of columns of {$cols}.", +row_limit:"You've exceeded the maximum number of rows of {$rows}.", +cell_limit:"You've exceeded the maximum number of cells of {$cells}.", +missing_scope:"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.", +caption:"Table caption", +frame:"Frame", +frame_none:"none", +frame_groups:"groups", +frame_rows:"rows", +frame_cols:"cols", +frame_all:"all", +rules:"Rules", +rules_void:"void", +rules_above:"above", +rules_below:"below", +rules_hsides:"hsides", +rules_lhs:"lhs", +rules_rhs:"rhs", +rules_vsides:"vsides", +rules_box:"box", +rules_border:"border" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/fr_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/fr_dlg.js.svn-base new file mode 100644 index 0000000..3430710 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/.svn/text-base/fr_dlg.js.svn-base @@ -0,0 +1,74 @@ +tinyMCE.addI18n('fr.table_dlg',{ +general_tab:"G\u00E9n\u00E9ral", +advanced_tab:"Avanc\u00E9", +general_props:"Propri\u00E9t\u00E9s g\u00E9n\u00E9rales", +advanced_props:"Propri\u00E9t\u00E9s avanc\u00E9es", +rowtype:"Type de ligne", +title:"Ins\u00E9rer / modifier un tableau", +width:"Largeur", +height:"Hauteur", +cols:"Colonnes", +rows:"Lignes", +cellspacing:"Espacement entre les cellules", +cellpadding:"Espacement dans les cellules", +border:"Bordure", +align:"Alignement", +align_default:"Par d\u00E9faut", +align_left:"Gauche", +align_right:"Droite", +align_middle:"Centr\u00E9", +row_title:"Propri\u00E9t\u00E9s de la ligne", +cell_title:"Propri\u00E9t\u00E9s de la cellule", +cell_type:"Type de cellule", +valign:"Alignement vertical", +align_top:"Haut", +align_bottom:"Bas", +bordercolor:"Couleur de la bordure", +bgcolor:"Couleur du fond", +merge_cells_title:"Fusionner les cellules", +id:"Id", +style:"Style", +langdir:"Sens de lecture", +langcode:"Code de la langue", +mime:"Type MIME de la cible", +ltr:"De gauche \u00E0 droite", +rtl:"de droite \u00E0 gauche", +bgimage:"Image de fond", +summary:"R\u00E9sum\u00E9", +td:"Donn\u00E9es", +th:"Titre", +cell_cell:"Mettre \u00E0 jour la cellule courante", +cell_row:"Mettre \u00E0 jour toutes les cellules de la ligne", +cell_all:"Mettre \u00E0 jour toutes les cellules du tableau", +row_row:"Mettre \u00E0 jour la ligne courante", +row_odd:"Mettre \u00E0 jour les lignes impaires", +row_even:"Mettre \u00E0 jour les lignes paires", +row_all:"Mettre \u00E0 jour toutes les lignes du tableau", +thead:"En-t\u00EAtes de tableau", +tbody:"Corps de tableau", +tfoot:"Pied de tableau", +scope:"Port\u00E9e", +rowgroup:"Groupe de lignes", +colgroup:"Groupe de colonnes", +col_limit:"Vous avez d\u00E9pass\u00E9 le nombre maximum de colonnes ({$cols}).", +row_limit:"Vous avez d\u00E9pass\u00E9 le nombre maximum de lignes ({$rows}).", +cell_limit:"Vous avez d\u00E9pass\u00E9 le nombre maximum de cellules ({$cells}).", +missing_scope:"Souhaitez-vous vraiment continuer sans sp\u00E9cifier de port\u00E9e pour cette cellule de titre ? Sans port\u00E9e, cela peut \u00EAtre difficile pour certains usagers \u00E0 probl\u00E8mes de comprendre le contenu ou les donn\u00E9es affich\u00E9es dans le tableau.", +caption:"Afficher la l\u00E9gende du tableau", +frame:"Cadre", +frame_none:"aucun", +frame_groups:"groupe", +frame_rows:"lignes", +frame_cols:"colonnes", +frame_all:"tous", +rules:"R\u00E8gles", +rules_void:"aucune", +rules_above:"au-dessus", +rules_below:"au-dessous", +rules_hsides:"horizontales", +rules_lhs:"\u00E0 gauche", +rules_rhs:"\u00E0 droite", +rules_vsides:"verticales", +rules_box:"bo\u00EEte", +rules_border:"bordure" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/de_dlg.js new file mode 100644 index 0000000..850ffc9 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/de_dlg.js @@ -0,0 +1,74 @@ +tinyMCE.addI18n('de.table_dlg',{ +general_tab:"Allgemein", +advanced_tab:"Erweitert", +general_props:"Allgemeine Einstellungen", +advanced_props:"Erweiterte Einstellungen", +rowtype:"Gruppierung", +title:"Tabelle einf\u00FCgen/bearbeiten", +width:"Breite", +height:"H\u00F6he", +cols:"Spalten", +rows:"Zeilen", +cellspacing:"Zellenabstand", +cellpadding:"Abstand innerhalb der Zellen", +border:"Rahmen", +align:"Ausrichtung", +align_default:"Standard", +align_left:"Links", +align_right:"Rechts", +align_middle:"Mittig", +row_title:"Eigenschaften der Zeile", +cell_title:"Eigenschaften der Zelle", +cell_type:"Zellentyp", +valign:"Vertikale Ausrichtung", +align_top:"Oben", +align_bottom:"Unten", +bordercolor:"Rahmenfarbe", +bgcolor:"Hintergrundfarbe", +merge_cells_title:"Zellen vereinen", +id:"ID", +style:"Format", +langdir:"Schriftrichtung", +langcode:"Sprachcode", +mime:"MIME-Type des Inhalts", +ltr:"Links nach rechts", +rtl:"Rechts nach links", +bgimage:"Hintergrundbild", +summary:"Zusammenfassung", +td:"Textzelle", +th:"\u00DCberschrift", +cell_cell:"Diese Zelle ver\u00E4ndern", +cell_row:"Alle Zellen in dieser Zeile ver\u00E4ndern", +cell_all:"Alle Zellen der Tabelle ver\u00E4ndern", +row_row:"Diese Zeile ver\u00E4ndern", +row_odd:"Ungerade Zeilen ver\u00E4ndern", +row_even:"Gerade Zeilen ver\u00E4ndern", +row_all:"Alle Zeilen ver\u00E4ndern", +thead:"Tabellenkopf", +tbody:"Tabelleninhalt", +tfoot:"Tabellenfu\u00DF", +scope:"Bezug", +rowgroup:"Vertikal gruppieren", +colgroup:"Horizontal gruppieren", +col_limit:"Sie haben die maximale Spaltenzahl von {$cols} \u00FCberschritten.", +row_limit:"Sie haben die maximale Zeilenzahl von {$rows} \u00FCberschritten.", +cell_limit:"Sie haben die maximale Zellenzahl von {$cells} \u00FCberschritten.", +missing_scope:"Wollen Sie wirklich keine Beziehung f\u00FCr diese \u00DCberschrift angeben? Benutzer mit k\u00F6rperlichen Einschr\u00E4nkungen k\u00F6nnten Schwierigkeiten haben, den Inhalt der Tabelle zu verstehen.", +caption:"Beschriftung der Tabelle", +frame:"Rahmen", +frame_none:"keine", +frame_groups:"zwischen Gruppen", +frame_rows:"zwischen Zeilen", +frame_cols:"zwischen Spalten", +frame_all:"zwischen allen Zellen", +rules:"Gitter", +rules_void:"keins", +rules_above:"nur oben", +rules_below:"nur unten", +rules_hsides:"oben und unten", +rules_lhs:"nur links", +rules_rhs:"nur rechts", +rules_vsides:"links und rechts", +rules_box:"alle 4 Seiten (Box)", +rules_border:"alle 4 Seiten (Border)" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js new file mode 100644 index 0000000..000332a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js @@ -0,0 +1,74 @@ +tinyMCE.addI18n('en.table_dlg',{ +general_tab:"General", +advanced_tab:"Advanced", +general_props:"General properties", +advanced_props:"Advanced properties", +rowtype:"Row in table part", +title:"Insert/Modify table", +width:"Width", +height:"Height", +cols:"Cols", +rows:"Rows", +cellspacing:"Cellspacing", +cellpadding:"Cellpadding", +border:"Border", +align:"Alignment", +align_default:"Default", +align_left:"Left", +align_right:"Right", +align_middle:"Center", +row_title:"Table row properties", +cell_title:"Table cell properties", +cell_type:"Cell type", +valign:"Vertical alignment", +align_top:"Top", +align_bottom:"Bottom", +bordercolor:"Border color", +bgcolor:"Background color", +merge_cells_title:"Merge table cells", +id:"Id", +style:"Style", +langdir:"Language direction", +langcode:"Language code", +mime:"Target MIME type", +ltr:"Left to right", +rtl:"Right to left", +bgimage:"Background image", +summary:"Summary", +td:"Data", +th:"Header", +cell_cell:"Update current cell", +cell_row:"Update all cells in row", +cell_all:"Update all cells in table", +row_row:"Update current row", +row_odd:"Update odd rows in table", +row_even:"Update even rows in table", +row_all:"Update all rows in table", +thead:"Table Head", +tbody:"Table Body", +tfoot:"Table Foot", +scope:"Scope", +rowgroup:"Row Group", +colgroup:"Col Group", +col_limit:"You've exceeded the maximum number of columns of {$cols}.", +row_limit:"You've exceeded the maximum number of rows of {$rows}.", +cell_limit:"You've exceeded the maximum number of cells of {$cells}.", +missing_scope:"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.", +caption:"Table caption", +frame:"Frame", +frame_none:"none", +frame_groups:"groups", +frame_rows:"rows", +frame_cols:"cols", +frame_all:"all", +rules:"Rules", +rules_void:"void", +rules_above:"above", +rules_below:"below", +rules_hsides:"hsides", +rules_lhs:"lhs", +rules_rhs:"rhs", +rules_vsides:"vsides", +rules_box:"box", +rules_border:"border" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/fr_dlg.js b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/fr_dlg.js new file mode 100644 index 0000000..3430710 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/langs/fr_dlg.js @@ -0,0 +1,74 @@ +tinyMCE.addI18n('fr.table_dlg',{ +general_tab:"G\u00E9n\u00E9ral", +advanced_tab:"Avanc\u00E9", +general_props:"Propri\u00E9t\u00E9s g\u00E9n\u00E9rales", +advanced_props:"Propri\u00E9t\u00E9s avanc\u00E9es", +rowtype:"Type de ligne", +title:"Ins\u00E9rer / modifier un tableau", +width:"Largeur", +height:"Hauteur", +cols:"Colonnes", +rows:"Lignes", +cellspacing:"Espacement entre les cellules", +cellpadding:"Espacement dans les cellules", +border:"Bordure", +align:"Alignement", +align_default:"Par d\u00E9faut", +align_left:"Gauche", +align_right:"Droite", +align_middle:"Centr\u00E9", +row_title:"Propri\u00E9t\u00E9s de la ligne", +cell_title:"Propri\u00E9t\u00E9s de la cellule", +cell_type:"Type de cellule", +valign:"Alignement vertical", +align_top:"Haut", +align_bottom:"Bas", +bordercolor:"Couleur de la bordure", +bgcolor:"Couleur du fond", +merge_cells_title:"Fusionner les cellules", +id:"Id", +style:"Style", +langdir:"Sens de lecture", +langcode:"Code de la langue", +mime:"Type MIME de la cible", +ltr:"De gauche \u00E0 droite", +rtl:"de droite \u00E0 gauche", +bgimage:"Image de fond", +summary:"R\u00E9sum\u00E9", +td:"Donn\u00E9es", +th:"Titre", +cell_cell:"Mettre \u00E0 jour la cellule courante", +cell_row:"Mettre \u00E0 jour toutes les cellules de la ligne", +cell_all:"Mettre \u00E0 jour toutes les cellules du tableau", +row_row:"Mettre \u00E0 jour la ligne courante", +row_odd:"Mettre \u00E0 jour les lignes impaires", +row_even:"Mettre \u00E0 jour les lignes paires", +row_all:"Mettre \u00E0 jour toutes les lignes du tableau", +thead:"En-t\u00EAtes de tableau", +tbody:"Corps de tableau", +tfoot:"Pied de tableau", +scope:"Port\u00E9e", +rowgroup:"Groupe de lignes", +colgroup:"Groupe de colonnes", +col_limit:"Vous avez d\u00E9pass\u00E9 le nombre maximum de colonnes ({$cols}).", +row_limit:"Vous avez d\u00E9pass\u00E9 le nombre maximum de lignes ({$rows}).", +cell_limit:"Vous avez d\u00E9pass\u00E9 le nombre maximum de cellules ({$cells}).", +missing_scope:"Souhaitez-vous vraiment continuer sans sp\u00E9cifier de port\u00E9e pour cette cellule de titre ? Sans port\u00E9e, cela peut \u00EAtre difficile pour certains usagers \u00E0 probl\u00E8mes de comprendre le contenu ou les donn\u00E9es affich\u00E9es dans le tableau.", +caption:"Afficher la l\u00E9gende du tableau", +frame:"Cadre", +frame_none:"aucun", +frame_groups:"groupe", +frame_rows:"lignes", +frame_cols:"colonnes", +frame_all:"tous", +rules:"R\u00E8gles", +rules_void:"aucune", +rules_above:"au-dessus", +rules_below:"au-dessous", +rules_hsides:"horizontales", +rules_lhs:"\u00E0 gauche", +rules_rhs:"\u00E0 droite", +rules_vsides:"verticales", +rules_box:"bo\u00EEte", +rules_border:"bordure" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm b/assets/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm new file mode 100644 index 0000000..9736ed8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm @@ -0,0 +1,32 @@ + + + + {#table_dlg.merge_cells_title} + + + + + + +
+
+ {#table_dlg.merge_cells_title} + + + + + + + + + +
{#table_dlg.cols}:
{#table_dlg.rows}:
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/row.htm b/assets/tinymce/jscripts/tiny_mce/plugins/table/row.htm new file mode 100644 index 0000000..092e6c8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/row.htm @@ -0,0 +1,155 @@ + + + + {#table_dlg.row_title} + + + + + + + + +
+ + +
+
+
+ {#table_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ +
+
+
+ +
+
+ {#table_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + +
 
+
+ + + + + +
 
+
+
+
+
+ +
+
+ +
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/table/table.htm b/assets/tinymce/jscripts/tiny_mce/plugins/table/table.htm new file mode 100644 index 0000000..f269039 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/table/table.htm @@ -0,0 +1,187 @@ + + + + {#table_dlg.title} + + + + + + + + + +
+ + +
+
+
+ {#table_dlg.general_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ +
+
+ {#table_dlg.advanced_props} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + +
 
+
+ +
+ +
+ +
+ + + + + +
 
+
+ + + + + +
 
+
+
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/all-wcprops new file mode 100644 index 0000000..8f673db --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js +END +template.htm +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/template.htm +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js +END +blank.htm +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/blank.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/entries new file mode 100644 index 0000000..62ef1f7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/entries @@ -0,0 +1,173 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template +http://django-grappelli.googlecode.com/svn + + + +2010-05-27T14:20:58.953064Z +1046 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.575634Z +82856b3ed1ee288c2b9a8e71f9571fde +2010-05-27T14:20:58.953064Z +1046 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +5560 + +template.htm +file + + + + +2010-06-04T12:51:46.575634Z +aab72965ccef68941826ee61c8430aed +2010-05-27T14:09:40.573569Z +1045 +sehmaschine +has-props + + + + + + + + + + + + + + + + + + + + +2189 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.578952Z +e43e797e4759b12934c86fa7a2228eee +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +6101 + +css +dir + +js +dir + +blank.htm +file + + + + +2010-06-04T12:51:46.578952Z +9089127d1ef7411473edea629d4be1ce +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +320 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/blank.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/blank.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/blank.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/template.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/template.htm.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/prop-base/template.htm.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/blank.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/blank.htm.svn-base new file mode 100644 index 0000000..538a3b1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/blank.htm.svn-base @@ -0,0 +1,12 @@ + + + blank_page + + + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..280af11 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1,137 @@ +/** + * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $ + * + * @author Moxiecode + * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.TemplatePlugin', { + init : function(ed, url) { + var t = this; + t.editor = ed; + + // commands + ed.addCommand('mceTemplate', function(ui) { + ed.windowManager.open({ + file : url + '/template.htm', + width : ed.getParam('template_popup_width', 650), + height : ed.getParam('template_popup_height', 200), + inline : 1 + }, { + plugin_url : url + }); + }); + ed.addCommand('mceInsertTemplate', t._insertTemplate, t); + + // buttons + ed.addButton('template', {title : 'template.desc', cmd : 'mceTemplate'}); + + // insert template is only allowed within a paragraph + ed.onNodeChange.add(function(ed, cm, n, co) { + cm.setDisabled('template', n.nodeName != 'P' || n.firstChild.nodeValue != null || n.parentNode.nodeName != "BODY"); + }); + + // table to div / div to table + ed.onPreProcess.add(function(ed, o) { + var dom = ed.dom; + + if (o.set) { + + each(ed.dom.select('div', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-td')) { + class_el = ed.dom.getAttrib(e, 'class'); + td_el = ed.dom.create('td', {'class': class_el}); + ed.dom.replace(td_el, e, true); + } + }); + + each(ed.dom.select('div', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-table')) { + class_el = ed.dom.getAttrib(e, 'class'); + table_el = ed.dom.create('table', {'class': class_el, 'cellpadding': '0', 'cellspacing': '10'}); + ed.dom.setHTML(table_el, e.innerHTML); + p_el = ed.dom.create('p', {'class': 'mce-grid-container'}); + p_el.appendChild(table_el); + ed.dom.replace(p_el, e, false); + } + }); + + } + + if (o.save) { + + each(ed.dom.select('td', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-td')) { + class_el = ed.dom.getAttrib(e, 'class'); + div_el = ed.dom.create('div', {'class': class_el}); + ed.dom.replace(div_el, e, true); + } + }); + + each(ed.dom.select('table', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-table')) { + class_el = ed.dom.getAttrib(e, 'class'); + div_el = ed.dom.create('div', {'class': class_el}); + ed.dom.replace(div_el, e, true); + } + }); + + each(ed.dom.select('tr', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-tr')) { + ed.dom.remove(e, true); + } + }); + + each(ed.dom.select('tbody', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-tbody')) { + ed.dom.remove(e, true); + } + }); + + each(ed.dom.select('p', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-container')) { + ed.dom.remove(e, true); + } + }); + + } + + }); + + }, + + getInfo : function() { + return { + longname : 'Grid plugin', + author : 'Patrick Kranzlmueller', + authorurl : 'http://vonautomatisch.at', + infourl : 'http:/vonautomatisch.at', + version : '0.1' + }; + }, + + _insertTemplate : function(ui, v) { + var t = this, ed = t.editor, h, el, dom = ed.dom, sel = ed.selection.getContent(); + + // using dom.replace in order to avoid empty paragraph + // after the insert (e.g. with using setContent) + p_el = ed.dom.create('p', {'class': 'mce-grid-container'}, v.content); + ed.dom.replace(p_el, this.editor.selection.getNode(), true); + // cleanup + this.editor.execCommand('mceCleanup'); + // move caret to first paragraph inside the template + n = ed.dom.select('p', p_el)[0]; + tinyMCE.execCommand("mceSelectNode", false, n.firstChild); + + ed.addVisual(); + }, + + }); + + // Register plugin + tinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..0d8825a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,156 @@ +/** + * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.TemplatePlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceTemplate', function(ui) { + ed.windowManager.open({ + file : url + '/template.htm', + width : ed.getParam('template_popup_width', 750), + height : ed.getParam('template_popup_height', 600), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceInsertTemplate', t._insertTemplate, t); + + // Register buttons + ed.addButton('template', {title : 'template.desc', cmd : 'mceTemplate'}); + + ed.onPreProcess.add(function(ed, o) { + var dom = ed.dom; + + each(dom.select('div', o.node), function(e) { + if (dom.hasClass(e, 'mceTmpl')) { + each(dom.select('*', e), function(e) { + if (dom.hasClass(e, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|'))) + e.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format"))); + }); + + t._replaceVals(e); + } + }); + }); + }, + + getInfo : function() { + return { + longname : 'Template plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://www.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _insertTemplate : function(ui, v) { + var t = this, ed = t.editor, h, el, dom = ed.dom, sel = ed.selection.getContent(); + + h = v.content; + + each(t.editor.getParam('template_replace_values'), function(v, k) { + if (typeof(v) != 'function') + h = h.replace(new RegExp('\\{\\$' + k + '\\}', 'g'), v); + }); + + el = dom.create('div', null, h); + + // Find template element within div + n = dom.select('.mceTmpl', el); + if (n && n.length > 0) { + el = dom.create('div', null); + el.appendChild(n[0].cloneNode(true)); + } + + function hasClass(n, c) { + return new RegExp('\\b' + c + '\\b', 'g').test(n.className); + }; + + each(dom.select('*', el), function(n) { + // Replace cdate + if (hasClass(n, ed.getParam('template_cdate_classes', 'cdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_cdate_format", ed.getLang("template.cdate_format"))); + + // Replace mdate + if (hasClass(n, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format"))); + + // Replace selection + if (hasClass(n, ed.getParam('template_selected_content_classes', 'selcontent').replace(/\s+/g, '|'))) + n.innerHTML = sel; + }); + + t._replaceVals(el); + + ed.execCommand('mceInsertContent', false, el.innerHTML); + ed.addVisual(); + }, + + _replaceVals : function(e) { + var dom = this.editor.dom, vl = this.editor.getParam('template_replace_values'); + + each(dom.select('*', e), function(e) { + each(vl, function(v, k) { + if (dom.hasClass(e, k)) { + if (typeof(vl[k]) == 'function') + vl[k](e); + } + }); + }); + }, + + _getDateTime : function(d, fmt) { + if (!fmt) + return ""; + + function addZeros(value, len) { + var i; + + value = "" + value; + + if (value.length < len) { + for (i=0; i<(len-value.length); i++) + value = "0" + value; + } + + return value; + } + + fmt = fmt.replace("%D", "%m/%d/%y"); + fmt = fmt.replace("%r", "%I:%M:%S %p"); + fmt = fmt.replace("%Y", "" + d.getFullYear()); + fmt = fmt.replace("%y", "" + d.getYear()); + fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2)); + fmt = fmt.replace("%d", addZeros(d.getDate(), 2)); + fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2)); + fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2)); + fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2)); + fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1)); + fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM")); + fmt = fmt.replace("%B", "" + tinyMCE.getLang("template_months_long").split(',')[d.getMonth()]); + fmt = fmt.replace("%b", "" + tinyMCE.getLang("template_months_short").split(',')[d.getMonth()]); + fmt = fmt.replace("%A", "" + tinyMCE.getLang("template_day_long").split(',')[d.getDay()]); + fmt = fmt.replace("%a", "" + tinyMCE.getLang("template_day_short").split(',')[d.getDay()]); + fmt = fmt.replace("%%", "%"); + + return fmt; + } + }); + + // Register plugin + tinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/template.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/template.htm.svn-base new file mode 100644 index 0000000..ac14f1d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/.svn/text-base/template.htm.svn-base @@ -0,0 +1,41 @@ + + + {#template_dlg.title} + + + + + +
+
+
{#template_dlg.desc}
+
+
+
+
+ + +
+
+
+
+
+ +
+
+
+ +
+
+
+
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/blank.htm b/assets/tinymce/jscripts/tiny_mce/plugins/template/blank.htm new file mode 100755 index 0000000..538a3b1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/blank.htm @@ -0,0 +1,12 @@ + + + blank_page + + + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/all-wcprops new file mode 100644 index 0000000..fe7ed73 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 87 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/css +END +template.css +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/css/template.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/entries new file mode 100644 index 0000000..3d9eb89 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/css +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +template.css +file + + + + +2010-06-04T12:51:46.565614Z +6cc98d131d493071f2b14dac07f2cdbd +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +252 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/prop-base/template.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/prop-base/template.css.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/prop-base/template.css.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/text-base/template.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/text-base/template.css.svn-base new file mode 100644 index 0000000..0a03f2e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/.svn/text-base/template.css.svn-base @@ -0,0 +1,23 @@ +#frmbody { + padding: 10px; + background-color: #FFF; + border: 1px solid #CCC; +} + +.frmRow { + margin-bottom: 10px; +} + +#templatesrc { + border: none; + width: 320px; + height: 240px; +} + +.title { + padding-bottom: 5px; +} + +.mceActionPanel { + padding-top: 5px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/css/template.css b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/template.css new file mode 100755 index 0000000..0a03f2e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/css/template.css @@ -0,0 +1,23 @@ +#frmbody { + padding: 10px; + background-color: #FFF; + border: 1px solid #CCC; +} + +.frmRow { + margin-bottom: 10px; +} + +#templatesrc { + border: none; + width: 320px; + height: 240px; +} + +.title { + padding-bottom: 5px; +} + +.mceActionPanel { + padding-top: 5px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js new file mode 100755 index 0000000..280af11 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js @@ -0,0 +1,137 @@ +/** + * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $ + * + * @author Moxiecode + * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.TemplatePlugin', { + init : function(ed, url) { + var t = this; + t.editor = ed; + + // commands + ed.addCommand('mceTemplate', function(ui) { + ed.windowManager.open({ + file : url + '/template.htm', + width : ed.getParam('template_popup_width', 650), + height : ed.getParam('template_popup_height', 200), + inline : 1 + }, { + plugin_url : url + }); + }); + ed.addCommand('mceInsertTemplate', t._insertTemplate, t); + + // buttons + ed.addButton('template', {title : 'template.desc', cmd : 'mceTemplate'}); + + // insert template is only allowed within a paragraph + ed.onNodeChange.add(function(ed, cm, n, co) { + cm.setDisabled('template', n.nodeName != 'P' || n.firstChild.nodeValue != null || n.parentNode.nodeName != "BODY"); + }); + + // table to div / div to table + ed.onPreProcess.add(function(ed, o) { + var dom = ed.dom; + + if (o.set) { + + each(ed.dom.select('div', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-td')) { + class_el = ed.dom.getAttrib(e, 'class'); + td_el = ed.dom.create('td', {'class': class_el}); + ed.dom.replace(td_el, e, true); + } + }); + + each(ed.dom.select('div', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-table')) { + class_el = ed.dom.getAttrib(e, 'class'); + table_el = ed.dom.create('table', {'class': class_el, 'cellpadding': '0', 'cellspacing': '10'}); + ed.dom.setHTML(table_el, e.innerHTML); + p_el = ed.dom.create('p', {'class': 'mce-grid-container'}); + p_el.appendChild(table_el); + ed.dom.replace(p_el, e, false); + } + }); + + } + + if (o.save) { + + each(ed.dom.select('td', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-td')) { + class_el = ed.dom.getAttrib(e, 'class'); + div_el = ed.dom.create('div', {'class': class_el}); + ed.dom.replace(div_el, e, true); + } + }); + + each(ed.dom.select('table', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-table')) { + class_el = ed.dom.getAttrib(e, 'class'); + div_el = ed.dom.create('div', {'class': class_el}); + ed.dom.replace(div_el, e, true); + } + }); + + each(ed.dom.select('tr', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-tr')) { + ed.dom.remove(e, true); + } + }); + + each(ed.dom.select('tbody', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-tbody')) { + ed.dom.remove(e, true); + } + }); + + each(ed.dom.select('p', o.node), function(e) { + if (ed.dom.hasClass(e, 'mce-grid-container')) { + ed.dom.remove(e, true); + } + }); + + } + + }); + + }, + + getInfo : function() { + return { + longname : 'Grid plugin', + author : 'Patrick Kranzlmueller', + authorurl : 'http://vonautomatisch.at', + infourl : 'http:/vonautomatisch.at', + version : '0.1' + }; + }, + + _insertTemplate : function(ui, v) { + var t = this, ed = t.editor, h, el, dom = ed.dom, sel = ed.selection.getContent(); + + // using dom.replace in order to avoid empty paragraph + // after the insert (e.g. with using setContent) + p_el = ed.dom.create('p', {'class': 'mce-grid-container'}, v.content); + ed.dom.replace(p_el, this.editor.selection.getNode(), true); + // cleanup + this.editor.execCommand('mceCleanup'); + // move caret to first paragraph inside the template + n = ed.dom.select('p', p_el)[0]; + tinyMCE.execCommand("mceSelectNode", false, n.firstChild); + + ed.addVisual(); + }, + + }); + + // Register plugin + tinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js new file mode 100755 index 0000000..0d8825a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js @@ -0,0 +1,156 @@ +/** + * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $ + * + * @author Moxiecode + * @copyright Copyright 2004-2008, Moxiecode Systems AB, All rights reserved. + */ + +(function() { + var each = tinymce.each; + + tinymce.create('tinymce.plugins.TemplatePlugin', { + init : function(ed, url) { + var t = this; + + t.editor = ed; + + // Register commands + ed.addCommand('mceTemplate', function(ui) { + ed.windowManager.open({ + file : url + '/template.htm', + width : ed.getParam('template_popup_width', 750), + height : ed.getParam('template_popup_height', 600), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceInsertTemplate', t._insertTemplate, t); + + // Register buttons + ed.addButton('template', {title : 'template.desc', cmd : 'mceTemplate'}); + + ed.onPreProcess.add(function(ed, o) { + var dom = ed.dom; + + each(dom.select('div', o.node), function(e) { + if (dom.hasClass(e, 'mceTmpl')) { + each(dom.select('*', e), function(e) { + if (dom.hasClass(e, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|'))) + e.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format"))); + }); + + t._replaceVals(e); + } + }); + }); + }, + + getInfo : function() { + return { + longname : 'Template plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://www.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + }, + + _insertTemplate : function(ui, v) { + var t = this, ed = t.editor, h, el, dom = ed.dom, sel = ed.selection.getContent(); + + h = v.content; + + each(t.editor.getParam('template_replace_values'), function(v, k) { + if (typeof(v) != 'function') + h = h.replace(new RegExp('\\{\\$' + k + '\\}', 'g'), v); + }); + + el = dom.create('div', null, h); + + // Find template element within div + n = dom.select('.mceTmpl', el); + if (n && n.length > 0) { + el = dom.create('div', null); + el.appendChild(n[0].cloneNode(true)); + } + + function hasClass(n, c) { + return new RegExp('\\b' + c + '\\b', 'g').test(n.className); + }; + + each(dom.select('*', el), function(n) { + // Replace cdate + if (hasClass(n, ed.getParam('template_cdate_classes', 'cdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_cdate_format", ed.getLang("template.cdate_format"))); + + // Replace mdate + if (hasClass(n, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format"))); + + // Replace selection + if (hasClass(n, ed.getParam('template_selected_content_classes', 'selcontent').replace(/\s+/g, '|'))) + n.innerHTML = sel; + }); + + t._replaceVals(el); + + ed.execCommand('mceInsertContent', false, el.innerHTML); + ed.addVisual(); + }, + + _replaceVals : function(e) { + var dom = this.editor.dom, vl = this.editor.getParam('template_replace_values'); + + each(dom.select('*', e), function(e) { + each(vl, function(v, k) { + if (dom.hasClass(e, k)) { + if (typeof(vl[k]) == 'function') + vl[k](e); + } + }); + }); + }, + + _getDateTime : function(d, fmt) { + if (!fmt) + return ""; + + function addZeros(value, len) { + var i; + + value = "" + value; + + if (value.length < len) { + for (i=0; i<(len-value.length); i++) + value = "0" + value; + } + + return value; + } + + fmt = fmt.replace("%D", "%m/%d/%y"); + fmt = fmt.replace("%r", "%I:%M:%S %p"); + fmt = fmt.replace("%Y", "" + d.getFullYear()); + fmt = fmt.replace("%y", "" + d.getYear()); + fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2)); + fmt = fmt.replace("%d", addZeros(d.getDate(), 2)); + fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2)); + fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2)); + fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2)); + fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1)); + fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM")); + fmt = fmt.replace("%B", "" + tinyMCE.getLang("template_months_long").split(',')[d.getMonth()]); + fmt = fmt.replace("%b", "" + tinyMCE.getLang("template_months_short").split(',')[d.getMonth()]); + fmt = fmt.replace("%A", "" + tinyMCE.getLang("template_day_long").split(',')[d.getDay()]); + fmt = fmt.replace("%a", "" + tinyMCE.getLang("template_day_short").split(',')[d.getDay()]); + fmt = fmt.replace("%%", "%"); + + return fmt; + } + }); + + // Register plugin + tinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/all-wcprops new file mode 100644 index 0000000..b45e3ce --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/js +END +template.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/js/template.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/entries new file mode 100644 index 0000000..ffc9ade --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template/js +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +template.js +file + + + + +2010-06-04T12:51:46.572281Z +4e12cfda8a42ffba4d150d48c68db538 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +3338 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/prop-base/template.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/prop-base/template.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/prop-base/template.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/text-base/template.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/text-base/template.js.svn-base new file mode 100644 index 0000000..603ccf5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template/js/.svn/text-base/template.js.svn-base @@ -0,0 +1,106 @@ +tinyMCEPopup.requireLangPack(); + +var TemplateDialog = { + preInit : function() { + var url = tinyMCEPopup.getParam("template_external_list_url"); + + if (url != null) + document.write(''); + }, + + init : function() { + var ed = tinyMCEPopup.editor, tsrc, sel, x, u; + + tsrc = ed.getParam("template_templates", false); + sel = document.getElementById('tpath'); + + // Setup external template list + if (!tsrc && typeof(tinyMCETemplateList) != 'undefined') { + for (x=0, tsrc = []; x'); + }); + }, + + selectTemplate : function(u, ti) { + var d = window.frames['templatesrc'].document, x, tsrc = this.tsrc; + + if (!u) + return; + + d.body.innerHTML = this.templateHTML = this.getFileContents(u); + + for (x=0; x'); + }, + + init : function() { + var ed = tinyMCEPopup.editor, tsrc, sel, x, u; + + tsrc = ed.getParam("template_templates", false); + sel = document.getElementById('tpath'); + + // Setup external template list + if (!tsrc && typeof(tinyMCETemplateList) != 'undefined') { + for (x=0, tsrc = []; x'); + }); + }, + + selectTemplate : function(u, ti) { + var d = window.frames['templatesrc'].document, x, tsrc = this.tsrc; + + if (!u) + return; + + d.body.innerHTML = this.templateHTML = this.getFileContents(u); + + for (x=0; x + + {#template_dlg.title} + + + + + +
+
+
{#template_dlg.desc}
+
+
+
+
+ + +
+
+
+
+
+ +
+
+
+ +
+
+
+
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/all-wcprops new file mode 100644 index 0000000..b650997 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js +END +template.htm +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/template.htm +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin_src.js +END +blank.htm +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/entries new file mode 100644 index 0000000..1199fa7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/entries @@ -0,0 +1,173 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:35:55.822899Z +1018 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:44.862301Z +70cb20c4e287110ae8aeed999893c532 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +3302 + +template.htm +file + + + + +2010-06-04T12:51:44.862301Z +34b61e8754e935f5f7067ea3dc86f6d4 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1471 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:44.862301Z +336af7b2ec3e0f7c83a7d05bf16cd018 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4986 + +css +dir + +js +dir + +blank.htm +file + + + + +2010-06-04T12:51:44.862301Z +9553e76581d74579d23bea5c7ea8a807 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +332 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/blank.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/blank.htm.svn-base new file mode 100644 index 0000000..ecde53f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/blank.htm.svn-base @@ -0,0 +1,12 @@ + + + blank_page + + + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..ebe3c27 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.TemplatePlugin",{init:function(b,c){var d=this;d.editor=b;b.addCommand("mceTemplate",function(e){b.windowManager.open({file:c+"/template.htm",width:b.getParam("template_popup_width",750),height:b.getParam("template_popup_height",600),inline:1},{plugin_url:c})});b.addCommand("mceInsertTemplate",d._insertTemplate,d);b.addButton("template",{title:"template.desc",cmd:"mceTemplate"});b.onPreProcess.add(function(e,g){var f=e.dom;a(f.select("div",g.node),function(h){if(f.hasClass(h,"mceTmpl")){a(f.select("*",h),function(i){if(f.hasClass(i,e.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))){i.innerHTML=d._getDateTime(new Date(),e.getParam("template_mdate_format",e.getLang("template.mdate_format")))}});d._replaceVals(h)}})})},getInfo:function(){return{longname:"Template plugin",author:"Moxiecode Systems AB",authorurl:"http://www.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_insertTemplate:function(i,j){var k=this,g=k.editor,f,c,d=g.dom,b=g.selection.getContent();f=j.content;a(k.editor.getParam("template_replace_values"),function(l,h){if(typeof(l)!="function"){f=f.replace(new RegExp("\\{\\$"+h+"\\}","g"),l)}});c=d.create("div",null,f);n=d.select(".mceTmpl",c);if(n&&n.length>0){c=d.create("div",null);c.appendChild(n[0].cloneNode(true))}function e(l,h){return new RegExp("\\b"+h+"\\b","g").test(l.className)}a(d.select("*",c),function(h){if(e(h,g.getParam("template_cdate_classes","cdate").replace(/\s+/g,"|"))){h.innerHTML=k._getDateTime(new Date(),g.getParam("template_cdate_format",g.getLang("template.cdate_format")))}if(e(h,g.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))){h.innerHTML=k._getDateTime(new Date(),g.getParam("template_mdate_format",g.getLang("template.mdate_format")))}if(e(h,g.getParam("template_selected_content_classes","selcontent").replace(/\s+/g,"|"))){h.innerHTML=b}});k._replaceVals(c);g.execCommand("mceInsertContent",false,c.innerHTML);g.addVisual()},_replaceVals:function(c){var d=this.editor.dom,b=this.editor.getParam("template_replace_values");a(d.select("*",c),function(f){a(b,function(g,e){if(d.hasClass(f,e)){if(typeof(b[e])=="function"){b[e](f)}}})})},_getDateTime:function(e,b){if(!b){return""}function c(g,d){var f;g=""+g;if(g.length 0) { + el = dom.create('div', null); + el.appendChild(n[0].cloneNode(true)); + } + + function hasClass(n, c) { + return new RegExp('\\b' + c + '\\b', 'g').test(n.className); + }; + + each(dom.select('*', el), function(n) { + // Replace cdate + if (hasClass(n, ed.getParam('template_cdate_classes', 'cdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_cdate_format", ed.getLang("template.cdate_format"))); + + // Replace mdate + if (hasClass(n, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format"))); + + // Replace selection + if (hasClass(n, ed.getParam('template_selected_content_classes', 'selcontent').replace(/\s+/g, '|'))) + n.innerHTML = sel; + }); + + t._replaceVals(el); + + ed.execCommand('mceInsertContent', false, el.innerHTML); + ed.addVisual(); + }, + + _replaceVals : function(e) { + var dom = this.editor.dom, vl = this.editor.getParam('template_replace_values'); + + each(dom.select('*', e), function(e) { + each(vl, function(v, k) { + if (dom.hasClass(e, k)) { + if (typeof(vl[k]) == 'function') + vl[k](e); + } + }); + }); + }, + + _getDateTime : function(d, fmt) { + if (!fmt) + return ""; + + function addZeros(value, len) { + var i; + + value = "" + value; + + if (value.length < len) { + for (i=0; i<(len-value.length); i++) + value = "0" + value; + } + + return value; + } + + fmt = fmt.replace("%D", "%m/%d/%y"); + fmt = fmt.replace("%r", "%I:%M:%S %p"); + fmt = fmt.replace("%Y", "" + d.getFullYear()); + fmt = fmt.replace("%y", "" + d.getYear()); + fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2)); + fmt = fmt.replace("%d", addZeros(d.getDate(), 2)); + fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2)); + fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2)); + fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2)); + fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1)); + fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM")); + fmt = fmt.replace("%B", "" + this.editor.getLang("template_months_long").split(',')[d.getMonth()]); + fmt = fmt.replace("%b", "" + this.editor.getLang("template_months_short").split(',')[d.getMonth()]); + fmt = fmt.replace("%A", "" + this.editor.getLang("template_day_long").split(',')[d.getDay()]); + fmt = fmt.replace("%a", "" + this.editor.getLang("template_day_short").split(',')[d.getDay()]); + fmt = fmt.replace("%%", "%"); + + return fmt; + } + }); + + // Register plugin + tinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/template.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/template.htm.svn-base new file mode 100644 index 0000000..4bf49f1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/.svn/text-base/template.htm.svn-base @@ -0,0 +1,32 @@ + + + {#template_dlg.title} + + + + + +
+
+
{#template_dlg.desc}
+
+ +
+
+
+
+ {#template_dlg.preview} + +
+
+ +
+ + +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm new file mode 100644 index 0000000..ecde53f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm @@ -0,0 +1,12 @@ + + + blank_page + + + + + + + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/all-wcprops new file mode 100644 index 0000000..6794f30 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/css +END +template.css +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/entries new file mode 100644 index 0000000..c7d723b --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +template.css +file + + + + +2010-06-04T12:51:44.852282Z +5b2c159120cbef004c9b0804c292820b +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +275 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/text-base/template.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/text-base/template.css.svn-base new file mode 100644 index 0000000..2d23a49 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/.svn/text-base/template.css.svn-base @@ -0,0 +1,23 @@ +#frmbody { + padding: 10px; + background-color: #FFF; + border: 1px solid #CCC; +} + +.frmRow { + margin-bottom: 10px; +} + +#templatesrc { + border: none; + width: 320px; + height: 240px; +} + +.title { + padding-bottom: 5px; +} + +.mceActionPanel { + padding-top: 5px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css new file mode 100644 index 0000000..2d23a49 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css @@ -0,0 +1,23 @@ +#frmbody { + padding: 10px; + background-color: #FFF; + border: 1px solid #CCC; +} + +.frmRow { + margin-bottom: 10px; +} + +#templatesrc { + border: none; + width: 320px; + height: 240px; +} + +.title { + padding-bottom: 5px; +} + +.mceActionPanel { + padding-top: 5px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js new file mode 100644 index 0000000..ebe3c27 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js @@ -0,0 +1 @@ +(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.TemplatePlugin",{init:function(b,c){var d=this;d.editor=b;b.addCommand("mceTemplate",function(e){b.windowManager.open({file:c+"/template.htm",width:b.getParam("template_popup_width",750),height:b.getParam("template_popup_height",600),inline:1},{plugin_url:c})});b.addCommand("mceInsertTemplate",d._insertTemplate,d);b.addButton("template",{title:"template.desc",cmd:"mceTemplate"});b.onPreProcess.add(function(e,g){var f=e.dom;a(f.select("div",g.node),function(h){if(f.hasClass(h,"mceTmpl")){a(f.select("*",h),function(i){if(f.hasClass(i,e.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))){i.innerHTML=d._getDateTime(new Date(),e.getParam("template_mdate_format",e.getLang("template.mdate_format")))}});d._replaceVals(h)}})})},getInfo:function(){return{longname:"Template plugin",author:"Moxiecode Systems AB",authorurl:"http://www.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_insertTemplate:function(i,j){var k=this,g=k.editor,f,c,d=g.dom,b=g.selection.getContent();f=j.content;a(k.editor.getParam("template_replace_values"),function(l,h){if(typeof(l)!="function"){f=f.replace(new RegExp("\\{\\$"+h+"\\}","g"),l)}});c=d.create("div",null,f);n=d.select(".mceTmpl",c);if(n&&n.length>0){c=d.create("div",null);c.appendChild(n[0].cloneNode(true))}function e(l,h){return new RegExp("\\b"+h+"\\b","g").test(l.className)}a(d.select("*",c),function(h){if(e(h,g.getParam("template_cdate_classes","cdate").replace(/\s+/g,"|"))){h.innerHTML=k._getDateTime(new Date(),g.getParam("template_cdate_format",g.getLang("template.cdate_format")))}if(e(h,g.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))){h.innerHTML=k._getDateTime(new Date(),g.getParam("template_mdate_format",g.getLang("template.mdate_format")))}if(e(h,g.getParam("template_selected_content_classes","selcontent").replace(/\s+/g,"|"))){h.innerHTML=b}});k._replaceVals(c);g.execCommand("mceInsertContent",false,c.innerHTML);g.addVisual()},_replaceVals:function(c){var d=this.editor.dom,b=this.editor.getParam("template_replace_values");a(d.select("*",c),function(f){a(b,function(g,e){if(d.hasClass(f,e)){if(typeof(b[e])=="function"){b[e](f)}}})})},_getDateTime:function(e,b){if(!b){return""}function c(g,d){var f;g=""+g;if(g.length 0) { + el = dom.create('div', null); + el.appendChild(n[0].cloneNode(true)); + } + + function hasClass(n, c) { + return new RegExp('\\b' + c + '\\b', 'g').test(n.className); + }; + + each(dom.select('*', el), function(n) { + // Replace cdate + if (hasClass(n, ed.getParam('template_cdate_classes', 'cdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_cdate_format", ed.getLang("template.cdate_format"))); + + // Replace mdate + if (hasClass(n, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|'))) + n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format"))); + + // Replace selection + if (hasClass(n, ed.getParam('template_selected_content_classes', 'selcontent').replace(/\s+/g, '|'))) + n.innerHTML = sel; + }); + + t._replaceVals(el); + + ed.execCommand('mceInsertContent', false, el.innerHTML); + ed.addVisual(); + }, + + _replaceVals : function(e) { + var dom = this.editor.dom, vl = this.editor.getParam('template_replace_values'); + + each(dom.select('*', e), function(e) { + each(vl, function(v, k) { + if (dom.hasClass(e, k)) { + if (typeof(vl[k]) == 'function') + vl[k](e); + } + }); + }); + }, + + _getDateTime : function(d, fmt) { + if (!fmt) + return ""; + + function addZeros(value, len) { + var i; + + value = "" + value; + + if (value.length < len) { + for (i=0; i<(len-value.length); i++) + value = "0" + value; + } + + return value; + } + + fmt = fmt.replace("%D", "%m/%d/%y"); + fmt = fmt.replace("%r", "%I:%M:%S %p"); + fmt = fmt.replace("%Y", "" + d.getFullYear()); + fmt = fmt.replace("%y", "" + d.getYear()); + fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2)); + fmt = fmt.replace("%d", addZeros(d.getDate(), 2)); + fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2)); + fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2)); + fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2)); + fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1)); + fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM")); + fmt = fmt.replace("%B", "" + this.editor.getLang("template_months_long").split(',')[d.getMonth()]); + fmt = fmt.replace("%b", "" + this.editor.getLang("template_months_short").split(',')[d.getMonth()]); + fmt = fmt.replace("%A", "" + this.editor.getLang("template_day_long").split(',')[d.getDay()]); + fmt = fmt.replace("%a", "" + this.editor.getLang("template_day_short").split(',')[d.getDay()]); + fmt = fmt.replace("%%", "%"); + + return fmt; + } + }); + + // Register plugin + tinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/all-wcprops new file mode 100644 index 0000000..d633c14 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 91 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/js +END +template.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/js/template.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/entries new file mode 100644 index 0000000..8339d7c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/template_orig/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +template.js +file + + + + +2010-06-04T12:51:44.858958Z +48fe76a8ef588730634bd4e76aec32f8 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2778 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/text-base/template.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/text-base/template.js.svn-base new file mode 100644 index 0000000..24045d7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/template_orig/js/.svn/text-base/template.js.svn-base @@ -0,0 +1,106 @@ +tinyMCEPopup.requireLangPack(); + +var TemplateDialog = { + preInit : function() { + var url = tinyMCEPopup.getParam("template_external_list_url"); + + if (url != null) + document.write(''); + }, + + init : function() { + var ed = tinyMCEPopup.editor, tsrc, sel, x, u; + + tsrc = ed.getParam("template_templates", false); + sel = document.getElementById('tpath'); + + // Setup external template list + if (!tsrc && typeof(tinyMCETemplateList) != 'undefined') { + for (x=0, tsrc = []; x'); + }); + }, + + selectTemplate : function(u, ti) { + var d = window.frames['templatesrc'].document, x, tsrc = this.tsrc; + + if (!u) + return; + + d.body.innerHTML = this.templateHTML = this.getFileContents(u); + + for (x=0; x'); + }, + + init : function() { + var ed = tinyMCEPopup.editor, tsrc, sel, x, u; + + tsrc = ed.getParam("template_templates", false); + sel = document.getElementById('tpath'); + + // Setup external template list + if (!tsrc && typeof(tinyMCETemplateList) != 'undefined') { + for (x=0, tsrc = []; x'); + }); + }, + + selectTemplate : function(u, ti) { + var d = window.frames['templatesrc'].document, x, tsrc = this.tsrc; + + if (!u) + return; + + d.body.innerHTML = this.templateHTML = this.getFileContents(u); + + for (x=0; x + + {#template_dlg.title} + + + + + +
+
+
{#template_dlg.desc}
+
+ +
+
+
+
+ {#template_dlg.preview} + +
+
+ +
+ + +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/all-wcprops new file mode 100644 index 0000000..25a8214 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/visualchars +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/entries new file mode 100644 index 0000000..66d05a7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/visualchars +http://django-grappelli.googlecode.com/svn + + + +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +editor_plugin.js +file + + + + +2010-06-04T12:51:45.815614Z +8fec0ef8561966c627ef5997a4b76ce6 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1384 + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:45.815614Z +a63e3af67c12779d6b451d444196d1b8 +2010-05-26T11:58:08.803356Z +1019 +klemens.mantzos +has-props + + + + + + + + + + + + + + + + + + + + +1989 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..03b5bfa --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/prop-base/editor_plugin_src.js.svn-base @@ -0,0 +1,9 @@ +K 13 +svn:eol-style +V 6 +native +K 14 +svn:executable +V 1 +* +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..e1e4238 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/visualchars/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create('tinymce.plugins.VisualChars',{init:function(ed,url){var t=this;t.editor=ed;ed.addCommand('mceVisualChars',t._toggleVisualChars,t);ed.addButton('visualchars',{title:'visualchars.desc',cmd:'mceVisualChars'});ed.onBeforeGetContent.add(function(ed,o){if(t.state){t.state=true;t._toggleVisualChars();}});},getInfo:function(){return{longname:'Visual characters',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars',version:tinymce.majorVersion+"."+tinymce.minorVersion};},_toggleVisualChars:function(){var t=this,ed=t.editor,nl,i,h,d=ed.getDoc(),b=ed.getBody(),nv,s=ed.selection,bo;t.state=!t.state;ed.controlManager.setActive('visualchars',t.state);if(t.state){nl=[];tinymce.walk(b,function(n){if(n.nodeType==3&&n.nodeValue&&n.nodeValue.indexOf('\u00a0')!=-1)nl.push(n);},'childNodes');for(i=0;i$1');nv=nv.replace(/\u00a0/g,'\u00b7');ed.dom.setOuterHTML(nl[i],nv,d);}}else{nl=tinymce.grep(ed.dom.select('span',b),function(n){return ed.dom.hasClass(n,'mceVisualNbsp');});for(i=0;i$1'); + nv = nv.replace(/\u00a0/g, '\u00b7'); + ed.dom.setOuterHTML(nl[i], nv, d); + } + } else { + nl = tinymce.grep(ed.dom.select('span', b), function(n) { + return ed.dom.hasClass(n, 'mceVisualNbsp'); + }); + + for (i=0; i$1');nv=nv.replace(/\u00a0/g,'\u00b7');ed.dom.setOuterHTML(nl[i],nv,d);}}else{nl=tinymce.grep(ed.dom.select('span',b),function(n){return ed.dom.hasClass(n,'mceVisualNbsp');});for(i=0;i$1'); + nv = nv.replace(/\u00a0/g, '\u00b7'); + ed.dom.setOuterHTML(nl[i], nv, d); + } + } else { + nl = tinymce.grep(ed.dom.select('span', b), function(n) { + return ed.dom.hasClass(n, 'mceVisualNbsp'); + }); + + for (i=0; i$1');j=j.replace(/\u00a0/g,"\u00b7");g.dom.setOuterHTML(a[e],j,k)}}else{a=tinymce.grep(g.dom.select("span",l),function(b){return g.dom.hasClass(b,"mceVisualNbsp")});for(e=0;e$1'); + nv = nv.replace(/\u00a0/g, '\u00b7'); + ed.dom.setOuterHTML(nl[i], nv, d); + } + } else { + nl = tinymce.grep(ed.dom.select('span', b), function(n) { + return ed.dom.hasClass(n, 'mceVisualNbsp'); + }); + + for (i=0; i$1');j=j.replace(/\u00a0/g,"\u00b7");g.dom.setOuterHTML(a[e],j,k)}}else{a=tinymce.grep(g.dom.select("span",l),function(b){return g.dom.hasClass(b,"mceVisualNbsp")});for(e=0;e$1'); + nv = nv.replace(/\u00a0/g, '\u00b7'); + ed.dom.setOuterHTML(nl[i], nv, d); + } + } else { + nl = tinymce.grep(ed.dom.select('span', b), function(n) { + return ed.dom.hasClass(n, 'mceVisualNbsp'); + }); + + for (i=0; i0')}}else{tinymce.DOM.add(h,"span",{},'0')}});a.onInit.add(function(e){e.selection.onSetContent.add(function(){c._count(e)});c._count(e)});a.onSetContent.add(function(e){c._count(e)});a.onKeyUp.add(function(f,g){if(g.keyCode==d){return}if(13==g.keyCode||8==d||46==d){c._count(f)}d=g.keyCode})},_count:function(b){var c=this,a=0;if(c.block){return}c.block=1;setTimeout(function(){var d=b.getContent({format:"raw"});if(d){d=d.replace(/<.[^<>]*?>/g," ").replace(/ | /gi," ");d=d.replace(c.cleanre,"");d.replace(c.countre,function(){a++})}tinymce.DOM.setHTML(c.id,a.toString());setTimeout(function(){c.block=0},2000)},1)},getInfo:function(){return{longname:"Word Count plugin",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("wordcount",tinymce.plugins.WordCount)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..bdfebf1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,98 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.WordCount', { + block : 0, + id : null, + countre : null, + cleanre : null, + + init : function(ed, url) { + var t = this, last = 0; + + t.countre = ed.getParam('wordcount_countregex', /\S\s+/g); + t.cleanre = ed.getParam('wordcount_cleanregex', /[0-9.(),;:!?%#$'"_+=\\/-]*/g); + t.id = ed.id + '-word-count'; + + ed.onPostRender.add(function(ed, cm) { + var row, id; + + // Add it to the specified id or the theme advanced path + id = ed.getParam('wordcount_target_id'); + if (!id) { + row = tinymce.DOM.get(ed.id + '_path_row'); + + if (row) + tinymce.DOM.add(row.parentNode, 'div', {'style': 'float: right'}, ed.getLang('wordcount.words', 'Words: ') + '0'); + } else + tinymce.DOM.add(id, 'span', {}, '0'); + }); + + ed.onInit.add(function(ed) { + ed.selection.onSetContent.add(function() { + t._count(ed); + }); + + t._count(ed); + }); + + ed.onSetContent.add(function(ed) { + t._count(ed); + }); + + ed.onKeyUp.add(function(ed, e) { + if (e.keyCode == last) + return; + + if (13 == e.keyCode || 8 == last || 46 == last) + t._count(ed); + + last = e.keyCode; + }); + }, + + _count : function(ed) { + var t = this, tc = 0; + + // Keep multiple calls from happening at the same time + if (t.block) + return; + + t.block = 1; + + setTimeout(function() { + var tx = ed.getContent({format : 'raw'}); + + if (tx) { + tx = tx.replace(/<.[^<>]*?>/g, ' ').replace(/ | /gi, ' '); // remove html tags and space chars + tx = tx.replace(t.cleanre, ''); // remove numbers and punctuation + tx.replace(t.countre, function() {tc++;}); // count the words + } + + tinymce.DOM.setHTML(t.id, tc.toString()); + + setTimeout(function() {t.block = 0;}, 2000); + }, 1); + }, + + getInfo: function() { + return { + longname : 'Word Count plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + tinymce.PluginManager.add('wordcount', tinymce.plugins.WordCount); +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js new file mode 100644 index 0000000..f192835 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.WordCount",{block:0,id:null,countre:null,cleanre:null,init:function(a,b){var c=this,d=0;c.countre=a.getParam("wordcount_countregex",/\S\s+/g);c.cleanre=a.getParam("wordcount_cleanregex",/[0-9.(),;:!?%#$'"_+=\\/-]*/g);c.id=a.id+"-word-count";a.onPostRender.add(function(f,e){var g,h;h=f.getParam("wordcount_target_id");if(!h){g=tinymce.DOM.get(f.id+"_path_row");if(g){tinymce.DOM.add(g.parentNode,"div",{style:"float: right"},f.getLang("wordcount.words","Words: ")+'0')}}else{tinymce.DOM.add(h,"span",{},'0')}});a.onInit.add(function(e){e.selection.onSetContent.add(function(){c._count(e)});c._count(e)});a.onSetContent.add(function(e){c._count(e)});a.onKeyUp.add(function(f,g){if(g.keyCode==d){return}if(13==g.keyCode||8==d||46==d){c._count(f)}d=g.keyCode})},_count:function(b){var c=this,a=0;if(c.block){return}c.block=1;setTimeout(function(){var d=b.getContent({format:"raw"});if(d){d=d.replace(/<.[^<>]*?>/g," ").replace(/ | /gi," ");d=d.replace(c.cleanre,"");d.replace(c.countre,function(){a++})}tinymce.DOM.setHTML(c.id,a.toString());setTimeout(function(){c.block=0},2000)},1)},getInfo:function(){return{longname:"Word Count plugin",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("wordcount",tinymce.plugins.WordCount)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js new file mode 100644 index 0000000..bdfebf1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js @@ -0,0 +1,98 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.WordCount', { + block : 0, + id : null, + countre : null, + cleanre : null, + + init : function(ed, url) { + var t = this, last = 0; + + t.countre = ed.getParam('wordcount_countregex', /\S\s+/g); + t.cleanre = ed.getParam('wordcount_cleanregex', /[0-9.(),;:!?%#$'"_+=\\/-]*/g); + t.id = ed.id + '-word-count'; + + ed.onPostRender.add(function(ed, cm) { + var row, id; + + // Add it to the specified id or the theme advanced path + id = ed.getParam('wordcount_target_id'); + if (!id) { + row = tinymce.DOM.get(ed.id + '_path_row'); + + if (row) + tinymce.DOM.add(row.parentNode, 'div', {'style': 'float: right'}, ed.getLang('wordcount.words', 'Words: ') + '0'); + } else + tinymce.DOM.add(id, 'span', {}, '0'); + }); + + ed.onInit.add(function(ed) { + ed.selection.onSetContent.add(function() { + t._count(ed); + }); + + t._count(ed); + }); + + ed.onSetContent.add(function(ed) { + t._count(ed); + }); + + ed.onKeyUp.add(function(ed, e) { + if (e.keyCode == last) + return; + + if (13 == e.keyCode || 8 == last || 46 == last) + t._count(ed); + + last = e.keyCode; + }); + }, + + _count : function(ed) { + var t = this, tc = 0; + + // Keep multiple calls from happening at the same time + if (t.block) + return; + + t.block = 1; + + setTimeout(function() { + var tx = ed.getContent({format : 'raw'}); + + if (tx) { + tx = tx.replace(/<.[^<>]*?>/g, ' ').replace(/ | /gi, ' '); // remove html tags and space chars + tx = tx.replace(t.cleanre, ''); // remove numbers and punctuation + tx.replace(t.countre, function() {tc++;}); // count the words + } + + tinymce.DOM.setHTML(t.id, tc.toString()); + + setTimeout(function() {t.block = 0;}, 2000); + }, 1); + }, + + getInfo: function() { + return { + longname : 'Word Count plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + tinymce.PluginManager.add('wordcount', tinymce.plugins.WordCount); +})(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/all-wcprops new file mode 100644 index 0000000..dd382e4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/all-wcprops @@ -0,0 +1,53 @@ +K 25 +svn:wc:ra_dav:version-url +V 85 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras +END +acronym.htm +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm +END +editor_plugin.js +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js +END +ins.htm +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm +END +editor_plugin_src.js +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js +END +del.htm +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm +END +cite.htm +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm +END +attributes.htm +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm +END +abbr.htm +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/entries new file mode 100644 index 0000000..62a2651 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/entries @@ -0,0 +1,309 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +acronym.htm +file + + + + +2010-06-04T12:51:46.802291Z +ceaa5f21d8227e1b212672baab37889b +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +6050 + +editor_plugin.js +file + + + + +2010-06-04T12:51:46.802291Z +e7dc811ac6ebd20568aa99b201f03376 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2861 + +ins.htm +file + + + + +2010-06-04T12:51:46.802291Z +0bd819c9e634374fa28067b6e2bbff83 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +7006 + +langs +dir + +editor_plugin_src.js +file + + + + +2010-06-04T12:51:46.802291Z +dfed1f0fb5f837113e2c72ce7468fcdb +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4287 + +css +dir + +del.htm +file + + + + +2010-06-04T12:51:46.805614Z +38c3b0c1567ef427c8cfaf5b2ca7f594 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +7004 + +cite.htm +file + + + + +2010-06-04T12:51:46.805614Z +296fe99bb3401689b0ef93c5fcde5a72 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +6038 + +js +dir + +attributes.htm +file + + + + +2010-06-04T12:51:46.805614Z +299e3569aacf8d20dca7bb9dad7f1e4a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +6003 + +abbr.htm +file + + + + +2010-06-04T12:51:46.805614Z +109c1839c713aa6fe26a45b00a6f3ee8 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +6038 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/abbr.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/abbr.htm.svn-base new file mode 100644 index 0000000..3aeac0d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/abbr.htm.svn-base @@ -0,0 +1,141 @@ + + + + {#xhtmlxtras_dlg.title_abbr_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/acronym.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/acronym.htm.svn-base new file mode 100644 index 0000000..31ee7b7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/acronym.htm.svn-base @@ -0,0 +1,141 @@ + + + + {#xhtmlxtras_dlg.title_acronym_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/attributes.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/attributes.htm.svn-base new file mode 100644 index 0000000..17054da --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/attributes.htm.svn-base @@ -0,0 +1,148 @@ + + + + {#xhtmlxtras_dlg.attribs_title} + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.attribute_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
+ +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.attribute_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/cite.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/cite.htm.svn-base new file mode 100644 index 0000000..d0a3e3a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/cite.htm.svn-base @@ -0,0 +1,141 @@ + + + + {#xhtmlxtras_dlg.title_cite_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/del.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/del.htm.svn-base new file mode 100644 index 0000000..8b07fa8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/del.htm.svn-base @@ -0,0 +1,161 @@ + + + + {#xhtmlxtras_dlg.title_del_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_general_tab} + + + + + + + + + +
: + + + + + +
+
:
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin.js.svn-base new file mode 100644 index 0000000..e519526 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin.js.svn-base @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.XHTMLXtrasPlugin",{init:function(b,c){b.addCommand("mceCite",function(){b.windowManager.open({file:c+"/cite.htm",width:350+parseInt(b.getLang("xhtmlxtras.cite_delta_width",0)),height:250+parseInt(b.getLang("xhtmlxtras.cite_delta_height",0)),inline:1},{plugin_url:c})});b.addCommand("mceAcronym",function(){b.windowManager.open({file:c+"/acronym.htm",width:350+parseInt(b.getLang("xhtmlxtras.acronym_delta_width",0)),height:250+parseInt(b.getLang("xhtmlxtras.acronym_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceAbbr",function(){b.windowManager.open({file:c+"/abbr.htm",width:350+parseInt(b.getLang("xhtmlxtras.abbr_delta_width",0)),height:250+parseInt(b.getLang("xhtmlxtras.abbr_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceDel",function(){b.windowManager.open({file:c+"/del.htm",width:340+parseInt(b.getLang("xhtmlxtras.del_delta_width",0)),height:310+parseInt(b.getLang("xhtmlxtras.del_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceIns",function(){b.windowManager.open({file:c+"/ins.htm",width:340+parseInt(b.getLang("xhtmlxtras.ins_delta_width",0)),height:310+parseInt(b.getLang("xhtmlxtras.ins_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceAttributes",function(){b.windowManager.open({file:c+"/attributes.htm",width:380,height:370,inline:1},{plugin_url:c})});b.addButton("cite",{title:"xhtmlxtras.cite_desc",cmd:"mceCite"});b.addButton("acronym",{title:"xhtmlxtras.acronym_desc",cmd:"mceAcronym"});b.addButton("abbr",{title:"xhtmlxtras.abbr_desc",cmd:"mceAbbr"});b.addButton("del",{title:"xhtmlxtras.del_desc",cmd:"mceDel"});b.addButton("ins",{title:"xhtmlxtras.ins_desc",cmd:"mceIns"});b.addButton("attribs",{title:"xhtmlxtras.attribs_desc",cmd:"mceAttributes"});if(tinymce.isIE){function a(d,e){if(e.set){e.content=e.content.replace(/]+)>/gi,"");e.content=e.content.replace(/<\/abbr>/gi,"")}}b.onBeforeSetContent.add(a);b.onPostProcess.add(a)}b.onNodeChange.add(function(e,d,g,f){g=e.dom.getParent(g,"CITE,ACRONYM,ABBR,DEL,INS");d.setDisabled("cite",f);d.setDisabled("acronym",f);d.setDisabled("abbr",f);d.setDisabled("del",f);d.setDisabled("ins",f);d.setDisabled("attribs",g&&g.nodeName=="BODY");d.setActive("cite",0);d.setActive("acronym",0);d.setActive("abbr",0);d.setActive("del",0);d.setActive("ins",0);if(g){do{d.setDisabled(g.nodeName.toLowerCase(),0);d.setActive(g.nodeName.toLowerCase(),1)}while(g=g.parentNode)}});b.onPreInit.add(function(){b.dom.create("abbr")})},getInfo:function(){return{longname:"XHTML Xtras Plugin",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("xhtmlxtras",tinymce.plugins.XHTMLXtrasPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin_src.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin_src.js.svn-base new file mode 100644 index 0000000..9b51b83 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/editor_plugin_src.js.svn-base @@ -0,0 +1,144 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.XHTMLXtrasPlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceCite', function() { + ed.windowManager.open({ + file : url + '/cite.htm', + width : 350 + parseInt(ed.getLang('xhtmlxtras.cite_delta_width', 0)), + height : 250 + parseInt(ed.getLang('xhtmlxtras.cite_delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceAcronym', function() { + ed.windowManager.open({ + file : url + '/acronym.htm', + width : 350 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_width', 0)), + height : 250 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceAbbr', function() { + ed.windowManager.open({ + file : url + '/abbr.htm', + width : 350 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_width', 0)), + height : 250 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceDel', function() { + ed.windowManager.open({ + file : url + '/del.htm', + width : 340 + parseInt(ed.getLang('xhtmlxtras.del_delta_width', 0)), + height : 310 + parseInt(ed.getLang('xhtmlxtras.del_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceIns', function() { + ed.windowManager.open({ + file : url + '/ins.htm', + width : 340 + parseInt(ed.getLang('xhtmlxtras.ins_delta_width', 0)), + height : 310 + parseInt(ed.getLang('xhtmlxtras.ins_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceAttributes', function() { + ed.windowManager.open({ + file : url + '/attributes.htm', + width : 380, + height : 370, + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('cite', {title : 'xhtmlxtras.cite_desc', cmd : 'mceCite'}); + ed.addButton('acronym', {title : 'xhtmlxtras.acronym_desc', cmd : 'mceAcronym'}); + ed.addButton('abbr', {title : 'xhtmlxtras.abbr_desc', cmd : 'mceAbbr'}); + ed.addButton('del', {title : 'xhtmlxtras.del_desc', cmd : 'mceDel'}); + ed.addButton('ins', {title : 'xhtmlxtras.ins_desc', cmd : 'mceIns'}); + ed.addButton('attribs', {title : 'xhtmlxtras.attribs_desc', cmd : 'mceAttributes'}); + + if (tinymce.isIE) { + function fix(ed, o) { + if (o.set) { + o.content = o.content.replace(/]+)>/gi, ''); + o.content = o.content.replace(/<\/abbr>/gi, ''); + } + }; + + ed.onBeforeSetContent.add(fix); + ed.onPostProcess.add(fix); + } + + ed.onNodeChange.add(function(ed, cm, n, co) { + n = ed.dom.getParent(n, 'CITE,ACRONYM,ABBR,DEL,INS'); + + cm.setDisabled('cite', co); + cm.setDisabled('acronym', co); + cm.setDisabled('abbr', co); + cm.setDisabled('del', co); + cm.setDisabled('ins', co); + cm.setDisabled('attribs', n && n.nodeName == 'BODY'); + cm.setActive('cite', 0); + cm.setActive('acronym', 0); + cm.setActive('abbr', 0); + cm.setActive('del', 0); + cm.setActive('ins', 0); + + // Activate all + if (n) { + do { + cm.setDisabled(n.nodeName.toLowerCase(), 0); + cm.setActive(n.nodeName.toLowerCase(), 1); + } while (n = n.parentNode); + } + }); + + ed.onPreInit.add(function() { + // Fixed IE issue where it can't handle these elements correctly + ed.dom.create('abbr'); + }); + }, + + getInfo : function() { + return { + longname : 'XHTML Xtras Plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('xhtmlxtras', tinymce.plugins.XHTMLXtrasPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/ins.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/ins.htm.svn-base new file mode 100644 index 0000000..6c5470c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/.svn/text-base/ins.htm.svn-base @@ -0,0 +1,161 @@ + + + + {#xhtmlxtras_dlg.title_ins_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_general_tab} + + + + + + + + + +
: + + + + + +
+
:
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm new file mode 100644 index 0000000..3aeac0d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm @@ -0,0 +1,141 @@ + + + + {#xhtmlxtras_dlg.title_abbr_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm new file mode 100644 index 0000000..31ee7b7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm @@ -0,0 +1,141 @@ + + + + {#xhtmlxtras_dlg.title_acronym_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm new file mode 100644 index 0000000..17054da --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm @@ -0,0 +1,148 @@ + + + + {#xhtmlxtras_dlg.attribs_title} + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.attribute_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
+ +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.attribute_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm new file mode 100644 index 0000000..d0a3e3a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm @@ -0,0 +1,141 @@ + + + + {#xhtmlxtras_dlg.title_cite_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/all-wcprops new file mode 100644 index 0000000..84d46f6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css +END +popup.css +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css +END +attributes.css +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/entries new file mode 100644 index 0000000..cb512ea --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +popup.css +file + + + + +2010-06-04T12:51:46.658947Z +ed53e7b6ab799f6a249c3d403047dcfc +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +514 + +attributes.css +file + + + + +2010-06-04T12:51:46.658947Z +abc1b941c6eef8e1ea76915984e8a03e +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +197 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/attributes.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/attributes.css.svn-base new file mode 100644 index 0000000..9a6a235 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/attributes.css.svn-base @@ -0,0 +1,11 @@ +.panel_wrapper div.current { + height: 290px; +} + +#id, #style, #title, #dir, #hreflang, #lang, #classlist, #tabindex, #accesskey { + width: 200px; +} + +#events_panel input { + width: 200px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/popup.css.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/popup.css.svn-base new file mode 100644 index 0000000..e67114d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/.svn/text-base/popup.css.svn-base @@ -0,0 +1,9 @@ +input.field, select.field {width:200px;} +input.picker {width:179px; margin-left: 5px;} +input.disabled {border-color:#F2F2F2;} +img.picker {vertical-align:text-bottom; cursor:pointer;} +h1 {padding: 0 0 5px 0;} +.panel_wrapper div.current {height:160px;} +#xhtmlxtrasdel .panel_wrapper div.current, #xhtmlxtrasins .panel_wrapper div.current {height: 230px;} +a.browse span {display:block; width:20px; height:20px; background:url('../../../themes/advanced/img/icons.gif') -140px -20px;} +#datetime {width:180px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css new file mode 100644 index 0000000..9a6a235 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css @@ -0,0 +1,11 @@ +.panel_wrapper div.current { + height: 290px; +} + +#id, #style, #title, #dir, #hreflang, #lang, #classlist, #tabindex, #accesskey { + width: 200px; +} + +#events_panel input { + width: 200px; +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css new file mode 100644 index 0000000..e67114d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css @@ -0,0 +1,9 @@ +input.field, select.field {width:200px;} +input.picker {width:179px; margin-left: 5px;} +input.disabled {border-color:#F2F2F2;} +img.picker {vertical-align:text-bottom; cursor:pointer;} +h1 {padding: 0 0 5px 0;} +.panel_wrapper div.current {height:160px;} +#xhtmlxtrasdel .panel_wrapper div.current, #xhtmlxtrasins .panel_wrapper div.current {height: 230px;} +a.browse span {display:block; width:20px; height:20px; background:url('../../../themes/advanced/img/icons.gif') -140px -20px;} +#datetime {width:180px;} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm new file mode 100644 index 0000000..8b07fa8 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm @@ -0,0 +1,161 @@ + + + + {#xhtmlxtras_dlg.title_del_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_general_tab} + + + + + + + + + +
: + + + + + +
+
:
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js new file mode 100644 index 0000000..e519526 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js @@ -0,0 +1 @@ +(function(){tinymce.create("tinymce.plugins.XHTMLXtrasPlugin",{init:function(b,c){b.addCommand("mceCite",function(){b.windowManager.open({file:c+"/cite.htm",width:350+parseInt(b.getLang("xhtmlxtras.cite_delta_width",0)),height:250+parseInt(b.getLang("xhtmlxtras.cite_delta_height",0)),inline:1},{plugin_url:c})});b.addCommand("mceAcronym",function(){b.windowManager.open({file:c+"/acronym.htm",width:350+parseInt(b.getLang("xhtmlxtras.acronym_delta_width",0)),height:250+parseInt(b.getLang("xhtmlxtras.acronym_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceAbbr",function(){b.windowManager.open({file:c+"/abbr.htm",width:350+parseInt(b.getLang("xhtmlxtras.abbr_delta_width",0)),height:250+parseInt(b.getLang("xhtmlxtras.abbr_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceDel",function(){b.windowManager.open({file:c+"/del.htm",width:340+parseInt(b.getLang("xhtmlxtras.del_delta_width",0)),height:310+parseInt(b.getLang("xhtmlxtras.del_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceIns",function(){b.windowManager.open({file:c+"/ins.htm",width:340+parseInt(b.getLang("xhtmlxtras.ins_delta_width",0)),height:310+parseInt(b.getLang("xhtmlxtras.ins_delta_width",0)),inline:1},{plugin_url:c})});b.addCommand("mceAttributes",function(){b.windowManager.open({file:c+"/attributes.htm",width:380,height:370,inline:1},{plugin_url:c})});b.addButton("cite",{title:"xhtmlxtras.cite_desc",cmd:"mceCite"});b.addButton("acronym",{title:"xhtmlxtras.acronym_desc",cmd:"mceAcronym"});b.addButton("abbr",{title:"xhtmlxtras.abbr_desc",cmd:"mceAbbr"});b.addButton("del",{title:"xhtmlxtras.del_desc",cmd:"mceDel"});b.addButton("ins",{title:"xhtmlxtras.ins_desc",cmd:"mceIns"});b.addButton("attribs",{title:"xhtmlxtras.attribs_desc",cmd:"mceAttributes"});if(tinymce.isIE){function a(d,e){if(e.set){e.content=e.content.replace(/]+)>/gi,"");e.content=e.content.replace(/<\/abbr>/gi,"")}}b.onBeforeSetContent.add(a);b.onPostProcess.add(a)}b.onNodeChange.add(function(e,d,g,f){g=e.dom.getParent(g,"CITE,ACRONYM,ABBR,DEL,INS");d.setDisabled("cite",f);d.setDisabled("acronym",f);d.setDisabled("abbr",f);d.setDisabled("del",f);d.setDisabled("ins",f);d.setDisabled("attribs",g&&g.nodeName=="BODY");d.setActive("cite",0);d.setActive("acronym",0);d.setActive("abbr",0);d.setActive("del",0);d.setActive("ins",0);if(g){do{d.setDisabled(g.nodeName.toLowerCase(),0);d.setActive(g.nodeName.toLowerCase(),1)}while(g=g.parentNode)}});b.onPreInit.add(function(){b.dom.create("abbr")})},getInfo:function(){return{longname:"XHTML Xtras Plugin",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("xhtmlxtras",tinymce.plugins.XHTMLXtrasPlugin)})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js new file mode 100644 index 0000000..9b51b83 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js @@ -0,0 +1,144 @@ +/** + * editor_plugin_src.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +(function() { + tinymce.create('tinymce.plugins.XHTMLXtrasPlugin', { + init : function(ed, url) { + // Register commands + ed.addCommand('mceCite', function() { + ed.windowManager.open({ + file : url + '/cite.htm', + width : 350 + parseInt(ed.getLang('xhtmlxtras.cite_delta_width', 0)), + height : 250 + parseInt(ed.getLang('xhtmlxtras.cite_delta_height', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceAcronym', function() { + ed.windowManager.open({ + file : url + '/acronym.htm', + width : 350 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_width', 0)), + height : 250 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceAbbr', function() { + ed.windowManager.open({ + file : url + '/abbr.htm', + width : 350 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_width', 0)), + height : 250 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceDel', function() { + ed.windowManager.open({ + file : url + '/del.htm', + width : 340 + parseInt(ed.getLang('xhtmlxtras.del_delta_width', 0)), + height : 310 + parseInt(ed.getLang('xhtmlxtras.del_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceIns', function() { + ed.windowManager.open({ + file : url + '/ins.htm', + width : 340 + parseInt(ed.getLang('xhtmlxtras.ins_delta_width', 0)), + height : 310 + parseInt(ed.getLang('xhtmlxtras.ins_delta_width', 0)), + inline : 1 + }, { + plugin_url : url + }); + }); + + ed.addCommand('mceAttributes', function() { + ed.windowManager.open({ + file : url + '/attributes.htm', + width : 380, + height : 370, + inline : 1 + }, { + plugin_url : url + }); + }); + + // Register buttons + ed.addButton('cite', {title : 'xhtmlxtras.cite_desc', cmd : 'mceCite'}); + ed.addButton('acronym', {title : 'xhtmlxtras.acronym_desc', cmd : 'mceAcronym'}); + ed.addButton('abbr', {title : 'xhtmlxtras.abbr_desc', cmd : 'mceAbbr'}); + ed.addButton('del', {title : 'xhtmlxtras.del_desc', cmd : 'mceDel'}); + ed.addButton('ins', {title : 'xhtmlxtras.ins_desc', cmd : 'mceIns'}); + ed.addButton('attribs', {title : 'xhtmlxtras.attribs_desc', cmd : 'mceAttributes'}); + + if (tinymce.isIE) { + function fix(ed, o) { + if (o.set) { + o.content = o.content.replace(/]+)>/gi, ''); + o.content = o.content.replace(/<\/abbr>/gi, ''); + } + }; + + ed.onBeforeSetContent.add(fix); + ed.onPostProcess.add(fix); + } + + ed.onNodeChange.add(function(ed, cm, n, co) { + n = ed.dom.getParent(n, 'CITE,ACRONYM,ABBR,DEL,INS'); + + cm.setDisabled('cite', co); + cm.setDisabled('acronym', co); + cm.setDisabled('abbr', co); + cm.setDisabled('del', co); + cm.setDisabled('ins', co); + cm.setDisabled('attribs', n && n.nodeName == 'BODY'); + cm.setActive('cite', 0); + cm.setActive('acronym', 0); + cm.setActive('abbr', 0); + cm.setActive('del', 0); + cm.setActive('ins', 0); + + // Activate all + if (n) { + do { + cm.setDisabled(n.nodeName.toLowerCase(), 0); + cm.setActive(n.nodeName.toLowerCase(), 1); + } while (n = n.parentNode); + } + }); + + ed.onPreInit.add(function() { + // Fixed IE issue where it can't handle these elements correctly + ed.dom.create('abbr'); + }); + }, + + getInfo : function() { + return { + longname : 'XHTML Xtras Plugin', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras', + version : tinymce.majorVersion + "." + tinymce.minorVersion + }; + } + }); + + // Register plugin + tinymce.PluginManager.add('xhtmlxtras', tinymce.plugins.XHTMLXtrasPlugin); +})(); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm new file mode 100644 index 0000000..6c5470c --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm @@ -0,0 +1,161 @@ + + + + {#xhtmlxtras_dlg.title_ins_element} + + + + + + + + + +
+ + +
+
+
+ {#xhtmlxtras_dlg.fieldset_general_tab} + + + + + + + + + +
: + + + + + +
+
:
+
+
+ {#xhtmlxtras_dlg.fieldset_attrib_tab} + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
: + +
:
: + +
: + +
+
+
+
+
+ {#xhtmlxtras_dlg.fieldset_events_tab} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
:
:
:
:
:
:
:
:
:
:
:
+
+
+
+
+ + + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/all-wcprops new file mode 100644 index 0000000..d8127a0 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/all-wcprops @@ -0,0 +1,47 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js +END +cite.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js +END +del.js +K 25 +svn:wc:ra_dav:version-url +V 95 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/del.js +END +abbr.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js +END +attributes.js +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/attributes.js +END +acronym.js +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js +END +ins.js +K 25 +svn:wc:ra_dav:version-url +V 95 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js +END +element_common.js +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/element_common.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/entries new file mode 100644 index 0000000..01353ab --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/entries @@ -0,0 +1,266 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +cite.js +file + + + + +2010-06-04T12:51:46.682280Z +ba39487ce6a625538b838c21502bbaa7 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +541 + +del.js +file + + + + +2010-06-04T12:51:46.682280Z +a0f78a357ef08838b1c3ea677260e071 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1751 + +abbr.js +file + + + + +2010-06-04T12:51:46.682280Z +d91ae7d986336de4ecb977d19dcfab19 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +541 + +attributes.js +file + + + + +2010-06-04T12:51:46.682280Z +c2627256b3039e49983ff53d0fcb5c27 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +3797 + +acronym.js +file + + + + +2010-06-04T12:51:46.682280Z +0a19f79bdc9222d3273712fe37a8051c +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +559 + +ins.js +file + + + + +2010-06-04T12:51:46.682280Z +482bdcf564f171f510d3ccb2db25915a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1749 + +element_common.js +file + + + + +2010-06-04T12:51:46.682280Z +ac65011064cf320b7eb4e3451c848a54 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +7244 + diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/abbr.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/abbr.js.svn-base new file mode 100644 index 0000000..4b51a25 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/abbr.js.svn-base @@ -0,0 +1,28 @@ +/** + * abbr.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +function init() { + SXE.initElementDialog('abbr'); + if (SXE.currentAction == "update") { + SXE.showRemoveButton(); + } +} + +function insertAbbr() { + SXE.insertElement('abbr'); + tinyMCEPopup.close(); +} + +function removeAbbr() { + SXE.removeElement('abbr'); + tinyMCEPopup.close(); +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/acronym.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/acronym.js.svn-base new file mode 100644 index 0000000..6ec2f88 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/acronym.js.svn-base @@ -0,0 +1,28 @@ +/** + * acronym.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +function init() { + SXE.initElementDialog('acronym'); + if (SXE.currentAction == "update") { + SXE.showRemoveButton(); + } +} + +function insertAcronym() { + SXE.insertElement('acronym'); + tinyMCEPopup.close(); +} + +function removeAcronym() { + SXE.removeElement('acronym'); + tinyMCEPopup.close(); +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/attributes.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/attributes.js.svn-base new file mode 100644 index 0000000..d62a219 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/attributes.js.svn-base @@ -0,0 +1,126 @@ +/** + * attributes.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +function init() { + tinyMCEPopup.resizeToInnerSize(); + var inst = tinyMCEPopup.editor; + var dom = inst.dom; + var elm = inst.selection.getNode(); + var f = document.forms[0]; + var onclick = dom.getAttrib(elm, 'onclick'); + + setFormValue('title', dom.getAttrib(elm, 'title')); + setFormValue('id', dom.getAttrib(elm, 'id')); + setFormValue('style', dom.getAttrib(elm, "style")); + setFormValue('dir', dom.getAttrib(elm, 'dir')); + setFormValue('lang', dom.getAttrib(elm, 'lang')); + setFormValue('tabindex', dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : "")); + setFormValue('accesskey', dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : "")); + setFormValue('onfocus', dom.getAttrib(elm, 'onfocus')); + setFormValue('onblur', dom.getAttrib(elm, 'onblur')); + setFormValue('onclick', onclick); + setFormValue('ondblclick', dom.getAttrib(elm, 'ondblclick')); + setFormValue('onmousedown', dom.getAttrib(elm, 'onmousedown')); + setFormValue('onmouseup', dom.getAttrib(elm, 'onmouseup')); + setFormValue('onmouseover', dom.getAttrib(elm, 'onmouseover')); + setFormValue('onmousemove', dom.getAttrib(elm, 'onmousemove')); + setFormValue('onmouseout', dom.getAttrib(elm, 'onmouseout')); + setFormValue('onkeypress', dom.getAttrib(elm, 'onkeypress')); + setFormValue('onkeydown', dom.getAttrib(elm, 'onkeydown')); + setFormValue('onkeyup', dom.getAttrib(elm, 'onkeyup')); + className = dom.getAttrib(elm, 'class'); + + addClassesToList('classlist', 'advlink_styles'); + selectByValue(f, 'classlist', className, true); + + TinyMCE_EditableSelects.init(); +} + +function setFormValue(name, value) { + if(value && document.forms[0].elements[name]){ + document.forms[0].elements[name].value = value; + } +} + +function insertAction() { + var inst = tinyMCEPopup.editor; + var elm = inst.selection.getNode(); + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + setAllAttribs(elm); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); +} + +function setAttrib(elm, attrib, value) { + var formObj = document.forms[0]; + var valueElm = formObj.elements[attrib.toLowerCase()]; + var inst = tinyMCEPopup.editor; + var dom = inst.dom; + + if (typeof(value) == "undefined" || value == null) { + value = ""; + + if (valueElm) + value = valueElm.value; + } + + if (value != "") { + dom.setAttrib(elm, attrib.toLowerCase(), value); + + if (attrib == "style") + attrib = "style.cssText"; + + if (attrib.substring(0, 2) == 'on') + value = 'return true;' + value; + + if (attrib == "class") + attrib = "className"; + + elm[attrib]=value; + } else + elm.removeAttribute(attrib); +} + +function setAllAttribs(elm) { + var f = document.forms[0]; + + setAttrib(elm, 'title'); + setAttrib(elm, 'id'); + setAttrib(elm, 'style'); + setAttrib(elm, 'class', getSelectValue(f, 'classlist')); + setAttrib(elm, 'dir'); + setAttrib(elm, 'lang'); + setAttrib(elm, 'tabindex'); + setAttrib(elm, 'accesskey'); + setAttrib(elm, 'onfocus'); + setAttrib(elm, 'onblur'); + setAttrib(elm, 'onclick'); + setAttrib(elm, 'ondblclick'); + setAttrib(elm, 'onmousedown'); + setAttrib(elm, 'onmouseup'); + setAttrib(elm, 'onmouseover'); + setAttrib(elm, 'onmousemove'); + setAttrib(elm, 'onmouseout'); + setAttrib(elm, 'onkeypress'); + setAttrib(elm, 'onkeydown'); + setAttrib(elm, 'onkeyup'); + + // Refresh in old MSIE +// if (tinyMCE.isMSIE5) +// elm.outerHTML = elm.outerHTML; +} + +function insertAttribute() { + tinyMCEPopup.close(); +} + +tinyMCEPopup.onInit.add(init); +tinyMCEPopup.requireLangPack(); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/cite.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/cite.js.svn-base new file mode 100644 index 0000000..009b715 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/cite.js.svn-base @@ -0,0 +1,28 @@ +/** + * cite.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +function init() { + SXE.initElementDialog('cite'); + if (SXE.currentAction == "update") { + SXE.showRemoveButton(); + } +} + +function insertCite() { + SXE.insertElement('cite'); + tinyMCEPopup.close(); +} + +function removeCite() { + SXE.removeElement('cite'); + tinyMCEPopup.close(); +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/del.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/del.js.svn-base new file mode 100644 index 0000000..9e5d8c5 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/del.js.svn-base @@ -0,0 +1,63 @@ +/** + * del.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +function init() { + SXE.initElementDialog('del'); + if (SXE.currentAction == "update") { + setFormValue('datetime', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'datetime')); + setFormValue('cite', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'cite')); + SXE.showRemoveButton(); + } +} + +function setElementAttribs(elm) { + setAllCommonAttribs(elm); + setAttrib(elm, 'datetime'); + setAttrib(elm, 'cite'); +} + +function insertDel() { + var elm = tinyMCEPopup.editor.dom.getParent(SXE.focusElement, 'DEL'); + + tinyMCEPopup.execCommand('mceBeginUndoLevel'); + if (elm == null) { + var s = SXE.inst.selection.getContent(); + if(s.length > 0) { + insertInlineElement('del'); + var elementArray = tinymce.grep(SXE.inst.dom.select('del'), function(n) {return n.id == '#sxe_temp_del#';}); + for (var i=0; i 0) { + tagName = element_name; + + insertInlineElement(element_name); + var elementArray = tinymce.grep(SXE.inst.dom.select(element_name)); + for (var i=0; i -1) ? true : false; +} + +SXE.removeClass = function(elm,cl) { + if(elm.className == null || elm.className == "" || !SXE.containsClass(elm,cl)) { + return true; + } + var classNames = elm.className.split(" "); + var newClassNames = ""; + for (var x = 0, cnl = classNames.length; x < cnl; x++) { + if (classNames[x] != cl) { + newClassNames += (classNames[x] + " "); + } + } + elm.className = newClassNames.substring(0,newClassNames.length-1); //removes extra space at the end +} + +SXE.addClass = function(elm,cl) { + if(!SXE.containsClass(elm,cl)) elm.className ? elm.className += " " + cl : elm.className = cl; + return true; +} + +function insertInlineElement(en) { + var ed = tinyMCEPopup.editor, dom = ed.dom; + + ed.getDoc().execCommand('FontName', false, 'mceinline'); + tinymce.each(dom.select('span,font'), function(n) { + if (n.style.fontFamily == 'mceinline' || n.face == 'mceinline') + dom.replace(dom.create(en, {_mce_new : 1}), n, 1); + }); +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/ins.js.svn-base b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/ins.js.svn-base new file mode 100644 index 0000000..3774f0a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/.svn/text-base/ins.js.svn-base @@ -0,0 +1,62 @@ +/** + * ins.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +function init() { + SXE.initElementDialog('ins'); + if (SXE.currentAction == "update") { + setFormValue('datetime', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'datetime')); + setFormValue('cite', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'cite')); + SXE.showRemoveButton(); + } +} + +function setElementAttribs(elm) { + setAllCommonAttribs(elm); + setAttrib(elm, 'datetime'); + setAttrib(elm, 'cite'); +} + +function insertIns() { + var elm = tinyMCEPopup.editor.dom.getParent(SXE.focusElement, 'INS'); + tinyMCEPopup.execCommand('mceBeginUndoLevel'); + if (elm == null) { + var s = SXE.inst.selection.getContent(); + if(s.length > 0) { + insertInlineElement('INS'); + var elementArray = tinymce.grep(SXE.inst.dom.select('ins'), function(n) {return n.id == '#sxe_temp_ins#';}); + for (var i=0; i 0) { + insertInlineElement('del'); + var elementArray = tinymce.grep(SXE.inst.dom.select('del'), function(n) {return n.id == '#sxe_temp_del#';}); + for (var i=0; i 0) { + tagName = element_name; + + insertInlineElement(element_name); + var elementArray = tinymce.grep(SXE.inst.dom.select(element_name)); + for (var i=0; i -1) ? true : false; +} + +SXE.removeClass = function(elm,cl) { + if(elm.className == null || elm.className == "" || !SXE.containsClass(elm,cl)) { + return true; + } + var classNames = elm.className.split(" "); + var newClassNames = ""; + for (var x = 0, cnl = classNames.length; x < cnl; x++) { + if (classNames[x] != cl) { + newClassNames += (classNames[x] + " "); + } + } + elm.className = newClassNames.substring(0,newClassNames.length-1); //removes extra space at the end +} + +SXE.addClass = function(elm,cl) { + if(!SXE.containsClass(elm,cl)) elm.className ? elm.className += " " + cl : elm.className = cl; + return true; +} + +function insertInlineElement(en) { + var ed = tinyMCEPopup.editor, dom = ed.dom; + + ed.getDoc().execCommand('FontName', false, 'mceinline'); + tinymce.each(dom.select('span,font'), function(n) { + if (n.style.fontFamily == 'mceinline' || n.face == 'mceinline') + dom.replace(dom.create(en, {_mce_new : 1}), n, 1); + }); +} diff --git a/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js new file mode 100644 index 0000000..3774f0a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js @@ -0,0 +1,62 @@ +/** + * ins.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +function init() { + SXE.initElementDialog('ins'); + if (SXE.currentAction == "update") { + setFormValue('datetime', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'datetime')); + setFormValue('cite', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'cite')); + SXE.showRemoveButton(); + } +} + +function setElementAttribs(elm) { + setAllCommonAttribs(elm); + setAttrib(elm, 'datetime'); + setAttrib(elm, 'cite'); +} + +function insertIns() { + var elm = tinyMCEPopup.editor.dom.getParent(SXE.focusElement, 'INS'); + tinyMCEPopup.execCommand('mceBeginUndoLevel'); + if (elm == null) { + var s = SXE.inst.selection.getContent(); + if(s.length > 0) { + insertInlineElement('INS'); + var elementArray = tinymce.grep(SXE.inst.dom.select('ins'), function(n) {return n.id == '#sxe_temp_ins#';}); + for (var i=0; i + + + {#advanced_dlg.about_title} + + + + + + + +
+
+

{#advanced_dlg.about_title}

+

Version: ()

+

TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under LGPL + by Moxiecode Systems AB. It has the ability to convert HTML TEXTAREA fields or other HTML elements to editor instances.

+

Copyright © 2003-2008, Moxiecode Systems AB, All rights reserved.

+

For more information about this software visit the TinyMCE website.

+ +
+ Got Moxie? + Hosted By Sourceforge + Also on freshmeat +
+
+ +
+
+

{#advanced_dlg.about_loaded}

+ +
+
+ +

 

+
+
+ +
+
+
+
+ +
+ +
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/anchor.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/anchor.htm.svn-base new file mode 100644 index 0000000..2bc63fc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/anchor.htm.svn-base @@ -0,0 +1,26 @@ + + + + {#advanced_dlg.anchor_title} + + + + +
+ + + + + + + + +
{#advanced_dlg.anchor_title}
{#advanced_dlg.anchor_name}:
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/charmap.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/charmap.htm.svn-base new file mode 100644 index 0000000..1e74805 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/charmap.htm.svn-base @@ -0,0 +1,53 @@ + + + + {#advanced_dlg.charmap_title} + + + + + + + + + + + + + + + + +
{#advanced_dlg.charmap_title}
+ + + + + + + + + +
 
 
+
+ + + + + + + + + + + + + + + + +
HTML-Code
 
 
NUM-Code
 
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/color_picker.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/color_picker.htm.svn-base new file mode 100644 index 0000000..096e755 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/color_picker.htm.svn-base @@ -0,0 +1,73 @@ + + + + {#advanced_dlg.colorpicker_title} + + + + + +
+ + +
+
+
+ {#advanced_dlg.colorpicker_picker_title} +
+ + +
+ +
+ +
+
+
+
+ +
+
+ {#advanced_dlg.colorpicker_palette_title} +
+ +
+ +
+
+
+ +
+
+ {#advanced_dlg.colorpicker_named_title} +
+ +
+ +
+ +
+ {#advanced_dlg.colorpicker_name} +
+
+
+
+ +
+ + +
+ +
+ +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/editor_template.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/editor_template.js.svn-base new file mode 100644 index 0000000..914b9f4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/editor_template.js.svn-base @@ -0,0 +1 @@ +(function(e){var d=e.DOM,b=e.dom.Event,h=e.extend,f=e.each,a=e.util.Cookie,g,c=e.explode;e.ThemeManager.requireLangPack("advanced");e.create("tinymce.themes.AdvancedTheme",{sizes:[8,10,12,14,18,24,36],controls:{bold:["bold_desc","Bold"],italic:["italic_desc","Italic"],underline:["underline_desc","Underline"],strikethrough:["striketrough_desc","Strikethrough"],justifyleft:["justifyleft_desc","JustifyLeft"],justifycenter:["justifycenter_desc","JustifyCenter"],justifyright:["justifyright_desc","JustifyRight"],justifyfull:["justifyfull_desc","JustifyFull"],bullist:["bullist_desc","InsertUnorderedList"],numlist:["numlist_desc","InsertOrderedList"],outdent:["outdent_desc","Outdent"],indent:["indent_desc","Indent"],cut:["cut_desc","Cut"],copy:["copy_desc","Copy"],paste:["paste_desc","Paste"],undo:["undo_desc","Undo"],redo:["redo_desc","Redo"],link:["link_desc","mceLink"],unlink:["unlink_desc","unlink"],image:["image_desc","mceImage"],cleanup:["cleanup_desc","mceCleanup"],help:["help_desc","mceHelp"],code:["code_desc","mceCodeEditor"],hr:["hr_desc","InsertHorizontalRule"],removeformat:["removeformat_desc","RemoveFormat"],sub:["sub_desc","subscript"],sup:["sup_desc","superscript"],forecolor:["forecolor_desc","ForeColor"],forecolorpicker:["forecolor_desc","mceForeColor"],backcolor:["backcolor_desc","HiliteColor"],backcolorpicker:["backcolor_desc","mceBackColor"],charmap:["charmap_desc","mceCharMap"],visualaid:["visualaid_desc","mceToggleVisualAid"],anchor:["anchor_desc","mceInsertAnchor"],newdocument:["newdocument_desc","mceNewDocument"],blockquote:["blockquote_desc","mceBlockQuote"]},stateControls:["bold","italic","underline","strikethrough","bullist","numlist","justifyleft","justifycenter","justifyright","justifyfull","sub","sup","blockquote"],init:function(j,k){var l=this,m,i,n;l.editor=j;l.url=k;l.onResolveName=new e.util.Dispatcher(this);l.settings=m=h({theme_advanced_path:true,theme_advanced_toolbar_location:"bottom",theme_advanced_buttons1:"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect",theme_advanced_buttons2:"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code",theme_advanced_buttons3:"hr,removeformat,visualaid,|,sub,sup,|,charmap",theme_advanced_blockformats:"p,address,pre,h1,h2,h3,h4,h5,h6",theme_advanced_toolbar_align:"center",theme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",theme_advanced_more_colors:1,theme_advanced_row_height:23,theme_advanced_resize_horizontal:1,theme_advanced_resizing_use_cookie:1,theme_advanced_font_sizes:"1,2,3,4,5,6,7",readonly:j.settings.readonly},j.settings);if(!m.font_size_style_values){m.font_size_style_values="8pt,10pt,12pt,14pt,18pt,24pt,36pt"}if(e.is(m.theme_advanced_font_sizes,"string")){m.font_size_style_values=e.explode(m.font_size_style_values);m.font_size_classes=e.explode(m.font_size_classes||"");n={};j.settings.theme_advanced_font_sizes=m.theme_advanced_font_sizes;f(j.getParam("theme_advanced_font_sizes","","hash"),function(q,p){var o;if(p==q&&q>=1&&q<=7){p=q+" ("+l.sizes[q-1]+"pt)";o=m.font_size_classes[q-1];q=m.font_size_style_values[q-1]||(l.sizes[q-1]+"pt")}if(/^\s*\./.test(q)){o=q.replace(/\./g,"")}n[p]=o?{"class":o}:{fontSize:q}});m.theme_advanced_font_sizes=n}if((i=m.theme_advanced_path_location)&&i!="none"){m.theme_advanced_statusbar_location=m.theme_advanced_path_location}if(m.theme_advanced_statusbar_location=="none"){m.theme_advanced_statusbar_location=0}j.onInit.add(function(){if(!j.settings.readonly){j.onNodeChange.add(l._nodeChanged,l)}if(j.settings.content_css!==false){j.dom.loadCSS(j.baseURI.toAbsolute("themes/advanced/skins/"+j.settings.skin+"/content.css"))}});j.onSetProgressState.add(function(q,o,r){var s,t=q.id,p;if(o){l.progressTimer=setTimeout(function(){s=q.getContainer();s=s.insertBefore(d.create("DIV",{style:"position:relative"}),s.firstChild);p=d.get(q.id+"_tbl");d.add(s,"div",{id:t+"_blocker","class":"mceBlocker",style:{width:p.clientWidth+2,height:p.clientHeight+2}});d.add(s,"div",{id:t+"_progress","class":"mceProgress",style:{left:p.clientWidth/2,top:p.clientHeight/2}})},r||0)}else{d.remove(t+"_blocker");d.remove(t+"_progress");clearTimeout(l.progressTimer)}});d.loadCSS(m.editor_css?j.documentBaseURI.toAbsolute(m.editor_css):k+"/skins/"+j.settings.skin+"/ui.css");if(m.skin_variant){d.loadCSS(k+"/skins/"+j.settings.skin+"/ui_"+m.skin_variant+".css")}},createControl:function(l,i){var j,k;if(k=i.createControl(l)){return k}switch(l){case"styleselect":return this._createStyleSelect();case"formatselect":return this._createBlockFormats();case"fontselect":return this._createFontSelect();case"fontsizeselect":return this._createFontSizeSelect();case"forecolor":return this._createForeColorMenu();case"backcolor":return this._createBackColorMenu()}if((j=this.controls[l])){return i.createButton(l,{title:"advanced."+j[0],cmd:j[1],ui:j[2],value:j[3]})}},execCommand:function(k,j,l){var i=this["_"+k];if(i){i.call(this,j,l);return true}return false},_importClasses:function(k){var i=this.editor,j=i.controlManager.get("styleselect");if(j.getLength()==0){f(i.dom.getClasses(),function(n,l){var m="style_"+l;i.formatter.register(m,{inline:"span",classes:n["class"]});j.add(n["class"],m)})}},_createStyleSelect:function(m){var k=this,i=k.editor,j=i.controlManager,l;l=j.createListBox("styleselect",{title:"advanced.style_select",onselect:function(n){i.focus();i.formatter.toggle(n);return false}});i.onInit.add(function(){var o=0,n=i.getParam("style_formats");if(n){f(n,function(p){var q,r=0;f(p,function(){r++});if(r>1){q=p.name=p.name||"style_"+(o++);i.formatter.register(q,p);l.add(p.title,q)}else{l.add(p.title)}})}else{f(i.getParam("theme_advanced_styles","","hash"),function(r,q){var p;if(r){p="style_"+(o++);i.formatter.register(p,{inline:"span",classes:r});l.add(k.editor.translate(q),p)}})}});if(l.getLength()==0){l.onPostRender.add(function(o,p){if(!l.NativeListBox){b.add(p.id+"_text","focus",k._importClasses,k);b.add(p.id+"_text","mousedown",k._importClasses,k);b.add(p.id+"_open","focus",k._importClasses,k);b.add(p.id+"_open","mousedown",k._importClasses,k)}else{b.add(p.id,"focus",k._importClasses,k)}})}return l},_createFontSelect:function(){var k,j=this,i=j.editor;k=i.controlManager.createListBox("fontselect",{title:"advanced.fontdefault",onselect:function(l){i.execCommand("FontName",false,l);return false}});if(k){f(i.getParam("theme_advanced_fonts",j.settings.theme_advanced_fonts,"hash"),function(m,l){k.add(i.translate(l),m,{style:m.indexOf("dings")==-1?"font-family:"+m:""})})}return k},_createFontSizeSelect:function(){var m=this,k=m.editor,n,l=0,j=[];n=k.controlManager.createListBox("fontsizeselect",{title:"advanced.font_size",onselect:function(i){if(i.fontSize){k.execCommand("FontSize",false,i.fontSize)}else{f(m.settings.theme_advanced_font_sizes,function(p,o){if(p["class"]){j.push(p["class"])}});k.editorCommands._applyInlineStyle("span",{"class":i["class"]},{check_classes:j})}return false}});if(n){f(m.settings.theme_advanced_font_sizes,function(o,i){var p=o.fontSize;if(p>=1&&p<=7){p=m.sizes[parseInt(p)-1]+"pt"}n.add(i,o,{style:"font-size:"+p,"class":"mceFontSize"+(l++)+(" "+(o["class"]||""))})})}return n},_createBlockFormats:function(){var k,i={p:"advanced.paragraph",address:"advanced.address",pre:"advanced.pre",h1:"advanced.h1",h2:"advanced.h2",h3:"advanced.h3",h4:"advanced.h4",h5:"advanced.h5",h6:"advanced.h6",div:"advanced.div",blockquote:"advanced.blockquote",code:"advanced.code",dt:"advanced.dt",dd:"advanced.dd",samp:"advanced.samp"},j=this;k=j.editor.controlManager.createListBox("formatselect",{title:"advanced.block",cmd:"FormatBlock"});if(k){f(j.editor.getParam("theme_advanced_blockformats",j.settings.theme_advanced_blockformats,"hash"),function(m,l){k.add(j.editor.translate(l!=m?l:i[m]),m,{"class":"mce_formatPreview mce_"+m})})}return k},_createForeColorMenu:function(){var m,j=this,k=j.settings,l={},i;if(k.theme_advanced_more_colors){l.more_colors_func=function(){j._mceColorPicker(0,{color:m.value,func:function(n){m.setColor(n)}})}}if(i=k.theme_advanced_text_colors){l.colors=i}if(k.theme_advanced_default_foreground_color){l.default_color=k.theme_advanced_default_foreground_color}l.title="advanced.forecolor_desc";l.cmd="ForeColor";l.scope=this;m=j.editor.controlManager.createColorSplitButton("forecolor",l);return m},_createBackColorMenu:function(){var m,j=this,k=j.settings,l={},i;if(k.theme_advanced_more_colors){l.more_colors_func=function(){j._mceColorPicker(0,{color:m.value,func:function(n){m.setColor(n)}})}}if(i=k.theme_advanced_background_colors){l.colors=i}if(k.theme_advanced_default_background_color){l.default_color=k.theme_advanced_default_background_color}l.title="advanced.backcolor_desc";l.cmd="HiliteColor";l.scope=this;m=j.editor.controlManager.createColorSplitButton("backcolor",l);return m},renderUI:function(k){var m,l,q,v=this,r=v.editor,w=v.settings,u,j,i;m=j=d.create("span",{id:r.id+"_parent","class":"mceEditor "+r.settings.skin+"Skin"+(w.skin_variant?" "+r.settings.skin+"Skin"+v._ufirst(w.skin_variant):"")});if(!d.boxModel){m=d.add(m,"div",{"class":"mceOldBoxModel"})}m=u=d.add(m,"table",{id:r.id+"_tbl","class":"mceLayout",cellSpacing:0,cellPadding:0});m=q=d.add(m,"tbody");switch((w.theme_advanced_layout_manager||"").toLowerCase()){case"rowlayout":l=v._rowLayout(w,q,k);break;case"customlayout":l=r.execCallback("theme_advanced_custom_layout",w,q,k,j);break;default:l=v._simpleLayout(w,q,k,j)}m=k.targetNode;i=d.stdMode?u.getElementsByTagName("tr"):u.rows;d.addClass(i[0],"mceFirst");d.addClass(i[i.length-1],"mceLast");f(d.select("tr",q),function(o){d.addClass(o.firstChild,"mceFirst");d.addClass(o.childNodes[o.childNodes.length-1],"mceLast")});if(d.get(w.theme_advanced_toolbar_container)){d.get(w.theme_advanced_toolbar_container).appendChild(j)}else{d.insertAfter(j,m)}b.add(r.id+"_path_row","click",function(n){n=n.target;if(n.nodeName=="A"){v._sel(n.className.replace(/^.*mcePath_([0-9]+).*$/,"$1"));return b.cancel(n)}});if(!r.getParam("accessibility_focus")){b.add(d.add(j,"a",{href:"#"},""),"focus",function(){tinyMCE.get(r.id).focus()})}if(w.theme_advanced_toolbar_location=="external"){k.deltaHeight=0}v.deltaHeight=k.deltaHeight;k.targetNode=null;return{iframeContainer:l,editorContainer:r.id+"_parent",sizeContainer:u,deltaHeight:k.deltaHeight}},getInfo:function(){return{longname:"Advanced theme",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",version:e.majorVersion+"."+e.minorVersion}},resizeBy:function(i,j){var k=d.get(this.editor.id+"_tbl");this.resizeTo(k.clientWidth+i,k.clientHeight+j)},resizeTo:function(i,l){var j=this.editor,k=j.settings,n=d.get(j.id+"_tbl"),o=d.get(j.id+"_ifr"),m;i=Math.max(k.theme_advanced_resizing_min_width||100,i);l=Math.max(k.theme_advanced_resizing_min_height||100,l);i=Math.min(k.theme_advanced_resizing_max_width||65535,i);l=Math.min(k.theme_advanced_resizing_max_height||65535,l);m=n.clientHeight-o.clientHeight;d.setStyle(o,"height",l-m);d.setStyles(n,{width:i,height:l})},destroy:function(){var i=this.editor.id;b.clear(i+"_resize");b.clear(i+"_path_row");b.clear(i+"_external_close")},_simpleLayout:function(y,r,k,i){var x=this,u=x.editor,v=y.theme_advanced_toolbar_location,m=y.theme_advanced_statusbar_location,l,j,q,w;if(y.readonly){l=d.add(r,"tr");l=j=d.add(l,"td",{"class":"mceIframeContainer"});return j}if(v=="top"){x._addToolbars(r,k)}if(v=="external"){l=w=d.create("div",{style:"position:relative"});l=d.add(l,"div",{id:u.id+"_external","class":"mceExternalToolbar"});d.add(l,"a",{id:u.id+"_external_close",href:"javascript:;","class":"mceExternalClose"});l=d.add(l,"table",{id:u.id+"_tblext",cellSpacing:0,cellPadding:0});q=d.add(l,"tbody");if(i.firstChild.className=="mceOldBoxModel"){i.firstChild.appendChild(w)}else{i.insertBefore(w,i.firstChild)}x._addToolbars(q,k);u.onMouseUp.add(function(){var o=d.get(u.id+"_external");d.show(o);d.hide(g);var n=b.add(u.id+"_external_close","click",function(){d.hide(u.id+"_external");b.remove(u.id+"_external_close","click",n)});d.show(o);d.setStyle(o,"top",0-d.getRect(u.id+"_tblext").h-1);d.hide(o);d.show(o);o.style.filter="";g=u.id+"_external";o=null})}if(m=="top"){x._addStatusBar(r,k)}if(!y.theme_advanced_toolbar_container){l=d.add(r,"tr");l=j=d.add(l,"td",{"class":"mceIframeContainer"})}if(v=="bottom"){x._addToolbars(r,k)}if(m=="bottom"){x._addStatusBar(r,k)}return j},_rowLayout:function(w,m,k){var v=this,p=v.editor,u,x,i=p.controlManager,l,j,r,q;u=w.theme_advanced_containers_default_class||"";x=w.theme_advanced_containers_default_align||"center";f(c(w.theme_advanced_containers||""),function(s,o){var n=w["theme_advanced_container_"+s]||"";switch(n.toLowerCase()){case"mceeditor":l=d.add(m,"tr");l=j=d.add(l,"td",{"class":"mceIframeContainer"});break;case"mceelementpath":v._addStatusBar(m,k);break;default:q=(w["theme_advanced_container_"+s+"_align"]||x).toLowerCase();q="mce"+v._ufirst(q);l=d.add(d.add(m,"tr"),"td",{"class":"mceToolbar "+(w["theme_advanced_container_"+s+"_class"]||u)+" "+q||x});r=i.createToolbar("toolbar"+o);v._addControls(n,r);d.setHTML(l,r.renderHTML());k.deltaHeight-=w.theme_advanced_row_height}});return j},_addControls:function(j,i){var k=this,l=k.settings,m,n=k.editor.controlManager;if(l.theme_advanced_disable&&!k._disabled){m={};f(c(l.theme_advanced_disable),function(o){m[o]=1});k._disabled=m}else{m=k._disabled}f(c(j),function(p){var o;if(m&&m[p]){return}if(p=="tablecontrols"){f(["table","|","row_props","cell_props","|","row_before","row_after","delete_row","|","col_before","col_after","delete_col","|","split_cells","merge_cells"],function(q){q=k.createControl(q,n);if(q){i.add(q)}});return}o=k.createControl(p,n);if(o){i.add(o)}})},_addToolbars:function(w,k){var z=this,p,m,r=z.editor,A=z.settings,y,j=r.controlManager,u,l,q=[],x;x=A.theme_advanced_toolbar_align.toLowerCase();x="mce"+z._ufirst(x);l=d.add(d.add(w,"tr"),"td",{"class":"mceToolbar "+x});if(!r.getParam("accessibility_focus")){q.push(d.createHTML("a",{href:"#",onfocus:"tinyMCE.get('"+r.id+"').focus();"},""))}q.push(d.createHTML("a",{href:"#",accesskey:"q",title:r.getLang("advanced.toolbar_focus")},""));for(p=1;(y=A["theme_advanced_buttons"+p]);p++){m=j.createToolbar("toolbar"+p,{"class":"mceToolbarRow"+p});if(A["theme_advanced_buttons"+p+"_add"]){y+=","+A["theme_advanced_buttons"+p+"_add"]}if(A["theme_advanced_buttons"+p+"_add_before"]){y=A["theme_advanced_buttons"+p+"_add_before"]+","+y}z._addControls(y,m);q.push(m.renderHTML());k.deltaHeight-=A.theme_advanced_row_height}q.push(d.createHTML("a",{href:"#",accesskey:"z",title:r.getLang("advanced.toolbar_focus"),onfocus:"tinyMCE.getInstanceById('"+r.id+"').focus();"},""));d.setHTML(l,q.join(""))},_addStatusBar:function(m,j){var k,v=this,p=v.editor,w=v.settings,i,q,u,l;k=d.add(m,"tr");k=l=d.add(k,"td",{"class":"mceStatusbar"});k=d.add(k,"div",{id:p.id+"_path_row"},w.theme_advanced_path?p.translate("advanced.path")+": ":" ");d.add(k,"a",{href:"#",accesskey:"x"});if(w.theme_advanced_resizing){d.add(l,"a",{id:p.id+"_resize",href:"javascript:;",onclick:"return false;","class":"mceResize"});if(w.theme_advanced_resizing_use_cookie){p.onPostRender.add(function(){var n=a.getHash("TinyMCE_"+p.id+"_size"),r=d.get(p.id+"_tbl");if(!n){return}if(w.theme_advanced_resize_horizontal){r.style.width=Math.max(10,n.cw)+"px"}r.style.height=Math.max(10,n.ch)+"px";d.get(p.id+"_ifr").style.height=Math.max(10,parseInt(n.ch)+v.deltaHeight)+"px"})}p.onPostRender.add(function(){b.add(p.id+"_resize","mousedown",function(x){var z,t,o,s,y,r;z=d.get(p.id+"_tbl");o=z.clientWidth;s=z.clientHeight;miw=w.theme_advanced_resizing_min_width||100;mih=w.theme_advanced_resizing_min_height||100;maw=w.theme_advanced_resizing_max_width||65535;mah=w.theme_advanced_resizing_max_height||65535;t=d.add(d.get(p.id+"_parent"),"div",{"class":"mcePlaceHolder"});d.setStyles(t,{width:o,height:s});d.hide(z);d.show(t);i={x:x.screenX,y:x.screenY,w:o,h:s,dx:null,dy:null};q=b.add(d.doc,"mousemove",function(B){var n,A;i.dx=B.screenX-i.x;i.dy=B.screenY-i.y;n=Math.max(miw,i.w+i.dx);A=Math.max(mih,i.h+i.dy);n=Math.min(maw,n);A=Math.min(mah,A);if(w.theme_advanced_resize_horizontal){t.style.width=n+"px"}t.style.height=A+"px";return b.cancel(B)});u=b.add(d.doc,"mouseup",function(n){var A;b.remove(d.doc,"mousemove",q);b.remove(d.doc,"mouseup",u);z.style.display="";d.remove(t);if(i.dx===null){return}A=d.get(p.id+"_ifr");if(w.theme_advanced_resize_horizontal){z.style.width=Math.max(10,i.w+i.dx)+"px"}z.style.height=Math.max(10,i.h+i.dy)+"px";A.style.height=Math.max(10,A.clientHeight+i.dy)+"px";if(w.theme_advanced_resizing_use_cookie){a.setHash("TinyMCE_"+p.id+"_size",{cw:i.w+i.dx,ch:i.h+i.dy})}});return b.cancel(x)})})}j.deltaHeight-=21;k=m=null},_nodeChanged:function(o,x,l,u,j){var A=this,i,w=0,z,q,B=A.settings,y,k,r;e.each(A.stateControls,function(n){x.setActive(n,o.queryCommandState(A.controls[n][1]))});function m(p){var s,n=j.parents,t=p;if(typeof(p)=="string"){t=function(v){return v.nodeName==p}}for(s=0;s= 1 && v <= 7) { + k = v + ' (' + t.sizes[v - 1] + 'pt)'; + cl = s.font_size_classes[v - 1]; + v = s.font_size_style_values[v - 1] || (t.sizes[v - 1] + 'pt'); + } + + if (/^\s*\./.test(v)) + cl = v.replace(/\./g, ''); + + o[k] = cl ? {'class' : cl} : {fontSize : v}; + }); + + s.theme_advanced_font_sizes = o; + } + + if ((v = s.theme_advanced_path_location) && v != 'none') + s.theme_advanced_statusbar_location = s.theme_advanced_path_location; + + if (s.theme_advanced_statusbar_location == 'none') + s.theme_advanced_statusbar_location = 0; + + // Init editor + ed.onInit.add(function() { + if (!ed.settings.readonly) + ed.onNodeChange.add(t._nodeChanged, t); + + if (ed.settings.content_css !== false) + ed.dom.loadCSS(ed.baseURI.toAbsolute("themes/advanced/skins/" + ed.settings.skin + "/content.css")); + }); + + ed.onSetProgressState.add(function(ed, b, ti) { + var co, id = ed.id, tb; + + if (b) { + t.progressTimer = setTimeout(function() { + co = ed.getContainer(); + co = co.insertBefore(DOM.create('DIV', {style : 'position:relative'}), co.firstChild); + tb = DOM.get(ed.id + '_tbl'); + + DOM.add(co, 'div', {id : id + '_blocker', 'class' : 'mceBlocker', style : {width : tb.clientWidth + 2, height : tb.clientHeight + 2}}); + DOM.add(co, 'div', {id : id + '_progress', 'class' : 'mceProgress', style : {left : tb.clientWidth / 2, top : tb.clientHeight / 2}}); + }, ti || 0); + } else { + DOM.remove(id + '_blocker'); + DOM.remove(id + '_progress'); + clearTimeout(t.progressTimer); + } + }); + + DOM.loadCSS(s.editor_css ? ed.documentBaseURI.toAbsolute(s.editor_css) : url + "/skins/" + ed.settings.skin + "/ui.css"); + + if (s.skin_variant) + DOM.loadCSS(url + "/skins/" + ed.settings.skin + "/ui_" + s.skin_variant + ".css"); + }, + + createControl : function(n, cf) { + var cd, c; + + if (c = cf.createControl(n)) + return c; + + switch (n) { + case "styleselect": + return this._createStyleSelect(); + + case "formatselect": + return this._createBlockFormats(); + + case "fontselect": + return this._createFontSelect(); + + case "fontsizeselect": + return this._createFontSizeSelect(); + + case "forecolor": + return this._createForeColorMenu(); + + case "backcolor": + return this._createBackColorMenu(); + } + + if ((cd = this.controls[n])) + return cf.createButton(n, {title : "advanced." + cd[0], cmd : cd[1], ui : cd[2], value : cd[3]}); + }, + + execCommand : function(cmd, ui, val) { + var f = this['_' + cmd]; + + if (f) { + f.call(this, ui, val); + return true; + } + + return false; + }, + + _importClasses : function(e) { + var ed = this.editor, ctrl = ed.controlManager.get('styleselect'); + + if (ctrl.getLength() == 0) { + each(ed.dom.getClasses(), function(o, idx) { + var name = 'style_' + idx; + + ed.formatter.register(name, { + inline : 'span', + classes : o['class'] + }); + + ctrl.add(o['class'], name); + }); + } + }, + + _createStyleSelect : function(n) { + var t = this, ed = t.editor, ctrlMan = ed.controlManager, ctrl; + + // Setup style select box + ctrl = ctrlMan.createListBox('styleselect', { + title : 'advanced.style_select', + onselect : function(name) { + ed.focus(); + ed.formatter.toggle(name); + + return false; // No auto select + } + }); + + // Handle specified format + ed.onInit.add(function() { + var counter = 0, formats = ed.getParam('style_formats'); + + if (formats) { + each(formats, function(fmt) { + var name, keys = 0; + + each(fmt, function() {keys++;}); + + if (keys > 1) { + name = fmt.name = fmt.name || 'style_' + (counter++); + ed.formatter.register(name, fmt); + ctrl.add(fmt.title, name); + } else + ctrl.add(fmt.title); + }); + } else { + each(ed.getParam('theme_advanced_styles', '', 'hash'), function(val, key) { + var name; + + if (val) { + name = 'style_' + (counter++); + + ed.formatter.register(name, { + inline : 'span', + classes : val + }); + + ctrl.add(t.editor.translate(key), name); + } + }); + } + }); + + // Auto import classes if the ctrl box is empty + if (ctrl.getLength() == 0) { + ctrl.onPostRender.add(function(ed, n) { + if (!ctrl.NativeListBox) { + Event.add(n.id + '_text', 'focus', t._importClasses, t); + Event.add(n.id + '_text', 'mousedown', t._importClasses, t); + Event.add(n.id + '_open', 'focus', t._importClasses, t); + Event.add(n.id + '_open', 'mousedown', t._importClasses, t); + } else + Event.add(n.id, 'focus', t._importClasses, t); + }); + } + + return ctrl; + }, + + _createFontSelect : function() { + var c, t = this, ed = t.editor; + + c = ed.controlManager.createListBox('fontselect', { + title : 'advanced.fontdefault', + onselect : function(v) { + ed.execCommand('FontName', false, v); + return false; // No auto select + } + }); + + if (c) { + each(ed.getParam('theme_advanced_fonts', t.settings.theme_advanced_fonts, 'hash'), function(v, k) { + c.add(ed.translate(k), v, {style : v.indexOf('dings') == -1 ? 'font-family:' + v : ''}); + }); + } + + return c; + }, + + _createFontSizeSelect : function() { + var t = this, ed = t.editor, c, i = 0, cl = []; + + c = ed.controlManager.createListBox('fontsizeselect', {title : 'advanced.font_size', onselect : function(v) { + if (v.fontSize) + ed.execCommand('FontSize', false, v.fontSize); + else { + each(t.settings.theme_advanced_font_sizes, function(v, k) { + if (v['class']) + cl.push(v['class']); + }); + + ed.editorCommands._applyInlineStyle('span', {'class' : v['class']}, {check_classes : cl}); + } + + return false; // No auto select + }}); + + if (c) { + each(t.settings.theme_advanced_font_sizes, function(v, k) { + var fz = v.fontSize; + + if (fz >= 1 && fz <= 7) + fz = t.sizes[parseInt(fz) - 1] + 'pt'; + + c.add(k, v, {'style' : 'font-size:' + fz, 'class' : 'mceFontSize' + (i++) + (' ' + (v['class'] || ''))}); + }); + } + + return c; + }, + + _createBlockFormats : function() { + var c, fmts = { + p : 'advanced.paragraph', + address : 'advanced.address', + pre : 'advanced.pre', + h1 : 'advanced.h1', + h2 : 'advanced.h2', + h3 : 'advanced.h3', + h4 : 'advanced.h4', + h5 : 'advanced.h5', + h6 : 'advanced.h6', + div : 'advanced.div', + blockquote : 'advanced.blockquote', + code : 'advanced.code', + dt : 'advanced.dt', + dd : 'advanced.dd', + samp : 'advanced.samp' + }, t = this; + + c = t.editor.controlManager.createListBox('formatselect', {title : 'advanced.block', cmd : 'FormatBlock'}); + if (c) { + each(t.editor.getParam('theme_advanced_blockformats', t.settings.theme_advanced_blockformats, 'hash'), function(v, k) { + c.add(t.editor.translate(k != v ? k : fmts[v]), v, {'class' : 'mce_formatPreview mce_' + v}); + }); + } + + return c; + }, + + _createForeColorMenu : function() { + var c, t = this, s = t.settings, o = {}, v; + + if (s.theme_advanced_more_colors) { + o.more_colors_func = function() { + t._mceColorPicker(0, { + color : c.value, + func : function(co) { + c.setColor(co); + } + }); + }; + } + + if (v = s.theme_advanced_text_colors) + o.colors = v; + + if (s.theme_advanced_default_foreground_color) + o.default_color = s.theme_advanced_default_foreground_color; + + o.title = 'advanced.forecolor_desc'; + o.cmd = 'ForeColor'; + o.scope = this; + + c = t.editor.controlManager.createColorSplitButton('forecolor', o); + + return c; + }, + + _createBackColorMenu : function() { + var c, t = this, s = t.settings, o = {}, v; + + if (s.theme_advanced_more_colors) { + o.more_colors_func = function() { + t._mceColorPicker(0, { + color : c.value, + func : function(co) { + c.setColor(co); + } + }); + }; + } + + if (v = s.theme_advanced_background_colors) + o.colors = v; + + if (s.theme_advanced_default_background_color) + o.default_color = s.theme_advanced_default_background_color; + + o.title = 'advanced.backcolor_desc'; + o.cmd = 'HiliteColor'; + o.scope = this; + + c = t.editor.controlManager.createColorSplitButton('backcolor', o); + + return c; + }, + + renderUI : function(o) { + var n, ic, tb, t = this, ed = t.editor, s = t.settings, sc, p, nl; + + n = p = DOM.create('span', {id : ed.id + '_parent', 'class' : 'mceEditor ' + ed.settings.skin + 'Skin' + (s.skin_variant ? ' ' + ed.settings.skin + 'Skin' + t._ufirst(s.skin_variant) : '')}); + + if (!DOM.boxModel) + n = DOM.add(n, 'div', {'class' : 'mceOldBoxModel'}); + + n = sc = DOM.add(n, 'table', {id : ed.id + '_tbl', 'class' : 'mceLayout', cellSpacing : 0, cellPadding : 0}); + n = tb = DOM.add(n, 'tbody'); + + switch ((s.theme_advanced_layout_manager || '').toLowerCase()) { + case "rowlayout": + ic = t._rowLayout(s, tb, o); + break; + + case "customlayout": + ic = ed.execCallback("theme_advanced_custom_layout", s, tb, o, p); + break; + + default: + ic = t._simpleLayout(s, tb, o, p); + } + + n = o.targetNode; + + // Add classes to first and last TRs + nl = DOM.stdMode ? sc.getElementsByTagName('tr') : sc.rows; // Quick fix for IE 8 + DOM.addClass(nl[0], 'mceFirst'); + DOM.addClass(nl[nl.length - 1], 'mceLast'); + + // Add classes to first and last TDs + each(DOM.select('tr', tb), function(n) { + DOM.addClass(n.firstChild, 'mceFirst'); + DOM.addClass(n.childNodes[n.childNodes.length - 1], 'mceLast'); + }); + + if (DOM.get(s.theme_advanced_toolbar_container)) + DOM.get(s.theme_advanced_toolbar_container).appendChild(p); + else + DOM.insertAfter(p, n); + + Event.add(ed.id + '_path_row', 'click', function(e) { + e = e.target; + + if (e.nodeName == 'A') { + t._sel(e.className.replace(/^.*mcePath_([0-9]+).*$/, '$1')); + + return Event.cancel(e); + } + }); +/* + if (DOM.get(ed.id + '_path_row')) { + Event.add(ed.id + '_tbl', 'mouseover', function(e) { + var re; + + e = e.target; + + if (e.nodeName == 'SPAN' && DOM.hasClass(e.parentNode, 'mceButton')) { + re = DOM.get(ed.id + '_path_row'); + t.lastPath = re.innerHTML; + DOM.setHTML(re, e.parentNode.title); + } + }); + + Event.add(ed.id + '_tbl', 'mouseout', function(e) { + if (t.lastPath) { + DOM.setHTML(ed.id + '_path_row', t.lastPath); + t.lastPath = 0; + } + }); + } +*/ + + if (!ed.getParam('accessibility_focus')) + Event.add(DOM.add(p, 'a', {href : '#'}, ''), 'focus', function() {tinyMCE.get(ed.id).focus();}); + + if (s.theme_advanced_toolbar_location == 'external') + o.deltaHeight = 0; + + t.deltaHeight = o.deltaHeight; + o.targetNode = null; + + return { + iframeContainer : ic, + editorContainer : ed.id + '_parent', + sizeContainer : sc, + deltaHeight : o.deltaHeight + }; + }, + + getInfo : function() { + return { + longname : 'Advanced theme', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + version : tinymce.majorVersion + "." + tinymce.minorVersion + } + }, + + resizeBy : function(dw, dh) { + var e = DOM.get(this.editor.id + '_tbl'); + + this.resizeTo(e.clientWidth + dw, e.clientHeight + dh); + }, + + resizeTo : function(w, h) { + var ed = this.editor, s = ed.settings, e = DOM.get(ed.id + '_tbl'), ifr = DOM.get(ed.id + '_ifr'), dh; + + // Boundery fix box + w = Math.max(s.theme_advanced_resizing_min_width || 100, w); + h = Math.max(s.theme_advanced_resizing_min_height || 100, h); + w = Math.min(s.theme_advanced_resizing_max_width || 0xFFFF, w); + h = Math.min(s.theme_advanced_resizing_max_height || 0xFFFF, h); + + // Calc difference between iframe and container + dh = e.clientHeight - ifr.clientHeight; + + // Resize iframe and container + DOM.setStyle(ifr, 'height', h - dh); + DOM.setStyles(e, {width : w, height : h}); + }, + + destroy : function() { + var id = this.editor.id; + + Event.clear(id + '_resize'); + Event.clear(id + '_path_row'); + Event.clear(id + '_external_close'); + }, + + // Internal functions + + _simpleLayout : function(s, tb, o, p) { + var t = this, ed = t.editor, lo = s.theme_advanced_toolbar_location, sl = s.theme_advanced_statusbar_location, n, ic, etb, c; + + if (s.readonly) { + n = DOM.add(tb, 'tr'); + n = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'}); + return ic; + } + + // Create toolbar container at top + if (lo == 'top') + t._addToolbars(tb, o); + + // Create external toolbar + if (lo == 'external') { + n = c = DOM.create('div', {style : 'position:relative'}); + n = DOM.add(n, 'div', {id : ed.id + '_external', 'class' : 'mceExternalToolbar'}); + DOM.add(n, 'a', {id : ed.id + '_external_close', href : 'javascript:;', 'class' : 'mceExternalClose'}); + n = DOM.add(n, 'table', {id : ed.id + '_tblext', cellSpacing : 0, cellPadding : 0}); + etb = DOM.add(n, 'tbody'); + + if (p.firstChild.className == 'mceOldBoxModel') + p.firstChild.appendChild(c); + else + p.insertBefore(c, p.firstChild); + + t._addToolbars(etb, o); + + ed.onMouseUp.add(function() { + var e = DOM.get(ed.id + '_external'); + DOM.show(e); + + DOM.hide(lastExtID); + + var f = Event.add(ed.id + '_external_close', 'click', function() { + DOM.hide(ed.id + '_external'); + Event.remove(ed.id + '_external_close', 'click', f); + }); + + DOM.show(e); + DOM.setStyle(e, 'top', 0 - DOM.getRect(ed.id + '_tblext').h - 1); + + // Fixes IE rendering bug + DOM.hide(e); + DOM.show(e); + e.style.filter = ''; + + lastExtID = ed.id + '_external'; + + e = null; + }); + } + + if (sl == 'top') + t._addStatusBar(tb, o); + + // Create iframe container + if (!s.theme_advanced_toolbar_container) { + n = DOM.add(tb, 'tr'); + n = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'}); + } + + // Create toolbar container at bottom + if (lo == 'bottom') + t._addToolbars(tb, o); + + if (sl == 'bottom') + t._addStatusBar(tb, o); + + return ic; + }, + + _rowLayout : function(s, tb, o) { + var t = this, ed = t.editor, dc, da, cf = ed.controlManager, n, ic, to, a; + + dc = s.theme_advanced_containers_default_class || ''; + da = s.theme_advanced_containers_default_align || 'center'; + + each(explode(s.theme_advanced_containers || ''), function(c, i) { + var v = s['theme_advanced_container_' + c] || ''; + + switch (v.toLowerCase()) { + case 'mceeditor': + n = DOM.add(tb, 'tr'); + n = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'}); + break; + + case 'mceelementpath': + t._addStatusBar(tb, o); + break; + + default: + a = (s['theme_advanced_container_' + c + '_align'] || da).toLowerCase(); + a = 'mce' + t._ufirst(a); + + n = DOM.add(DOM.add(tb, 'tr'), 'td', { + 'class' : 'mceToolbar ' + (s['theme_advanced_container_' + c + '_class'] || dc) + ' ' + a || da + }); + + to = cf.createToolbar("toolbar" + i); + t._addControls(v, to); + DOM.setHTML(n, to.renderHTML()); + o.deltaHeight -= s.theme_advanced_row_height; + } + }); + + return ic; + }, + + _addControls : function(v, tb) { + var t = this, s = t.settings, di, cf = t.editor.controlManager; + + if (s.theme_advanced_disable && !t._disabled) { + di = {}; + + each(explode(s.theme_advanced_disable), function(v) { + di[v] = 1; + }); + + t._disabled = di; + } else + di = t._disabled; + + each(explode(v), function(n) { + var c; + + if (di && di[n]) + return; + + // Compatiblity with 2.x + if (n == 'tablecontrols') { + each(["table","|","row_props","cell_props","|","row_before","row_after","delete_row","|","col_before","col_after","delete_col","|","split_cells","merge_cells"], function(n) { + n = t.createControl(n, cf); + + if (n) + tb.add(n); + }); + + return; + } + + c = t.createControl(n, cf); + + if (c) + tb.add(c); + }); + }, + + _addToolbars : function(c, o) { + var t = this, i, tb, ed = t.editor, s = t.settings, v, cf = ed.controlManager, di, n, h = [], a; + + a = s.theme_advanced_toolbar_align.toLowerCase(); + a = 'mce' + t._ufirst(a); + + n = DOM.add(DOM.add(c, 'tr'), 'td', {'class' : 'mceToolbar ' + a}); + + if (!ed.getParam('accessibility_focus')) + h.push(DOM.createHTML('a', {href : '#', onfocus : 'tinyMCE.get(\'' + ed.id + '\').focus();'}, '')); + + h.push(DOM.createHTML('a', {href : '#', accesskey : 'q', title : ed.getLang("advanced.toolbar_focus")}, '')); + + // Create toolbar and add the controls + for (i=1; (v = s['theme_advanced_buttons' + i]); i++) { + tb = cf.createToolbar("toolbar" + i, {'class' : 'mceToolbarRow' + i}); + + if (s['theme_advanced_buttons' + i + '_add']) + v += ',' + s['theme_advanced_buttons' + i + '_add']; + + if (s['theme_advanced_buttons' + i + '_add_before']) + v = s['theme_advanced_buttons' + i + '_add_before'] + ',' + v; + + t._addControls(v, tb); + + //n.appendChild(n = tb.render()); + h.push(tb.renderHTML()); + + o.deltaHeight -= s.theme_advanced_row_height; + } + + h.push(DOM.createHTML('a', {href : '#', accesskey : 'z', title : ed.getLang("advanced.toolbar_focus"), onfocus : 'tinyMCE.getInstanceById(\'' + ed.id + '\').focus();'}, '')); + DOM.setHTML(n, h.join('')); + }, + + _addStatusBar : function(tb, o) { + var n, t = this, ed = t.editor, s = t.settings, r, mf, me, td; + + n = DOM.add(tb, 'tr'); + n = td = DOM.add(n, 'td', {'class' : 'mceStatusbar'}); + n = DOM.add(n, 'div', {id : ed.id + '_path_row'}, s.theme_advanced_path ? ed.translate('advanced.path') + ': ' : ' '); + DOM.add(n, 'a', {href : '#', accesskey : 'x'}); + + if (s.theme_advanced_resizing) { + DOM.add(td, 'a', {id : ed.id + '_resize', href : 'javascript:;', onclick : "return false;", 'class' : 'mceResize'}); + + if (s.theme_advanced_resizing_use_cookie) { + ed.onPostRender.add(function() { + var o = Cookie.getHash("TinyMCE_" + ed.id + "_size"), c = DOM.get(ed.id + '_tbl'); + + if (!o) + return; + + if (s.theme_advanced_resize_horizontal) + c.style.width = Math.max(10, o.cw) + 'px'; + + c.style.height = Math.max(10, o.ch) + 'px'; + DOM.get(ed.id + '_ifr').style.height = Math.max(10, parseInt(o.ch) + t.deltaHeight) + 'px'; + }); + } + + ed.onPostRender.add(function() { + Event.add(ed.id + '_resize', 'mousedown', function(e) { + var c, p, w, h, n, pa; + + // Measure container + c = DOM.get(ed.id + '_tbl'); + w = c.clientWidth; + h = c.clientHeight; + + miw = s.theme_advanced_resizing_min_width || 100; + mih = s.theme_advanced_resizing_min_height || 100; + maw = s.theme_advanced_resizing_max_width || 0xFFFF; + mah = s.theme_advanced_resizing_max_height || 0xFFFF; + + // Setup placeholder + p = DOM.add(DOM.get(ed.id + '_parent'), 'div', {'class' : 'mcePlaceHolder'}); + DOM.setStyles(p, {width : w, height : h}); + + // Replace with placeholder + DOM.hide(c); + DOM.show(p); + + // Create internal resize obj + r = { + x : e.screenX, + y : e.screenY, + w : w, + h : h, + dx : null, + dy : null + }; + + // Start listening + mf = Event.add(DOM.doc, 'mousemove', function(e) { + var w, h; + + // Calc delta values + r.dx = e.screenX - r.x; + r.dy = e.screenY - r.y; + + // Boundery fix box + w = Math.max(miw, r.w + r.dx); + h = Math.max(mih, r.h + r.dy); + w = Math.min(maw, w); + h = Math.min(mah, h); + + // Resize placeholder + if (s.theme_advanced_resize_horizontal) + p.style.width = w + 'px'; + + p.style.height = h + 'px'; + + return Event.cancel(e); + }); + + me = Event.add(DOM.doc, 'mouseup', function(e) { + var ifr; + + // Stop listening + Event.remove(DOM.doc, 'mousemove', mf); + Event.remove(DOM.doc, 'mouseup', me); + + c.style.display = ''; + DOM.remove(p); + + if (r.dx === null) + return; + + ifr = DOM.get(ed.id + '_ifr'); + + if (s.theme_advanced_resize_horizontal) + c.style.width = Math.max(10, r.w + r.dx) + 'px'; + + c.style.height = Math.max(10, r.h + r.dy) + 'px'; + ifr.style.height = Math.max(10, ifr.clientHeight + r.dy) + 'px'; + + if (s.theme_advanced_resizing_use_cookie) { + Cookie.setHash("TinyMCE_" + ed.id + "_size", { + cw : r.w + r.dx, + ch : r.h + r.dy + }); + } + }); + + return Event.cancel(e); + }); + }); + } + + o.deltaHeight -= 21; + n = tb = null; + }, + + _nodeChanged : function(ed, cm, n, co, ob) { + var t = this, p, de = 0, v, c, s = t.settings, cl, fz, fn; + + tinymce.each(t.stateControls, function(c) { + cm.setActive(c, ed.queryCommandState(t.controls[c][1])); + }); + + function getParent(name) { + var i, parents = ob.parents, func = name; + + if (typeof(name) == 'string') { + func = function(node) { + return node.nodeName == name; + }; + } + + for (i = 0; i < parents.length; i++) { + if (func(parents[i])) + return parents[i]; + } + }; + + cm.setActive('visualaid', ed.hasVisual); + cm.setDisabled('undo', !ed.undoManager.hasUndo() && !ed.typing); + cm.setDisabled('redo', !ed.undoManager.hasRedo()); + cm.setDisabled('outdent', !ed.queryCommandState('Outdent')); + + p = getParent('A'); + if (c = cm.get('link')) { + if (!p || !p.name) { + c.setDisabled(!p && co); + c.setActive(!!p); + } + } + + if (c = cm.get('unlink')) { + c.setDisabled(!p && co); + c.setActive(!!p && !p.name); + } + + if (c = cm.get('anchor')) { + c.setActive(!!p && p.name); + } + + p = getParent('IMG'); + if (c = cm.get('image')) + c.setActive(!!p && n.className.indexOf('mceItem') == -1); + + if (c = cm.get('styleselect')) { + t._importClasses(); + + // Check each format and update + c.select(function(fmt) { + return !!ed.formatter.match(fmt); + }); + } + + if (c = cm.get('formatselect')) { + p = getParent(DOM.isBlock); + + if (p) + c.select(p.nodeName.toLowerCase()); + } + + // Find out current fontSize, fontFamily and fontClass + getParent(function(n) { + if (n.nodeName === 'SPAN') { + if (!cl && n.className) + cl = n.className; + + if (!fz && n.style.fontSize) + fz = n.style.fontSize; + + if (!fn && n.style.fontFamily) + fn = n.style.fontFamily.replace(/[\"\']+/g, '').replace(/^([^,]+).*/, '$1').toLowerCase(); + } + + return false; + }); + + if (c = cm.get('fontselect')) { + c.select(function(v) { + return v.replace(/^([^,]+).*/, '$1').toLowerCase() == fn; + }); + } + + // Select font size + if (c = cm.get('fontsizeselect')) { + // Use computed style + if (s.theme_advanced_runtime_fontsize && !fz && !cl) + fz = ed.dom.getStyle(n, 'fontSize', true); + + c.select(function(v) { + if (v.fontSize && v.fontSize === fz) + return true; + + if (v['class'] && v['class'] === cl) + return true; + }); + } + + if (s.theme_advanced_path && s.theme_advanced_statusbar_location) { + p = DOM.get(ed.id + '_path') || DOM.add(ed.id + '_path_row', 'span', {id : ed.id + '_path'}); + DOM.setHTML(p, ''); + + getParent(function(n) { + var na = n.nodeName.toLowerCase(), u, pi, ti = ''; + + /*if (n.getAttribute('_mce_bogus')) + return; +*/ + // Ignore non element and hidden elements + if (n.nodeType != 1 || n.nodeName === 'BR' || (DOM.hasClass(n, 'mceItemHidden') || DOM.hasClass(n, 'mceItemRemoved'))) + return; + + // Fake name + if (v = DOM.getAttrib(n, 'mce_name')) + na = v; + + // Handle prefix + if (tinymce.isIE && n.scopeName !== 'HTML') + na = n.scopeName + ':' + na; + + // Remove internal prefix + na = na.replace(/mce\:/g, ''); + + // Handle node name + switch (na) { + case 'b': + na = 'strong'; + break; + + case 'i': + na = 'em'; + break; + + case 'img': + if (v = DOM.getAttrib(n, 'src')) + ti += 'src: ' + v + ' '; + + break; + + case 'a': + if (v = DOM.getAttrib(n, 'name')) { + ti += 'name: ' + v + ' '; + na += '#' + v; + } + + if (v = DOM.getAttrib(n, 'href')) + ti += 'href: ' + v + ' '; + + break; + + case 'font': + if (v = DOM.getAttrib(n, 'face')) + ti += 'font: ' + v + ' '; + + if (v = DOM.getAttrib(n, 'size')) + ti += 'size: ' + v + ' '; + + if (v = DOM.getAttrib(n, 'color')) + ti += 'color: ' + v + ' '; + + break; + + case 'span': + if (v = DOM.getAttrib(n, 'style')) + ti += 'style: ' + v + ' '; + + break; + } + + if (v = DOM.getAttrib(n, 'id')) + ti += 'id: ' + v + ' '; + + if (v = n.className) { + v = v.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g, '') + + if (v) { + ti += 'class: ' + v + ' '; + + if (DOM.isBlock(n) || na == 'img' || na == 'span') + na += '.' + v; + } + } + + na = na.replace(/(html:)/g, ''); + na = {name : na, node : n, title : ti}; + t.onResolveName.dispatch(t, na); + ti = na.title; + na = na.name; + + //u = "javascript:tinymce.EditorManager.get('" + ed.id + "').theme._sel('" + (de++) + "');"; + pi = DOM.create('a', {'href' : "javascript:;", onmousedown : "return false;", title : ti, 'class' : 'mcePath_' + (de++)}, na); + + if (p.hasChildNodes()) { + p.insertBefore(DOM.doc.createTextNode(' \u00bb '), p.firstChild); + p.insertBefore(pi, p.firstChild); + } else + p.appendChild(pi); + }, ed.getBody()); + } + }, + + // Commands gets called by execCommand + + _sel : function(v) { + this.editor.execCommand('mceSelectNodeDepth', false, v); + }, + + _mceInsertAnchor : function(ui, v) { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/anchor.htm', + width : 320 + parseInt(ed.getLang('advanced.anchor_delta_width', 0)), + height : 90 + parseInt(ed.getLang('advanced.anchor_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceCharMap : function() { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/charmap.htm', + width : 550 + parseInt(ed.getLang('advanced.charmap_delta_width', 0)), + height : 250 + parseInt(ed.getLang('advanced.charmap_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceHelp : function() { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/about.htm', + width : 480, + height : 380, + inline : true + }, { + theme_url : this.url + }); + }, + + _mceColorPicker : function(u, v) { + var ed = this.editor; + + v = v || {}; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/color_picker.htm', + width : 375 + parseInt(ed.getLang('advanced.colorpicker_delta_width', 0)), + height : 250 + parseInt(ed.getLang('advanced.colorpicker_delta_height', 0)), + close_previous : false, + inline : true + }, { + input_color : v.color, + func : v.func, + theme_url : this.url + }); + }, + + _mceCodeEditor : function(ui, val) { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/source_editor.htm', + width : parseInt(ed.getParam("theme_advanced_source_editor_width", 720)), + height : parseInt(ed.getParam("theme_advanced_source_editor_height", 580)), + inline : true, + resizable : true, + maximizable : true + }, { + theme_url : this.url + }); + }, + + _mceImage : function(ui, val) { + var ed = this.editor; + + // Internal image object like a flash placeholder + if (ed.dom.getAttrib(ed.selection.getNode(), 'class').indexOf('mceItem') != -1) + return; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/image.htm', + width : 355 + parseInt(ed.getLang('advanced.image_delta_width', 0)), + height : 275 + parseInt(ed.getLang('advanced.image_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceLink : function(ui, val) { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/link.htm', + width : 310 + parseInt(ed.getLang('advanced.link_delta_width', 0)), + height : 200 + parseInt(ed.getLang('advanced.link_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceNewDocument : function() { + var ed = this.editor; + + ed.windowManager.confirm('advanced.newdocument', function(s) { + if (s) + ed.execCommand('mceSetContent', false, ''); + }); + }, + + _mceForeColor : function() { + var t = this; + + this._mceColorPicker(0, { + color: t.fgColor, + func : function(co) { + t.fgColor = co; + t.editor.execCommand('ForeColor', false, co); + } + }); + }, + + _mceBackColor : function() { + var t = this; + + this._mceColorPicker(0, { + color: t.bgColor, + func : function(co) { + t.bgColor = co; + t.editor.execCommand('HiliteColor', false, co); + } + }); + }, + + _ufirst : function(s) { + return s.substring(0, 1).toUpperCase() + s.substring(1); + } + }); + + tinymce.ThemeManager.add('advanced', tinymce.themes.AdvancedTheme); +}(tinymce)); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/image.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/image.htm.svn-base new file mode 100644 index 0000000..f30d670 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/image.htm.svn-base @@ -0,0 +1,80 @@ + + + + {#advanced_dlg.image_title} + + + + + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ x +
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/link.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/link.htm.svn-base new file mode 100644 index 0000000..7565b9a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/link.htm.svn-base @@ -0,0 +1,58 @@ + + + + {#advanced_dlg.link_title} + + + + + + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/source_editor.htm.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/source_editor.htm.svn-base new file mode 100644 index 0000000..82810d1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/.svn/text-base/source_editor.htm.svn-base @@ -0,0 +1,24 @@ + + + + {#advanced_dlg.code_title} + + + + +
+
{#advanced_dlg.code_title}
+
+ +
+
+ +
+
    +
  • +
  • +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/about.htm b/assets/tinymce/jscripts/tiny_mce/themes/advanced/about.htm new file mode 100644 index 0000000..267f837 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/about.htm @@ -0,0 +1,54 @@ + + + + {#advanced_dlg.about_title} + + + + + + + +
+
+

{#advanced_dlg.about_title}

+

Version: ()

+

TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under LGPL + by Moxiecode Systems AB. It has the ability to convert HTML TEXTAREA fields or other HTML elements to editor instances.

+

Copyright © 2003-2008, Moxiecode Systems AB, All rights reserved.

+

For more information about this software visit the TinyMCE website.

+ +
+ Got Moxie? + Hosted By Sourceforge + Also on freshmeat +
+
+ +
+
+

{#advanced_dlg.about_loaded}

+ +
+
+ +

 

+
+
+ +
+
+
+
+ +
+ +
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm b/assets/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm new file mode 100644 index 0000000..2bc63fc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm @@ -0,0 +1,26 @@ + + + + {#advanced_dlg.anchor_title} + + + + +
+ + + + + + + + +
{#advanced_dlg.anchor_title}
{#advanced_dlg.anchor_name}:
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm b/assets/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm new file mode 100644 index 0000000..1e74805 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm @@ -0,0 +1,53 @@ + + + + {#advanced_dlg.charmap_title} + + + + + + + + + + + + + + + + +
{#advanced_dlg.charmap_title}
+ + + + + + + + + +
 
 
+
+ + + + + + + + + + + + + + + + +
HTML-Code
 
 
NUM-Code
 
+
+ + + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm b/assets/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm new file mode 100644 index 0000000..096e755 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm @@ -0,0 +1,73 @@ + + + + {#advanced_dlg.colorpicker_title} + + + + + +
+ + +
+
+
+ {#advanced_dlg.colorpicker_picker_title} +
+ + +
+ +
+ +
+
+
+
+ +
+
+ {#advanced_dlg.colorpicker_palette_title} +
+ +
+ +
+
+
+ +
+
+ {#advanced_dlg.colorpicker_named_title} +
+ +
+ +
+ +
+ {#advanced_dlg.colorpicker_name} +
+
+
+
+ +
+ + +
+ +
+ +
+
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js new file mode 100644 index 0000000..914b9f4 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js @@ -0,0 +1 @@ +(function(e){var d=e.DOM,b=e.dom.Event,h=e.extend,f=e.each,a=e.util.Cookie,g,c=e.explode;e.ThemeManager.requireLangPack("advanced");e.create("tinymce.themes.AdvancedTheme",{sizes:[8,10,12,14,18,24,36],controls:{bold:["bold_desc","Bold"],italic:["italic_desc","Italic"],underline:["underline_desc","Underline"],strikethrough:["striketrough_desc","Strikethrough"],justifyleft:["justifyleft_desc","JustifyLeft"],justifycenter:["justifycenter_desc","JustifyCenter"],justifyright:["justifyright_desc","JustifyRight"],justifyfull:["justifyfull_desc","JustifyFull"],bullist:["bullist_desc","InsertUnorderedList"],numlist:["numlist_desc","InsertOrderedList"],outdent:["outdent_desc","Outdent"],indent:["indent_desc","Indent"],cut:["cut_desc","Cut"],copy:["copy_desc","Copy"],paste:["paste_desc","Paste"],undo:["undo_desc","Undo"],redo:["redo_desc","Redo"],link:["link_desc","mceLink"],unlink:["unlink_desc","unlink"],image:["image_desc","mceImage"],cleanup:["cleanup_desc","mceCleanup"],help:["help_desc","mceHelp"],code:["code_desc","mceCodeEditor"],hr:["hr_desc","InsertHorizontalRule"],removeformat:["removeformat_desc","RemoveFormat"],sub:["sub_desc","subscript"],sup:["sup_desc","superscript"],forecolor:["forecolor_desc","ForeColor"],forecolorpicker:["forecolor_desc","mceForeColor"],backcolor:["backcolor_desc","HiliteColor"],backcolorpicker:["backcolor_desc","mceBackColor"],charmap:["charmap_desc","mceCharMap"],visualaid:["visualaid_desc","mceToggleVisualAid"],anchor:["anchor_desc","mceInsertAnchor"],newdocument:["newdocument_desc","mceNewDocument"],blockquote:["blockquote_desc","mceBlockQuote"]},stateControls:["bold","italic","underline","strikethrough","bullist","numlist","justifyleft","justifycenter","justifyright","justifyfull","sub","sup","blockquote"],init:function(j,k){var l=this,m,i,n;l.editor=j;l.url=k;l.onResolveName=new e.util.Dispatcher(this);l.settings=m=h({theme_advanced_path:true,theme_advanced_toolbar_location:"bottom",theme_advanced_buttons1:"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect",theme_advanced_buttons2:"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code",theme_advanced_buttons3:"hr,removeformat,visualaid,|,sub,sup,|,charmap",theme_advanced_blockformats:"p,address,pre,h1,h2,h3,h4,h5,h6",theme_advanced_toolbar_align:"center",theme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",theme_advanced_more_colors:1,theme_advanced_row_height:23,theme_advanced_resize_horizontal:1,theme_advanced_resizing_use_cookie:1,theme_advanced_font_sizes:"1,2,3,4,5,6,7",readonly:j.settings.readonly},j.settings);if(!m.font_size_style_values){m.font_size_style_values="8pt,10pt,12pt,14pt,18pt,24pt,36pt"}if(e.is(m.theme_advanced_font_sizes,"string")){m.font_size_style_values=e.explode(m.font_size_style_values);m.font_size_classes=e.explode(m.font_size_classes||"");n={};j.settings.theme_advanced_font_sizes=m.theme_advanced_font_sizes;f(j.getParam("theme_advanced_font_sizes","","hash"),function(q,p){var o;if(p==q&&q>=1&&q<=7){p=q+" ("+l.sizes[q-1]+"pt)";o=m.font_size_classes[q-1];q=m.font_size_style_values[q-1]||(l.sizes[q-1]+"pt")}if(/^\s*\./.test(q)){o=q.replace(/\./g,"")}n[p]=o?{"class":o}:{fontSize:q}});m.theme_advanced_font_sizes=n}if((i=m.theme_advanced_path_location)&&i!="none"){m.theme_advanced_statusbar_location=m.theme_advanced_path_location}if(m.theme_advanced_statusbar_location=="none"){m.theme_advanced_statusbar_location=0}j.onInit.add(function(){if(!j.settings.readonly){j.onNodeChange.add(l._nodeChanged,l)}if(j.settings.content_css!==false){j.dom.loadCSS(j.baseURI.toAbsolute("themes/advanced/skins/"+j.settings.skin+"/content.css"))}});j.onSetProgressState.add(function(q,o,r){var s,t=q.id,p;if(o){l.progressTimer=setTimeout(function(){s=q.getContainer();s=s.insertBefore(d.create("DIV",{style:"position:relative"}),s.firstChild);p=d.get(q.id+"_tbl");d.add(s,"div",{id:t+"_blocker","class":"mceBlocker",style:{width:p.clientWidth+2,height:p.clientHeight+2}});d.add(s,"div",{id:t+"_progress","class":"mceProgress",style:{left:p.clientWidth/2,top:p.clientHeight/2}})},r||0)}else{d.remove(t+"_blocker");d.remove(t+"_progress");clearTimeout(l.progressTimer)}});d.loadCSS(m.editor_css?j.documentBaseURI.toAbsolute(m.editor_css):k+"/skins/"+j.settings.skin+"/ui.css");if(m.skin_variant){d.loadCSS(k+"/skins/"+j.settings.skin+"/ui_"+m.skin_variant+".css")}},createControl:function(l,i){var j,k;if(k=i.createControl(l)){return k}switch(l){case"styleselect":return this._createStyleSelect();case"formatselect":return this._createBlockFormats();case"fontselect":return this._createFontSelect();case"fontsizeselect":return this._createFontSizeSelect();case"forecolor":return this._createForeColorMenu();case"backcolor":return this._createBackColorMenu()}if((j=this.controls[l])){return i.createButton(l,{title:"advanced."+j[0],cmd:j[1],ui:j[2],value:j[3]})}},execCommand:function(k,j,l){var i=this["_"+k];if(i){i.call(this,j,l);return true}return false},_importClasses:function(k){var i=this.editor,j=i.controlManager.get("styleselect");if(j.getLength()==0){f(i.dom.getClasses(),function(n,l){var m="style_"+l;i.formatter.register(m,{inline:"span",classes:n["class"]});j.add(n["class"],m)})}},_createStyleSelect:function(m){var k=this,i=k.editor,j=i.controlManager,l;l=j.createListBox("styleselect",{title:"advanced.style_select",onselect:function(n){i.focus();i.formatter.toggle(n);return false}});i.onInit.add(function(){var o=0,n=i.getParam("style_formats");if(n){f(n,function(p){var q,r=0;f(p,function(){r++});if(r>1){q=p.name=p.name||"style_"+(o++);i.formatter.register(q,p);l.add(p.title,q)}else{l.add(p.title)}})}else{f(i.getParam("theme_advanced_styles","","hash"),function(r,q){var p;if(r){p="style_"+(o++);i.formatter.register(p,{inline:"span",classes:r});l.add(k.editor.translate(q),p)}})}});if(l.getLength()==0){l.onPostRender.add(function(o,p){if(!l.NativeListBox){b.add(p.id+"_text","focus",k._importClasses,k);b.add(p.id+"_text","mousedown",k._importClasses,k);b.add(p.id+"_open","focus",k._importClasses,k);b.add(p.id+"_open","mousedown",k._importClasses,k)}else{b.add(p.id,"focus",k._importClasses,k)}})}return l},_createFontSelect:function(){var k,j=this,i=j.editor;k=i.controlManager.createListBox("fontselect",{title:"advanced.fontdefault",onselect:function(l){i.execCommand("FontName",false,l);return false}});if(k){f(i.getParam("theme_advanced_fonts",j.settings.theme_advanced_fonts,"hash"),function(m,l){k.add(i.translate(l),m,{style:m.indexOf("dings")==-1?"font-family:"+m:""})})}return k},_createFontSizeSelect:function(){var m=this,k=m.editor,n,l=0,j=[];n=k.controlManager.createListBox("fontsizeselect",{title:"advanced.font_size",onselect:function(i){if(i.fontSize){k.execCommand("FontSize",false,i.fontSize)}else{f(m.settings.theme_advanced_font_sizes,function(p,o){if(p["class"]){j.push(p["class"])}});k.editorCommands._applyInlineStyle("span",{"class":i["class"]},{check_classes:j})}return false}});if(n){f(m.settings.theme_advanced_font_sizes,function(o,i){var p=o.fontSize;if(p>=1&&p<=7){p=m.sizes[parseInt(p)-1]+"pt"}n.add(i,o,{style:"font-size:"+p,"class":"mceFontSize"+(l++)+(" "+(o["class"]||""))})})}return n},_createBlockFormats:function(){var k,i={p:"advanced.paragraph",address:"advanced.address",pre:"advanced.pre",h1:"advanced.h1",h2:"advanced.h2",h3:"advanced.h3",h4:"advanced.h4",h5:"advanced.h5",h6:"advanced.h6",div:"advanced.div",blockquote:"advanced.blockquote",code:"advanced.code",dt:"advanced.dt",dd:"advanced.dd",samp:"advanced.samp"},j=this;k=j.editor.controlManager.createListBox("formatselect",{title:"advanced.block",cmd:"FormatBlock"});if(k){f(j.editor.getParam("theme_advanced_blockformats",j.settings.theme_advanced_blockformats,"hash"),function(m,l){k.add(j.editor.translate(l!=m?l:i[m]),m,{"class":"mce_formatPreview mce_"+m})})}return k},_createForeColorMenu:function(){var m,j=this,k=j.settings,l={},i;if(k.theme_advanced_more_colors){l.more_colors_func=function(){j._mceColorPicker(0,{color:m.value,func:function(n){m.setColor(n)}})}}if(i=k.theme_advanced_text_colors){l.colors=i}if(k.theme_advanced_default_foreground_color){l.default_color=k.theme_advanced_default_foreground_color}l.title="advanced.forecolor_desc";l.cmd="ForeColor";l.scope=this;m=j.editor.controlManager.createColorSplitButton("forecolor",l);return m},_createBackColorMenu:function(){var m,j=this,k=j.settings,l={},i;if(k.theme_advanced_more_colors){l.more_colors_func=function(){j._mceColorPicker(0,{color:m.value,func:function(n){m.setColor(n)}})}}if(i=k.theme_advanced_background_colors){l.colors=i}if(k.theme_advanced_default_background_color){l.default_color=k.theme_advanced_default_background_color}l.title="advanced.backcolor_desc";l.cmd="HiliteColor";l.scope=this;m=j.editor.controlManager.createColorSplitButton("backcolor",l);return m},renderUI:function(k){var m,l,q,v=this,r=v.editor,w=v.settings,u,j,i;m=j=d.create("span",{id:r.id+"_parent","class":"mceEditor "+r.settings.skin+"Skin"+(w.skin_variant?" "+r.settings.skin+"Skin"+v._ufirst(w.skin_variant):"")});if(!d.boxModel){m=d.add(m,"div",{"class":"mceOldBoxModel"})}m=u=d.add(m,"table",{id:r.id+"_tbl","class":"mceLayout",cellSpacing:0,cellPadding:0});m=q=d.add(m,"tbody");switch((w.theme_advanced_layout_manager||"").toLowerCase()){case"rowlayout":l=v._rowLayout(w,q,k);break;case"customlayout":l=r.execCallback("theme_advanced_custom_layout",w,q,k,j);break;default:l=v._simpleLayout(w,q,k,j)}m=k.targetNode;i=d.stdMode?u.getElementsByTagName("tr"):u.rows;d.addClass(i[0],"mceFirst");d.addClass(i[i.length-1],"mceLast");f(d.select("tr",q),function(o){d.addClass(o.firstChild,"mceFirst");d.addClass(o.childNodes[o.childNodes.length-1],"mceLast")});if(d.get(w.theme_advanced_toolbar_container)){d.get(w.theme_advanced_toolbar_container).appendChild(j)}else{d.insertAfter(j,m)}b.add(r.id+"_path_row","click",function(n){n=n.target;if(n.nodeName=="A"){v._sel(n.className.replace(/^.*mcePath_([0-9]+).*$/,"$1"));return b.cancel(n)}});if(!r.getParam("accessibility_focus")){b.add(d.add(j,"a",{href:"#"},""),"focus",function(){tinyMCE.get(r.id).focus()})}if(w.theme_advanced_toolbar_location=="external"){k.deltaHeight=0}v.deltaHeight=k.deltaHeight;k.targetNode=null;return{iframeContainer:l,editorContainer:r.id+"_parent",sizeContainer:u,deltaHeight:k.deltaHeight}},getInfo:function(){return{longname:"Advanced theme",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",version:e.majorVersion+"."+e.minorVersion}},resizeBy:function(i,j){var k=d.get(this.editor.id+"_tbl");this.resizeTo(k.clientWidth+i,k.clientHeight+j)},resizeTo:function(i,l){var j=this.editor,k=j.settings,n=d.get(j.id+"_tbl"),o=d.get(j.id+"_ifr"),m;i=Math.max(k.theme_advanced_resizing_min_width||100,i);l=Math.max(k.theme_advanced_resizing_min_height||100,l);i=Math.min(k.theme_advanced_resizing_max_width||65535,i);l=Math.min(k.theme_advanced_resizing_max_height||65535,l);m=n.clientHeight-o.clientHeight;d.setStyle(o,"height",l-m);d.setStyles(n,{width:i,height:l})},destroy:function(){var i=this.editor.id;b.clear(i+"_resize");b.clear(i+"_path_row");b.clear(i+"_external_close")},_simpleLayout:function(y,r,k,i){var x=this,u=x.editor,v=y.theme_advanced_toolbar_location,m=y.theme_advanced_statusbar_location,l,j,q,w;if(y.readonly){l=d.add(r,"tr");l=j=d.add(l,"td",{"class":"mceIframeContainer"});return j}if(v=="top"){x._addToolbars(r,k)}if(v=="external"){l=w=d.create("div",{style:"position:relative"});l=d.add(l,"div",{id:u.id+"_external","class":"mceExternalToolbar"});d.add(l,"a",{id:u.id+"_external_close",href:"javascript:;","class":"mceExternalClose"});l=d.add(l,"table",{id:u.id+"_tblext",cellSpacing:0,cellPadding:0});q=d.add(l,"tbody");if(i.firstChild.className=="mceOldBoxModel"){i.firstChild.appendChild(w)}else{i.insertBefore(w,i.firstChild)}x._addToolbars(q,k);u.onMouseUp.add(function(){var o=d.get(u.id+"_external");d.show(o);d.hide(g);var n=b.add(u.id+"_external_close","click",function(){d.hide(u.id+"_external");b.remove(u.id+"_external_close","click",n)});d.show(o);d.setStyle(o,"top",0-d.getRect(u.id+"_tblext").h-1);d.hide(o);d.show(o);o.style.filter="";g=u.id+"_external";o=null})}if(m=="top"){x._addStatusBar(r,k)}if(!y.theme_advanced_toolbar_container){l=d.add(r,"tr");l=j=d.add(l,"td",{"class":"mceIframeContainer"})}if(v=="bottom"){x._addToolbars(r,k)}if(m=="bottom"){x._addStatusBar(r,k)}return j},_rowLayout:function(w,m,k){var v=this,p=v.editor,u,x,i=p.controlManager,l,j,r,q;u=w.theme_advanced_containers_default_class||"";x=w.theme_advanced_containers_default_align||"center";f(c(w.theme_advanced_containers||""),function(s,o){var n=w["theme_advanced_container_"+s]||"";switch(n.toLowerCase()){case"mceeditor":l=d.add(m,"tr");l=j=d.add(l,"td",{"class":"mceIframeContainer"});break;case"mceelementpath":v._addStatusBar(m,k);break;default:q=(w["theme_advanced_container_"+s+"_align"]||x).toLowerCase();q="mce"+v._ufirst(q);l=d.add(d.add(m,"tr"),"td",{"class":"mceToolbar "+(w["theme_advanced_container_"+s+"_class"]||u)+" "+q||x});r=i.createToolbar("toolbar"+o);v._addControls(n,r);d.setHTML(l,r.renderHTML());k.deltaHeight-=w.theme_advanced_row_height}});return j},_addControls:function(j,i){var k=this,l=k.settings,m,n=k.editor.controlManager;if(l.theme_advanced_disable&&!k._disabled){m={};f(c(l.theme_advanced_disable),function(o){m[o]=1});k._disabled=m}else{m=k._disabled}f(c(j),function(p){var o;if(m&&m[p]){return}if(p=="tablecontrols"){f(["table","|","row_props","cell_props","|","row_before","row_after","delete_row","|","col_before","col_after","delete_col","|","split_cells","merge_cells"],function(q){q=k.createControl(q,n);if(q){i.add(q)}});return}o=k.createControl(p,n);if(o){i.add(o)}})},_addToolbars:function(w,k){var z=this,p,m,r=z.editor,A=z.settings,y,j=r.controlManager,u,l,q=[],x;x=A.theme_advanced_toolbar_align.toLowerCase();x="mce"+z._ufirst(x);l=d.add(d.add(w,"tr"),"td",{"class":"mceToolbar "+x});if(!r.getParam("accessibility_focus")){q.push(d.createHTML("a",{href:"#",onfocus:"tinyMCE.get('"+r.id+"').focus();"},""))}q.push(d.createHTML("a",{href:"#",accesskey:"q",title:r.getLang("advanced.toolbar_focus")},""));for(p=1;(y=A["theme_advanced_buttons"+p]);p++){m=j.createToolbar("toolbar"+p,{"class":"mceToolbarRow"+p});if(A["theme_advanced_buttons"+p+"_add"]){y+=","+A["theme_advanced_buttons"+p+"_add"]}if(A["theme_advanced_buttons"+p+"_add_before"]){y=A["theme_advanced_buttons"+p+"_add_before"]+","+y}z._addControls(y,m);q.push(m.renderHTML());k.deltaHeight-=A.theme_advanced_row_height}q.push(d.createHTML("a",{href:"#",accesskey:"z",title:r.getLang("advanced.toolbar_focus"),onfocus:"tinyMCE.getInstanceById('"+r.id+"').focus();"},""));d.setHTML(l,q.join(""))},_addStatusBar:function(m,j){var k,v=this,p=v.editor,w=v.settings,i,q,u,l;k=d.add(m,"tr");k=l=d.add(k,"td",{"class":"mceStatusbar"});k=d.add(k,"div",{id:p.id+"_path_row"},w.theme_advanced_path?p.translate("advanced.path")+": ":" ");d.add(k,"a",{href:"#",accesskey:"x"});if(w.theme_advanced_resizing){d.add(l,"a",{id:p.id+"_resize",href:"javascript:;",onclick:"return false;","class":"mceResize"});if(w.theme_advanced_resizing_use_cookie){p.onPostRender.add(function(){var n=a.getHash("TinyMCE_"+p.id+"_size"),r=d.get(p.id+"_tbl");if(!n){return}if(w.theme_advanced_resize_horizontal){r.style.width=Math.max(10,n.cw)+"px"}r.style.height=Math.max(10,n.ch)+"px";d.get(p.id+"_ifr").style.height=Math.max(10,parseInt(n.ch)+v.deltaHeight)+"px"})}p.onPostRender.add(function(){b.add(p.id+"_resize","mousedown",function(x){var z,t,o,s,y,r;z=d.get(p.id+"_tbl");o=z.clientWidth;s=z.clientHeight;miw=w.theme_advanced_resizing_min_width||100;mih=w.theme_advanced_resizing_min_height||100;maw=w.theme_advanced_resizing_max_width||65535;mah=w.theme_advanced_resizing_max_height||65535;t=d.add(d.get(p.id+"_parent"),"div",{"class":"mcePlaceHolder"});d.setStyles(t,{width:o,height:s});d.hide(z);d.show(t);i={x:x.screenX,y:x.screenY,w:o,h:s,dx:null,dy:null};q=b.add(d.doc,"mousemove",function(B){var n,A;i.dx=B.screenX-i.x;i.dy=B.screenY-i.y;n=Math.max(miw,i.w+i.dx);A=Math.max(mih,i.h+i.dy);n=Math.min(maw,n);A=Math.min(mah,A);if(w.theme_advanced_resize_horizontal){t.style.width=n+"px"}t.style.height=A+"px";return b.cancel(B)});u=b.add(d.doc,"mouseup",function(n){var A;b.remove(d.doc,"mousemove",q);b.remove(d.doc,"mouseup",u);z.style.display="";d.remove(t);if(i.dx===null){return}A=d.get(p.id+"_ifr");if(w.theme_advanced_resize_horizontal){z.style.width=Math.max(10,i.w+i.dx)+"px"}z.style.height=Math.max(10,i.h+i.dy)+"px";A.style.height=Math.max(10,A.clientHeight+i.dy)+"px";if(w.theme_advanced_resizing_use_cookie){a.setHash("TinyMCE_"+p.id+"_size",{cw:i.w+i.dx,ch:i.h+i.dy})}});return b.cancel(x)})})}j.deltaHeight-=21;k=m=null},_nodeChanged:function(o,x,l,u,j){var A=this,i,w=0,z,q,B=A.settings,y,k,r;e.each(A.stateControls,function(n){x.setActive(n,o.queryCommandState(A.controls[n][1]))});function m(p){var s,n=j.parents,t=p;if(typeof(p)=="string"){t=function(v){return v.nodeName==p}}for(s=0;s= 1 && v <= 7) { + k = v + ' (' + t.sizes[v - 1] + 'pt)'; + cl = s.font_size_classes[v - 1]; + v = s.font_size_style_values[v - 1] || (t.sizes[v - 1] + 'pt'); + } + + if (/^\s*\./.test(v)) + cl = v.replace(/\./g, ''); + + o[k] = cl ? {'class' : cl} : {fontSize : v}; + }); + + s.theme_advanced_font_sizes = o; + } + + if ((v = s.theme_advanced_path_location) && v != 'none') + s.theme_advanced_statusbar_location = s.theme_advanced_path_location; + + if (s.theme_advanced_statusbar_location == 'none') + s.theme_advanced_statusbar_location = 0; + + // Init editor + ed.onInit.add(function() { + if (!ed.settings.readonly) + ed.onNodeChange.add(t._nodeChanged, t); + + if (ed.settings.content_css !== false) + ed.dom.loadCSS(ed.baseURI.toAbsolute("themes/advanced/skins/" + ed.settings.skin + "/content.css")); + }); + + ed.onSetProgressState.add(function(ed, b, ti) { + var co, id = ed.id, tb; + + if (b) { + t.progressTimer = setTimeout(function() { + co = ed.getContainer(); + co = co.insertBefore(DOM.create('DIV', {style : 'position:relative'}), co.firstChild); + tb = DOM.get(ed.id + '_tbl'); + + DOM.add(co, 'div', {id : id + '_blocker', 'class' : 'mceBlocker', style : {width : tb.clientWidth + 2, height : tb.clientHeight + 2}}); + DOM.add(co, 'div', {id : id + '_progress', 'class' : 'mceProgress', style : {left : tb.clientWidth / 2, top : tb.clientHeight / 2}}); + }, ti || 0); + } else { + DOM.remove(id + '_blocker'); + DOM.remove(id + '_progress'); + clearTimeout(t.progressTimer); + } + }); + + DOM.loadCSS(s.editor_css ? ed.documentBaseURI.toAbsolute(s.editor_css) : url + "/skins/" + ed.settings.skin + "/ui.css"); + + if (s.skin_variant) + DOM.loadCSS(url + "/skins/" + ed.settings.skin + "/ui_" + s.skin_variant + ".css"); + }, + + createControl : function(n, cf) { + var cd, c; + + if (c = cf.createControl(n)) + return c; + + switch (n) { + case "styleselect": + return this._createStyleSelect(); + + case "formatselect": + return this._createBlockFormats(); + + case "fontselect": + return this._createFontSelect(); + + case "fontsizeselect": + return this._createFontSizeSelect(); + + case "forecolor": + return this._createForeColorMenu(); + + case "backcolor": + return this._createBackColorMenu(); + } + + if ((cd = this.controls[n])) + return cf.createButton(n, {title : "advanced." + cd[0], cmd : cd[1], ui : cd[2], value : cd[3]}); + }, + + execCommand : function(cmd, ui, val) { + var f = this['_' + cmd]; + + if (f) { + f.call(this, ui, val); + return true; + } + + return false; + }, + + _importClasses : function(e) { + var ed = this.editor, ctrl = ed.controlManager.get('styleselect'); + + if (ctrl.getLength() == 0) { + each(ed.dom.getClasses(), function(o, idx) { + var name = 'style_' + idx; + + ed.formatter.register(name, { + inline : 'span', + classes : o['class'] + }); + + ctrl.add(o['class'], name); + }); + } + }, + + _createStyleSelect : function(n) { + var t = this, ed = t.editor, ctrlMan = ed.controlManager, ctrl; + + // Setup style select box + ctrl = ctrlMan.createListBox('styleselect', { + title : 'advanced.style_select', + onselect : function(name) { + ed.focus(); + ed.formatter.toggle(name); + + return false; // No auto select + } + }); + + // Handle specified format + ed.onInit.add(function() { + var counter = 0, formats = ed.getParam('style_formats'); + + if (formats) { + each(formats, function(fmt) { + var name, keys = 0; + + each(fmt, function() {keys++;}); + + if (keys > 1) { + name = fmt.name = fmt.name || 'style_' + (counter++); + ed.formatter.register(name, fmt); + ctrl.add(fmt.title, name); + } else + ctrl.add(fmt.title); + }); + } else { + each(ed.getParam('theme_advanced_styles', '', 'hash'), function(val, key) { + var name; + + if (val) { + name = 'style_' + (counter++); + + ed.formatter.register(name, { + inline : 'span', + classes : val + }); + + ctrl.add(t.editor.translate(key), name); + } + }); + } + }); + + // Auto import classes if the ctrl box is empty + if (ctrl.getLength() == 0) { + ctrl.onPostRender.add(function(ed, n) { + if (!ctrl.NativeListBox) { + Event.add(n.id + '_text', 'focus', t._importClasses, t); + Event.add(n.id + '_text', 'mousedown', t._importClasses, t); + Event.add(n.id + '_open', 'focus', t._importClasses, t); + Event.add(n.id + '_open', 'mousedown', t._importClasses, t); + } else + Event.add(n.id, 'focus', t._importClasses, t); + }); + } + + return ctrl; + }, + + _createFontSelect : function() { + var c, t = this, ed = t.editor; + + c = ed.controlManager.createListBox('fontselect', { + title : 'advanced.fontdefault', + onselect : function(v) { + ed.execCommand('FontName', false, v); + return false; // No auto select + } + }); + + if (c) { + each(ed.getParam('theme_advanced_fonts', t.settings.theme_advanced_fonts, 'hash'), function(v, k) { + c.add(ed.translate(k), v, {style : v.indexOf('dings') == -1 ? 'font-family:' + v : ''}); + }); + } + + return c; + }, + + _createFontSizeSelect : function() { + var t = this, ed = t.editor, c, i = 0, cl = []; + + c = ed.controlManager.createListBox('fontsizeselect', {title : 'advanced.font_size', onselect : function(v) { + if (v.fontSize) + ed.execCommand('FontSize', false, v.fontSize); + else { + each(t.settings.theme_advanced_font_sizes, function(v, k) { + if (v['class']) + cl.push(v['class']); + }); + + ed.editorCommands._applyInlineStyle('span', {'class' : v['class']}, {check_classes : cl}); + } + + return false; // No auto select + }}); + + if (c) { + each(t.settings.theme_advanced_font_sizes, function(v, k) { + var fz = v.fontSize; + + if (fz >= 1 && fz <= 7) + fz = t.sizes[parseInt(fz) - 1] + 'pt'; + + c.add(k, v, {'style' : 'font-size:' + fz, 'class' : 'mceFontSize' + (i++) + (' ' + (v['class'] || ''))}); + }); + } + + return c; + }, + + _createBlockFormats : function() { + var c, fmts = { + p : 'advanced.paragraph', + address : 'advanced.address', + pre : 'advanced.pre', + h1 : 'advanced.h1', + h2 : 'advanced.h2', + h3 : 'advanced.h3', + h4 : 'advanced.h4', + h5 : 'advanced.h5', + h6 : 'advanced.h6', + div : 'advanced.div', + blockquote : 'advanced.blockquote', + code : 'advanced.code', + dt : 'advanced.dt', + dd : 'advanced.dd', + samp : 'advanced.samp' + }, t = this; + + c = t.editor.controlManager.createListBox('formatselect', {title : 'advanced.block', cmd : 'FormatBlock'}); + if (c) { + each(t.editor.getParam('theme_advanced_blockformats', t.settings.theme_advanced_blockformats, 'hash'), function(v, k) { + c.add(t.editor.translate(k != v ? k : fmts[v]), v, {'class' : 'mce_formatPreview mce_' + v}); + }); + } + + return c; + }, + + _createForeColorMenu : function() { + var c, t = this, s = t.settings, o = {}, v; + + if (s.theme_advanced_more_colors) { + o.more_colors_func = function() { + t._mceColorPicker(0, { + color : c.value, + func : function(co) { + c.setColor(co); + } + }); + }; + } + + if (v = s.theme_advanced_text_colors) + o.colors = v; + + if (s.theme_advanced_default_foreground_color) + o.default_color = s.theme_advanced_default_foreground_color; + + o.title = 'advanced.forecolor_desc'; + o.cmd = 'ForeColor'; + o.scope = this; + + c = t.editor.controlManager.createColorSplitButton('forecolor', o); + + return c; + }, + + _createBackColorMenu : function() { + var c, t = this, s = t.settings, o = {}, v; + + if (s.theme_advanced_more_colors) { + o.more_colors_func = function() { + t._mceColorPicker(0, { + color : c.value, + func : function(co) { + c.setColor(co); + } + }); + }; + } + + if (v = s.theme_advanced_background_colors) + o.colors = v; + + if (s.theme_advanced_default_background_color) + o.default_color = s.theme_advanced_default_background_color; + + o.title = 'advanced.backcolor_desc'; + o.cmd = 'HiliteColor'; + o.scope = this; + + c = t.editor.controlManager.createColorSplitButton('backcolor', o); + + return c; + }, + + renderUI : function(o) { + var n, ic, tb, t = this, ed = t.editor, s = t.settings, sc, p, nl; + + n = p = DOM.create('span', {id : ed.id + '_parent', 'class' : 'mceEditor ' + ed.settings.skin + 'Skin' + (s.skin_variant ? ' ' + ed.settings.skin + 'Skin' + t._ufirst(s.skin_variant) : '')}); + + if (!DOM.boxModel) + n = DOM.add(n, 'div', {'class' : 'mceOldBoxModel'}); + + n = sc = DOM.add(n, 'table', {id : ed.id + '_tbl', 'class' : 'mceLayout', cellSpacing : 0, cellPadding : 0}); + n = tb = DOM.add(n, 'tbody'); + + switch ((s.theme_advanced_layout_manager || '').toLowerCase()) { + case "rowlayout": + ic = t._rowLayout(s, tb, o); + break; + + case "customlayout": + ic = ed.execCallback("theme_advanced_custom_layout", s, tb, o, p); + break; + + default: + ic = t._simpleLayout(s, tb, o, p); + } + + n = o.targetNode; + + // Add classes to first and last TRs + nl = DOM.stdMode ? sc.getElementsByTagName('tr') : sc.rows; // Quick fix for IE 8 + DOM.addClass(nl[0], 'mceFirst'); + DOM.addClass(nl[nl.length - 1], 'mceLast'); + + // Add classes to first and last TDs + each(DOM.select('tr', tb), function(n) { + DOM.addClass(n.firstChild, 'mceFirst'); + DOM.addClass(n.childNodes[n.childNodes.length - 1], 'mceLast'); + }); + + if (DOM.get(s.theme_advanced_toolbar_container)) + DOM.get(s.theme_advanced_toolbar_container).appendChild(p); + else + DOM.insertAfter(p, n); + + Event.add(ed.id + '_path_row', 'click', function(e) { + e = e.target; + + if (e.nodeName == 'A') { + t._sel(e.className.replace(/^.*mcePath_([0-9]+).*$/, '$1')); + + return Event.cancel(e); + } + }); +/* + if (DOM.get(ed.id + '_path_row')) { + Event.add(ed.id + '_tbl', 'mouseover', function(e) { + var re; + + e = e.target; + + if (e.nodeName == 'SPAN' && DOM.hasClass(e.parentNode, 'mceButton')) { + re = DOM.get(ed.id + '_path_row'); + t.lastPath = re.innerHTML; + DOM.setHTML(re, e.parentNode.title); + } + }); + + Event.add(ed.id + '_tbl', 'mouseout', function(e) { + if (t.lastPath) { + DOM.setHTML(ed.id + '_path_row', t.lastPath); + t.lastPath = 0; + } + }); + } +*/ + + if (!ed.getParam('accessibility_focus')) + Event.add(DOM.add(p, 'a', {href : '#'}, ''), 'focus', function() {tinyMCE.get(ed.id).focus();}); + + if (s.theme_advanced_toolbar_location == 'external') + o.deltaHeight = 0; + + t.deltaHeight = o.deltaHeight; + o.targetNode = null; + + return { + iframeContainer : ic, + editorContainer : ed.id + '_parent', + sizeContainer : sc, + deltaHeight : o.deltaHeight + }; + }, + + getInfo : function() { + return { + longname : 'Advanced theme', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + version : tinymce.majorVersion + "." + tinymce.minorVersion + } + }, + + resizeBy : function(dw, dh) { + var e = DOM.get(this.editor.id + '_tbl'); + + this.resizeTo(e.clientWidth + dw, e.clientHeight + dh); + }, + + resizeTo : function(w, h) { + var ed = this.editor, s = ed.settings, e = DOM.get(ed.id + '_tbl'), ifr = DOM.get(ed.id + '_ifr'), dh; + + // Boundery fix box + w = Math.max(s.theme_advanced_resizing_min_width || 100, w); + h = Math.max(s.theme_advanced_resizing_min_height || 100, h); + w = Math.min(s.theme_advanced_resizing_max_width || 0xFFFF, w); + h = Math.min(s.theme_advanced_resizing_max_height || 0xFFFF, h); + + // Calc difference between iframe and container + dh = e.clientHeight - ifr.clientHeight; + + // Resize iframe and container + DOM.setStyle(ifr, 'height', h - dh); + DOM.setStyles(e, {width : w, height : h}); + }, + + destroy : function() { + var id = this.editor.id; + + Event.clear(id + '_resize'); + Event.clear(id + '_path_row'); + Event.clear(id + '_external_close'); + }, + + // Internal functions + + _simpleLayout : function(s, tb, o, p) { + var t = this, ed = t.editor, lo = s.theme_advanced_toolbar_location, sl = s.theme_advanced_statusbar_location, n, ic, etb, c; + + if (s.readonly) { + n = DOM.add(tb, 'tr'); + n = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'}); + return ic; + } + + // Create toolbar container at top + if (lo == 'top') + t._addToolbars(tb, o); + + // Create external toolbar + if (lo == 'external') { + n = c = DOM.create('div', {style : 'position:relative'}); + n = DOM.add(n, 'div', {id : ed.id + '_external', 'class' : 'mceExternalToolbar'}); + DOM.add(n, 'a', {id : ed.id + '_external_close', href : 'javascript:;', 'class' : 'mceExternalClose'}); + n = DOM.add(n, 'table', {id : ed.id + '_tblext', cellSpacing : 0, cellPadding : 0}); + etb = DOM.add(n, 'tbody'); + + if (p.firstChild.className == 'mceOldBoxModel') + p.firstChild.appendChild(c); + else + p.insertBefore(c, p.firstChild); + + t._addToolbars(etb, o); + + ed.onMouseUp.add(function() { + var e = DOM.get(ed.id + '_external'); + DOM.show(e); + + DOM.hide(lastExtID); + + var f = Event.add(ed.id + '_external_close', 'click', function() { + DOM.hide(ed.id + '_external'); + Event.remove(ed.id + '_external_close', 'click', f); + }); + + DOM.show(e); + DOM.setStyle(e, 'top', 0 - DOM.getRect(ed.id + '_tblext').h - 1); + + // Fixes IE rendering bug + DOM.hide(e); + DOM.show(e); + e.style.filter = ''; + + lastExtID = ed.id + '_external'; + + e = null; + }); + } + + if (sl == 'top') + t._addStatusBar(tb, o); + + // Create iframe container + if (!s.theme_advanced_toolbar_container) { + n = DOM.add(tb, 'tr'); + n = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'}); + } + + // Create toolbar container at bottom + if (lo == 'bottom') + t._addToolbars(tb, o); + + if (sl == 'bottom') + t._addStatusBar(tb, o); + + return ic; + }, + + _rowLayout : function(s, tb, o) { + var t = this, ed = t.editor, dc, da, cf = ed.controlManager, n, ic, to, a; + + dc = s.theme_advanced_containers_default_class || ''; + da = s.theme_advanced_containers_default_align || 'center'; + + each(explode(s.theme_advanced_containers || ''), function(c, i) { + var v = s['theme_advanced_container_' + c] || ''; + + switch (v.toLowerCase()) { + case 'mceeditor': + n = DOM.add(tb, 'tr'); + n = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'}); + break; + + case 'mceelementpath': + t._addStatusBar(tb, o); + break; + + default: + a = (s['theme_advanced_container_' + c + '_align'] || da).toLowerCase(); + a = 'mce' + t._ufirst(a); + + n = DOM.add(DOM.add(tb, 'tr'), 'td', { + 'class' : 'mceToolbar ' + (s['theme_advanced_container_' + c + '_class'] || dc) + ' ' + a || da + }); + + to = cf.createToolbar("toolbar" + i); + t._addControls(v, to); + DOM.setHTML(n, to.renderHTML()); + o.deltaHeight -= s.theme_advanced_row_height; + } + }); + + return ic; + }, + + _addControls : function(v, tb) { + var t = this, s = t.settings, di, cf = t.editor.controlManager; + + if (s.theme_advanced_disable && !t._disabled) { + di = {}; + + each(explode(s.theme_advanced_disable), function(v) { + di[v] = 1; + }); + + t._disabled = di; + } else + di = t._disabled; + + each(explode(v), function(n) { + var c; + + if (di && di[n]) + return; + + // Compatiblity with 2.x + if (n == 'tablecontrols') { + each(["table","|","row_props","cell_props","|","row_before","row_after","delete_row","|","col_before","col_after","delete_col","|","split_cells","merge_cells"], function(n) { + n = t.createControl(n, cf); + + if (n) + tb.add(n); + }); + + return; + } + + c = t.createControl(n, cf); + + if (c) + tb.add(c); + }); + }, + + _addToolbars : function(c, o) { + var t = this, i, tb, ed = t.editor, s = t.settings, v, cf = ed.controlManager, di, n, h = [], a; + + a = s.theme_advanced_toolbar_align.toLowerCase(); + a = 'mce' + t._ufirst(a); + + n = DOM.add(DOM.add(c, 'tr'), 'td', {'class' : 'mceToolbar ' + a}); + + if (!ed.getParam('accessibility_focus')) + h.push(DOM.createHTML('a', {href : '#', onfocus : 'tinyMCE.get(\'' + ed.id + '\').focus();'}, '')); + + h.push(DOM.createHTML('a', {href : '#', accesskey : 'q', title : ed.getLang("advanced.toolbar_focus")}, '')); + + // Create toolbar and add the controls + for (i=1; (v = s['theme_advanced_buttons' + i]); i++) { + tb = cf.createToolbar("toolbar" + i, {'class' : 'mceToolbarRow' + i}); + + if (s['theme_advanced_buttons' + i + '_add']) + v += ',' + s['theme_advanced_buttons' + i + '_add']; + + if (s['theme_advanced_buttons' + i + '_add_before']) + v = s['theme_advanced_buttons' + i + '_add_before'] + ',' + v; + + t._addControls(v, tb); + + //n.appendChild(n = tb.render()); + h.push(tb.renderHTML()); + + o.deltaHeight -= s.theme_advanced_row_height; + } + + h.push(DOM.createHTML('a', {href : '#', accesskey : 'z', title : ed.getLang("advanced.toolbar_focus"), onfocus : 'tinyMCE.getInstanceById(\'' + ed.id + '\').focus();'}, '')); + DOM.setHTML(n, h.join('')); + }, + + _addStatusBar : function(tb, o) { + var n, t = this, ed = t.editor, s = t.settings, r, mf, me, td; + + n = DOM.add(tb, 'tr'); + n = td = DOM.add(n, 'td', {'class' : 'mceStatusbar'}); + n = DOM.add(n, 'div', {id : ed.id + '_path_row'}, s.theme_advanced_path ? ed.translate('advanced.path') + ': ' : ' '); + DOM.add(n, 'a', {href : '#', accesskey : 'x'}); + + if (s.theme_advanced_resizing) { + DOM.add(td, 'a', {id : ed.id + '_resize', href : 'javascript:;', onclick : "return false;", 'class' : 'mceResize'}); + + if (s.theme_advanced_resizing_use_cookie) { + ed.onPostRender.add(function() { + var o = Cookie.getHash("TinyMCE_" + ed.id + "_size"), c = DOM.get(ed.id + '_tbl'); + + if (!o) + return; + + if (s.theme_advanced_resize_horizontal) + c.style.width = Math.max(10, o.cw) + 'px'; + + c.style.height = Math.max(10, o.ch) + 'px'; + DOM.get(ed.id + '_ifr').style.height = Math.max(10, parseInt(o.ch) + t.deltaHeight) + 'px'; + }); + } + + ed.onPostRender.add(function() { + Event.add(ed.id + '_resize', 'mousedown', function(e) { + var c, p, w, h, n, pa; + + // Measure container + c = DOM.get(ed.id + '_tbl'); + w = c.clientWidth; + h = c.clientHeight; + + miw = s.theme_advanced_resizing_min_width || 100; + mih = s.theme_advanced_resizing_min_height || 100; + maw = s.theme_advanced_resizing_max_width || 0xFFFF; + mah = s.theme_advanced_resizing_max_height || 0xFFFF; + + // Setup placeholder + p = DOM.add(DOM.get(ed.id + '_parent'), 'div', {'class' : 'mcePlaceHolder'}); + DOM.setStyles(p, {width : w, height : h}); + + // Replace with placeholder + DOM.hide(c); + DOM.show(p); + + // Create internal resize obj + r = { + x : e.screenX, + y : e.screenY, + w : w, + h : h, + dx : null, + dy : null + }; + + // Start listening + mf = Event.add(DOM.doc, 'mousemove', function(e) { + var w, h; + + // Calc delta values + r.dx = e.screenX - r.x; + r.dy = e.screenY - r.y; + + // Boundery fix box + w = Math.max(miw, r.w + r.dx); + h = Math.max(mih, r.h + r.dy); + w = Math.min(maw, w); + h = Math.min(mah, h); + + // Resize placeholder + if (s.theme_advanced_resize_horizontal) + p.style.width = w + 'px'; + + p.style.height = h + 'px'; + + return Event.cancel(e); + }); + + me = Event.add(DOM.doc, 'mouseup', function(e) { + var ifr; + + // Stop listening + Event.remove(DOM.doc, 'mousemove', mf); + Event.remove(DOM.doc, 'mouseup', me); + + c.style.display = ''; + DOM.remove(p); + + if (r.dx === null) + return; + + ifr = DOM.get(ed.id + '_ifr'); + + if (s.theme_advanced_resize_horizontal) + c.style.width = Math.max(10, r.w + r.dx) + 'px'; + + c.style.height = Math.max(10, r.h + r.dy) + 'px'; + ifr.style.height = Math.max(10, ifr.clientHeight + r.dy) + 'px'; + + if (s.theme_advanced_resizing_use_cookie) { + Cookie.setHash("TinyMCE_" + ed.id + "_size", { + cw : r.w + r.dx, + ch : r.h + r.dy + }); + } + }); + + return Event.cancel(e); + }); + }); + } + + o.deltaHeight -= 21; + n = tb = null; + }, + + _nodeChanged : function(ed, cm, n, co, ob) { + var t = this, p, de = 0, v, c, s = t.settings, cl, fz, fn; + + tinymce.each(t.stateControls, function(c) { + cm.setActive(c, ed.queryCommandState(t.controls[c][1])); + }); + + function getParent(name) { + var i, parents = ob.parents, func = name; + + if (typeof(name) == 'string') { + func = function(node) { + return node.nodeName == name; + }; + } + + for (i = 0; i < parents.length; i++) { + if (func(parents[i])) + return parents[i]; + } + }; + + cm.setActive('visualaid', ed.hasVisual); + cm.setDisabled('undo', !ed.undoManager.hasUndo() && !ed.typing); + cm.setDisabled('redo', !ed.undoManager.hasRedo()); + cm.setDisabled('outdent', !ed.queryCommandState('Outdent')); + + p = getParent('A'); + if (c = cm.get('link')) { + if (!p || !p.name) { + c.setDisabled(!p && co); + c.setActive(!!p); + } + } + + if (c = cm.get('unlink')) { + c.setDisabled(!p && co); + c.setActive(!!p && !p.name); + } + + if (c = cm.get('anchor')) { + c.setActive(!!p && p.name); + } + + p = getParent('IMG'); + if (c = cm.get('image')) + c.setActive(!!p && n.className.indexOf('mceItem') == -1); + + if (c = cm.get('styleselect')) { + t._importClasses(); + + // Check each format and update + c.select(function(fmt) { + return !!ed.formatter.match(fmt); + }); + } + + if (c = cm.get('formatselect')) { + p = getParent(DOM.isBlock); + + if (p) + c.select(p.nodeName.toLowerCase()); + } + + // Find out current fontSize, fontFamily and fontClass + getParent(function(n) { + if (n.nodeName === 'SPAN') { + if (!cl && n.className) + cl = n.className; + + if (!fz && n.style.fontSize) + fz = n.style.fontSize; + + if (!fn && n.style.fontFamily) + fn = n.style.fontFamily.replace(/[\"\']+/g, '').replace(/^([^,]+).*/, '$1').toLowerCase(); + } + + return false; + }); + + if (c = cm.get('fontselect')) { + c.select(function(v) { + return v.replace(/^([^,]+).*/, '$1').toLowerCase() == fn; + }); + } + + // Select font size + if (c = cm.get('fontsizeselect')) { + // Use computed style + if (s.theme_advanced_runtime_fontsize && !fz && !cl) + fz = ed.dom.getStyle(n, 'fontSize', true); + + c.select(function(v) { + if (v.fontSize && v.fontSize === fz) + return true; + + if (v['class'] && v['class'] === cl) + return true; + }); + } + + if (s.theme_advanced_path && s.theme_advanced_statusbar_location) { + p = DOM.get(ed.id + '_path') || DOM.add(ed.id + '_path_row', 'span', {id : ed.id + '_path'}); + DOM.setHTML(p, ''); + + getParent(function(n) { + var na = n.nodeName.toLowerCase(), u, pi, ti = ''; + + /*if (n.getAttribute('_mce_bogus')) + return; +*/ + // Ignore non element and hidden elements + if (n.nodeType != 1 || n.nodeName === 'BR' || (DOM.hasClass(n, 'mceItemHidden') || DOM.hasClass(n, 'mceItemRemoved'))) + return; + + // Fake name + if (v = DOM.getAttrib(n, 'mce_name')) + na = v; + + // Handle prefix + if (tinymce.isIE && n.scopeName !== 'HTML') + na = n.scopeName + ':' + na; + + // Remove internal prefix + na = na.replace(/mce\:/g, ''); + + // Handle node name + switch (na) { + case 'b': + na = 'strong'; + break; + + case 'i': + na = 'em'; + break; + + case 'img': + if (v = DOM.getAttrib(n, 'src')) + ti += 'src: ' + v + ' '; + + break; + + case 'a': + if (v = DOM.getAttrib(n, 'name')) { + ti += 'name: ' + v + ' '; + na += '#' + v; + } + + if (v = DOM.getAttrib(n, 'href')) + ti += 'href: ' + v + ' '; + + break; + + case 'font': + if (v = DOM.getAttrib(n, 'face')) + ti += 'font: ' + v + ' '; + + if (v = DOM.getAttrib(n, 'size')) + ti += 'size: ' + v + ' '; + + if (v = DOM.getAttrib(n, 'color')) + ti += 'color: ' + v + ' '; + + break; + + case 'span': + if (v = DOM.getAttrib(n, 'style')) + ti += 'style: ' + v + ' '; + + break; + } + + if (v = DOM.getAttrib(n, 'id')) + ti += 'id: ' + v + ' '; + + if (v = n.className) { + v = v.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g, '') + + if (v) { + ti += 'class: ' + v + ' '; + + if (DOM.isBlock(n) || na == 'img' || na == 'span') + na += '.' + v; + } + } + + na = na.replace(/(html:)/g, ''); + na = {name : na, node : n, title : ti}; + t.onResolveName.dispatch(t, na); + ti = na.title; + na = na.name; + + //u = "javascript:tinymce.EditorManager.get('" + ed.id + "').theme._sel('" + (de++) + "');"; + pi = DOM.create('a', {'href' : "javascript:;", onmousedown : "return false;", title : ti, 'class' : 'mcePath_' + (de++)}, na); + + if (p.hasChildNodes()) { + p.insertBefore(DOM.doc.createTextNode(' \u00bb '), p.firstChild); + p.insertBefore(pi, p.firstChild); + } else + p.appendChild(pi); + }, ed.getBody()); + } + }, + + // Commands gets called by execCommand + + _sel : function(v) { + this.editor.execCommand('mceSelectNodeDepth', false, v); + }, + + _mceInsertAnchor : function(ui, v) { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/anchor.htm', + width : 320 + parseInt(ed.getLang('advanced.anchor_delta_width', 0)), + height : 90 + parseInt(ed.getLang('advanced.anchor_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceCharMap : function() { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/charmap.htm', + width : 550 + parseInt(ed.getLang('advanced.charmap_delta_width', 0)), + height : 250 + parseInt(ed.getLang('advanced.charmap_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceHelp : function() { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/about.htm', + width : 480, + height : 380, + inline : true + }, { + theme_url : this.url + }); + }, + + _mceColorPicker : function(u, v) { + var ed = this.editor; + + v = v || {}; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/color_picker.htm', + width : 375 + parseInt(ed.getLang('advanced.colorpicker_delta_width', 0)), + height : 250 + parseInt(ed.getLang('advanced.colorpicker_delta_height', 0)), + close_previous : false, + inline : true + }, { + input_color : v.color, + func : v.func, + theme_url : this.url + }); + }, + + _mceCodeEditor : function(ui, val) { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/source_editor.htm', + width : parseInt(ed.getParam("theme_advanced_source_editor_width", 720)), + height : parseInt(ed.getParam("theme_advanced_source_editor_height", 580)), + inline : true, + resizable : true, + maximizable : true + }, { + theme_url : this.url + }); + }, + + _mceImage : function(ui, val) { + var ed = this.editor; + + // Internal image object like a flash placeholder + if (ed.dom.getAttrib(ed.selection.getNode(), 'class').indexOf('mceItem') != -1) + return; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/image.htm', + width : 355 + parseInt(ed.getLang('advanced.image_delta_width', 0)), + height : 275 + parseInt(ed.getLang('advanced.image_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceLink : function(ui, val) { + var ed = this.editor; + + ed.windowManager.open({ + url : tinymce.baseURL + '/themes/advanced/link.htm', + width : 310 + parseInt(ed.getLang('advanced.link_delta_width', 0)), + height : 200 + parseInt(ed.getLang('advanced.link_delta_height', 0)), + inline : true + }, { + theme_url : this.url + }); + }, + + _mceNewDocument : function() { + var ed = this.editor; + + ed.windowManager.confirm('advanced.newdocument', function(s) { + if (s) + ed.execCommand('mceSetContent', false, ''); + }); + }, + + _mceForeColor : function() { + var t = this; + + this._mceColorPicker(0, { + color: t.fgColor, + func : function(co) { + t.fgColor = co; + t.editor.execCommand('ForeColor', false, co); + } + }); + }, + + _mceBackColor : function() { + var t = this; + + this._mceColorPicker(0, { + color: t.bgColor, + func : function(co) { + t.bgColor = co; + t.editor.execCommand('HiliteColor', false, co); + } + }); + }, + + _ufirst : function(s) { + return s.substring(0, 1).toUpperCase() + s.substring(1); + } + }); + + tinymce.ThemeManager.add('advanced', tinymce.themes.AdvancedTheme); +}(tinymce)); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/image.htm b/assets/tinymce/jscripts/tiny_mce/themes/advanced/image.htm new file mode 100644 index 0000000..f30d670 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/image.htm @@ -0,0 +1,80 @@ + + + + {#advanced_dlg.image_title} + + + + + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+ x +
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/all-wcprops new file mode 100644 index 0000000..6063664 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/img +END +icons.gif +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif +END +colorpicker.jpg +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/entries new file mode 100644 index 0000000..591b9f6 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +icons.gif +file + + + + +2010-06-04T12:51:47.501924Z +092b023d8d0073b8f651a92a1f711ccd +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +11794 + +colorpicker.jpg +file + + + + +2010-06-04T12:51:47.501924Z +02ae48639aa5729e6a40fb64455c32a2 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +3189 + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/colorpicker.jpg.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/colorpicker.jpg.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/colorpicker.jpg.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/icons.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/icons.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/prop-base/icons.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/text-base/colorpicker.jpg.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/text-base/colorpicker.jpg.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..b4c542d107b25f68a9d4f9d7a109d0565d1f1437 GIT binary patch literal 3189 zcmbW0dsLEX8o)utyLkf>vO+8cOg9wF%x1j+p@RkpsHC1z^8%LRB~9&2XDqEGG)XNW za}>Dv$PIyhNYo}DFE8{K%%;saJRZN^Z|nBZpzy$8e9+2Iz;a<8Kk+#d^3T1~%eX+Yocd57U@)iBS;Lz~Rksn75)5aOo z?47y!`{oCW4<9{#^7PrO*Kd~J{`T(uhu>GYz#z*%v4Hp|*ne=j0$dhWR+d&aD_mfU z{lIJKY6bDeS-VBjZPE+fQ9+fq&?sTsg&TH0!Hk!%jG`%fj}7?y8(*!UeJ1mKAkW+N+qrtJ``cfL69@8V&h4pSlYZct zdbj(JoO9O?Qsypg_fMOg z#rMbU1sg3&fUGhub|uS1yIT&?FK_29gtOKhHhq6|)$&^OfnnC|ikp{TaNez5@_lf< zVtK=Xq%zSvAMNgxI$d``m?>^#DeXGE<=1t-8%N)&Uj?N0rRmZL=i-Ck?cDEJW9D3T zQNPlr2-xo8nJClmdhOM!G zSxEgwFp>mhr9k%KF1;r^Lf?*3q*Hw)AAX54&QN>v!`Sj4coX05(}r$KJj?NGNXrKD z8NeX+XC1e{BJniG?|2&dIw0`UbHjy&?fwkwr)jCV>jFx1PkkVvaTKR0CyLX7_nCecUzMp7ZL}O4zG~}I+CyvTeU-TI-o>tMCfOfLfd}6{ zn-VTf)-(a;Sp7?!H+8zxp-X96c*~5f=$(V9wU)QI1jM{4!5`D}1JYcRmW=fTf+e4QuYi-${T5Wl!DOA;{Oo23HgADWZ0p6&DQlQq?3y&OLbGnI?ce`qz*7HE3Q&J0yE1{KY(ay2sM|HXSio`Q) zzXlFjW+UfD{LLS0Y3NDMZ+bLSxya70{JN19=17g3?)?e9FZ5ZnrErV zvc9TlZ?yq&c7k1;y1CMvfr`2*p>dU3G~uVHuoh;U3XOlsL-Hc><_FsSENHw4o(p$j zw)bdIf$wKuY_M5uY7jo7*N8)xlDq44D&RA{O83Md zUZRt!OQyD3-d!M)y58T8o^7r1;Q)?=Jbggc))teO1jnW^(b!S@M~%0?c1D#A#m!42 z6EgV^RRPY~f@L299EO4F{YM6aRn%jA0bj&VhnX{+pd%E8D?>;{UE_=;kb=g2yfqfAsCc65n7)rm9R;0fugG!a?6I`}*+F&TF6jg!YbNSM&6n z!>=Ksh-cuFCLM#PT%OLR31*# zS!FN80v&b?Q9xLl3|=v$!KrSTHPk$lOz&cBC(uMCnl~&v&7{(2O78wex~cmSOpaE& z@n0x|jdJ&(EI@;CjEQDIz&KHWb$avInqg_#umE)7H0pr@iwQbrk>en z79En`gx%hnTVYhT!J&F=6h@YKI{B>qZeoJ13eb^8$|MD$Fd|@Xz9!KyjAO3$S7A&6 zYeXZFhR=5gk`glrvDnM5U17rT-%tL9$Xkv}o|0U3PlQp{eM3$Ocx?e|u{ujx6p2chSy@+SHkN##WBa9ifCVH+`fLyi`WHu2S0Ro<$2jyxdslxi%sXK_EHhD>M5VFx3b4`Flh zIc+g;!#Pf^N9TwRp)FB8seslma>NhVnFKcGYRfSYt`m)MKVN zJFFM37S4z!if;L>jai*Z;Dx9uyz#v$-IYW1Q)7knZia`sJ-gGm3ULV6Au?R(5Si3A z5F(+LINUNU&E#}=!BCsu%B>|82L8R~_$}at>B^3wP{a$xih^b*veU}^%SvA!+$lzK zBsz66-IK>Ysg7aaQ~#J+Ae@Vb#6Xz!tXUW*GLZDfkf66tq!{&32#Rm+|vJii{`y-7cV5enl_GL(c= z{?V^}q$&*ST0{H+~kYM|3uYAs#ozCy(?T>GWX{31NhEwAXaj z$-4<~)zvKkig3>%>7H#88haoT&KLQ(p^}5wZDdLx6KuYt)#=5@obg1ET z!{g_qB0WaNtYWyPG+?L#;E<_|jLW|K#~bMh0c5F+bE?jc+QiEu*c*>0hl)mt&v;q9 zPKAu!+3dJ`Y)zlylp^0O;m9NO(KQNpN*rDyx3ok0O5&`hV>Gm_4_)o#6CnbVu%_YL zkA_EL0QME}wev(ESKLmxMjDBc)Yb-aJM+rU(|mZh4tM?0}d<^7HhJa22mwL*EptRLFpXUAn5J_@V literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/text-base/icons.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/.svn/text-base/icons.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..e46de5333082869b9bdab2576a554a2f9d01a966 GIT binary patch literal 11794 zcmWk!i9gei8~^OH(+nR+?qiNn!bm7$?mKheng~fXL_(QujvSd%A?0R7CgiL}a+f(O zN;OjH`ZiMOvR}XFKX_ix^M0Q9`~5r)PWGmI!&c$uzz+b}8$Q_3J`4cB+Lzu9odL-SKwq4;O-1r8)E~_ottI`aGXoKC%Au zn^#xDp}vVP`bSneE^UKdg?XnvE=UgehDKkkY9AdP{jI0_{bSMZpThwmk!wGX_1zudul>Eom7>$LI-A@t$)|4>D~MG&C1_zCR1#W^XEVDR=-wEvF0W^qAtIs z)-CkjpLXBFAX75e+9f86jDNd1jBg175*w=9#^cLYOG~p~zTtm;=-E(mwEEr#kH?=` z-Wu+Rd-7l>t*GMu*vscGE`ur7p5fH>_4Ul$YaH&E-1_Ck_kU=tbynl;glkiYS2iwJ z-)y_;S#nxV+^x;tu`DgtJ<_87V@KPMpId}(oB5Gw>!@21XPSy`tQFNgx|oyWnc8>M zkLZ#x(AGCiB$sv!%xqejT1GWCcTPOk(|a`k%iP?O1A_Nz47LvW@HcrMzkKIDUObf1 z)zCO~sEF^Cv(6I;!t!~vmMv!MTq|dpGdMJN5pl6)`RRWnqpR%I)gK8i_viq?$m)lw{^5u3pND@{D+11X1P+Xj4tqBz2fmV`K<2l!6#eJx03j`!`bbftj>{VZ?~#@ zU#JBxOKgFCqr7M5*o1vF7MI9$@=SWN!_Gq&7LIl$wy|dC{;UObM|R^SnJ;&^Wp==L+_>& z9HFf(-Mr8qJuAIf=hE^#Z)d6TH`q7&i@xNqXXld=2f)y?FoB5cX3Nt39Pt#l#og4K zA&A6+zw_sUcj~5eFu!VdwMX>`BMEvvH%=aDgW)ZuM2ZSN4)r=>Vt*GRKA&I8XFgV1 zKi5zQr=hdAr%|WSI}_T{_!nC5iz(e)PhsO_mIml8g%%3dH5b_zkz!3&vk4t4W>xyMM?Rgim)VJ3NYxbJ4@Sjn7klMA@JUN%=;H zWlkO&nbi|9mgRux$Q5}7q9fi)r~s&1w$YFcvjv4XXzy4-$6*EQ`ZwLeG3I9-e9yq0 zvbZ9Tq~w6TD^4pydn{tS7l9$6A5+rmocRc+IDpsZHqgiz<<v1V88S53UnpB&;jp(#rxs?7)FN!A}!Hx4c61 z#F}q>>Wg`cXtsv&)jrs2Fx2C(ow6p`M32bZf`Ff4#{?`DtW>E2*T$yX<1}p<#B7lF z6?x7+@}phbnN6nhHmKGPc~!0>@2sjOFJVG5Zl2fhOHV^O<6_F(Iq9BSaa(yDjqM9m!(@@Nm@ z+DX@KB#wUkPf>HP_E%>-AN4#EnlWCAogFY%&LGXN&cIcbmaJZ{ixIC&FOgCMSFVG~M0=r(q6P`J zaUS!vbQfk&IX;d~TExp(;V;0A)_0OQpXuBjpBLC_6*;RL{t9L}ZJzdbr2@Y&5UN%{ zFk`RW3^V5R?DLnV!wRxnuTL%u1)7oPrvjej4)xJ*5heUff@g_n}PjrtHiE2w)A{bkYhPFp2LdbjUQh%`f5MNZFsh1ef(*WrjeE0(&mG&X_a~M7*Ew+(shSk zElBN;D`~mUr{ZO?j&Bn`tvdKsW!kVp>F0d>Iy^v9Dc-WqU|Dfrc&PxuIGJ1;b9?r6 z!Say}Q}KYFmx$qEIPw-z_KdAq58fK`tOK{X5~Q{PR=Z6dRmEsbWarMD(|TmY!Y0Ya zPyE3{9XB1pO>V zTeY%3Aa&+RSF&M_{q53*Q%?pf`?sIJ{&^o&w(&j8{U`n;DozuwC+h~ddZh>`#P`PC zMcR$W0n2Cx!qfweM#Sqd7_wi^4tUoavKsFP9nr9(nLA%NTnh~h>XhMO@?4^v^8B!z z48^Q?Z!zOjF=q1k{magEw=!=^75oY3(s7+7;(kvGFu5-hC5W@CZkr`9$5?aVC+o#k!`Ff-pjNh;Xzx=)4EidJCw_a}637gMQ9RoVSP zS4a0ao+AVvv6mrC=f(?F6W$+}&v2=c&-9QP-hM>yf*nYCAz5caYP8mS2QQ&a-U{S` zkqK?t3bE3v3&}L1a~FZ}r%@I58`#Cdv&Di33e`<_9{BW~S-bCwrg#uh<%~m{h)m`E zXQdz9Xqk|))l4RQfM(b~en_al`fe|WqGxYcy&Z9-i;d9Rr(FH{|V z_)+x?Kg>}^3f$iR+20nf{-vuw_8m~NoOR@pkY!u4qc39Ve=o7nO z1raO6;``q%>aRVpIo?<7!aN{55XC=dWOdyPh_L<9i_3|#ZV58Zio6m7u5oM|KL+2+ zF;Ttv)*DR-SqOIgk!Nte&HJd7XrSPJFP;ntd9DH9OS9$n-!#yu-+v6lx8|Vg-m4hb~vvbIqwo#nlcg8dqF>StYcwZ4^j&u$*LLn7UUmOw|944evOFdj95PEc_13$ zo+*$>h!~lS-(6^Mm9{S07qR+wlwUof^wD5IJs!5zRH^s|Z>@LPYJ(CkfbYp*R6kH36@v4yDb9>>z zr^)jn#KB&kWah`4VlH)&*4_Wsbs=p}A@}2xXch1DQ$@xpJ z_UmmS`#tVCN%7s)G>U7Yn#WYZ&d1Fc_Qcx-gs9J$UJ=%~BGGmwU-)Glh6rE<@^As- zgX}rP)(@4w%~w|5p}Q|%39yWMWS8oqe$wj2p0E7%61`2SsJ-r9YNBlWH>8t+#FOb% zjUV>n@i3ei3CQ*Z;%DW0N7N$bLN}Jw($RXWiBM!0DY`+NNQyyS0+dIkZyTR>p2N2e z8@zY}OX+e2@TZZgN8@gtIuMRX*E)48Ou_qP#vSRsbw$AL&SVX|_Mtgk+IO@)lks{e zW8J~7kCdK5@mnD!fL0F0L@0+U0-A`|Ynes^!o#N|n*GFEP3TIMxVQ^hh1FsAIAN}9 zSxCH$s&R(KK{y3RLHr(%Sv_M0^LjUgoVpYmfyXChA}xRe6HKQ92RycH6x;ekd7a5aoCYh(bmTdj51#3tC*c66d43 zt@&r!5!2MTd2cDWkJM~t{Ar0^u4ek>YylUcN4!YQxhxw8ySR2B`dhlin$hrS=z^@c zrlV#*a2cA86!zQg^HUsPhngQk1isJhYD*6g(8aIufEYM<*v5URk?O2v0%0;f@6F$P zv1Hso|C>Vevy92U{kZD`1Sekbqcya;CzA7%R@a}>=PK~j) zO`(y9kj9px#YMYU3;%6ar|u%ubb`ZrL7?0TR%w}7n9O3G43sFNJ021q&wM&yLM^&# z6?S6V+6g`KMSNA#YE`++Km~Q?K<>03Ov*k^S}#lWQdm;8iIw{T;n)HvPigI+b_ohB zs|&^k#ht79>r~SqE78lVPRfurI;1}LP4&>udUTucLgiU-8aD~-6IrTFr?~c%R+FDK zXbjZgr~Tu9mY>De4<@s!JXn3%HD3j$$qW{2??A&rY-4d?V^MDH<+8@I-p2CY1`DDL zYoW1vUsG*hQ+-MkYhOmiFR`?;rklT-*zz}S?Yq$tc;j};jqb7=y}dX3pWSHt1=oR^ zb@=eRfz2@z!lPx)ZG6NDa=oI5xouof&^i1 zu!YPZVHZg3BU|K#qy-h&nF}aV4ABN+iqG2=h0zp}&?PqXY9}Zj=41m&w6XQv*}%hR zkSrT%Xx46c1L_d)LDQ@49ZYDL+dfPXndOT55ITIQ2>Vn>kpk5`5HI2aK^(N)a{xww zDN=;4REpt>u$x}u++5LBDmYh$YM`|oQoxG-!niYUOA=tRZMTo}P$66-xd^PUL}Dpj z$*Em|By1f|`X%<}vh&TiP116Ne=`YCprE|j7(dF*;36R@3V6W`>4opnBEm|k&^Zzj zMFxh5*jgegf{m`kTZB`3Syy{md63g@F~v#*e61Iwio5o_2h{0B2}{5Oq3t^0T^;Z+ z2{nHay7Rklz^osg!Imb&!kM=*S8rDd!Nq@zjZgGHasjv>ff=(l(4+ruYCl%6bcdtU zFPs6GQri@ncRzfD$p=A-zeTghrAo-qt9^*=@oE_WB9Gd?@w??;&?F#37DBe&8Xs)dn}B4gu<=94Vmw-w3U%P&BNSX2G+0IyHcN%}2O;k;2X~ea zKCMKsgCJ85%(Sv&XC;)&1e&&sn&v}=95jZ5CjAzx7>DiSi|wHT!eOug3MOR~Rmkr| zlAw*i)@0HH-`EGDRWNeO`0XquUj*s2Wfng}eK^R&dn9j}>`+D@ztQts_#GGZrLLm&WU$_1p$dSV+KuG%t z2va_TZJxpLIUjGq)9ypX9K4~xMW~nxi<=lw#-R+kvxayf_25Bd+@MbL;50=9!5>5z zJVbij-&0Ox@WO?l$L48a1%2mJ|$sbyJ&S~lSFAU~R?#`g9MNv>5T$B_K>^~!31MM>-!F^JNeo%za z1ER7=JADOa& z;REs{Av#{hlL~lJ#XL#V@aZMP05FP+F5sbAyy=ajYD7+UV?HY2JXR|N(rMvbW)4n6 zBDiMGlOKp4w#Z`&@;w{g!$-Lj7O-tdU&?@7Y!PyL0N)HV*M*abt7HLj5M>}TOdYgS z5@`mIj%1zyy8puHK2&voig!jpxqtP)bEs*6O%V%hd4VB!UJQZ9lVJDSEGl`Jrai(f z6zJ+l-@KUk!e_OvVqHjti8`!+EqNhac4x5s&fxX^t+~ykgQ5SuyE!<;e1@n3Btfgq z^IvXtb|T}(e7;Fe99)Du9quJoH{F zFnvs1m+%6de({3}XH(y=d37Gr&I02^Yj_y6$AlKKCrP0Cbv2~tZY<;uz>imo{o(^F zL{VuHHkS`Eh6nUR-_ zA>k0hqt@CA%=FUk%GYY4P|VbKY|&Ijn24c;S^O8dlT*v>U%zX<{Eis-Vf^0@L|B{R zK@27Yp<~5EcnG-~U{u*FVjNKrf_qY7H#vQwq6h+B`Kl#&k_(6cV#p_VG-*Y8WHjpp z`qXn!mxnk&f`li5J4{%GyvQBiTTxeta$VGqgm}dlN#ntebAjhfNR}|`OPUR$&c*|9 z0vXb$;Ibe6lU*oWH7sij%sY;A6!2G@@rVlt-Xpf=K&vew1CT)xRp)80ri|*65d#x2*#s0C1~n3o>_sfSy65iLtr(F^n6@z&7dg4Q`#wp<-(B7?ZEhmG zA@oa%-Mp`%^{oOiNxO)1QC#5?ePiW~N*5WJn0&61I{E8c*MnAPGF6+7zV)aTXu48n zD<_8Q+$uC*baOuVGzG{d^~7{8m58fLsT%vW1pSPCB)9_>4uck>jDkiQ> zkJPfI;wPFRKD9$*{A9y*d5FhjIe(ZyU$jytJ5X^1^2nuvm|`MLgv>N7i*7bWUeC&! z-|c|?lq@(p9lA9iE#@LSUn8RkC7-8<%64-kRE<-X3r=9i)bdUyk*P3?MPiJw^X<_$ zkAs`pG>N^7m5KE-Mny23f7m64G$G;{ODUY`ZzS)_;G(b^8nLTZD7W8H2>0tA!V>Nh z?8`Do1k=^XAVt%0kmT#~5w8M4iS|Kae}Ts<06SXMJlSfj|%(CK`E+G!nHx(#P# zpR0yVliaoB>T!6MLef0_xSU~f{W-1Fl_IU{t=?(ZTe<4Szw{QO+Y8zklRkbn$ubZ4q|&IK zC0Hryz&C#S(0noXvy#m1Hq|V9!=FGlGGUb6~vt+v}dh2qxwEPZViQ+OTDZ7Pgq^P)v<=w0BD9>>v0Um zDkmtJCIdNg6kd~H)E%(V zQu~RKFkBH5{PNQ!w_y}H;320Y_6AATKoi0aej~VUN1nlWx>SLkQ_|Vp;qMdcP>9-&>YYZCFX|*= zYx9XX0fibkRJSeDaIVVn^q}FD1&qX;>M^u9+GY{oWyGsGehQ9Mo}tjgHZQ1VYdfO1 zrZbcn5^;`U4yLjVN?N91{O*8^m3s2tN#rG=vZId5PckN^8f#GBmWDOG4b1;Giy|5V zZG4_WeR~LBv^(3CzWgJASUalN9v19`;dc#_#apP;{`5sghI5l?p~4~=siPbwTw5H5 z+GibRQcKM^FocK8QIFbej6da{`*$1K{^{q8L&di>qQG|s4-;}Nx<{WByY;Q6`LIDM z^S&szm3lZf%%%G&%-*W4ZhvK+DL-)jEETRoo`q{_14-V@14)Ayx11?iQZq0Tn3DxG zxUe`Ns6#tGAN_8 ze_UOD9iyAS42fMkCoMZLl5V;TwMRb??U|Y89dbmg@pBwfKIj%NqNtTA%-q1a zYQiJu9feiwTDGUw%|C5=ME}we#qDF41U+xgJvr(UY{(mPg4N5qzTF2N_PS`xi@$Qm zm7ySjm*ikv!0*dfIuKb=VibmSInV9DP^n}j^v+bo!KjIn7lfLYC$9CDq$t}?;WEmJ z0)sv7OP%vo)YwuH^BOlOC1cpM9#z7!x^{>gl$FEldbI60 zkgrDtIK=lIx=Y+UL>O|z8g_tyH2wq#sghrN6oFD`2rBq55bVE<57oQQ6fr6P;e+E2 zOLoseChS}Zcg8ZMUe+#J**32~z7-creMOMJFFVV!UMiv_YXsW}!LLu!h_GDSSX=RD zp2GSRD~F?2oORUR+8r}ww6G-&6G5SgGr>FA=QG5!wbv{U#I}0=0AYKm4~!37`;aah zHmnPSFoS~rvH2^{zO(NBuuQ{6)Z$KSSw`OVm^@MzIP4kdVX-a#mh~Bwf5pz;FPWE| zvJS(UgD({f2CqC+iTqE!IwA*x4DdwUp?vbg1C-t6?t9*$d5M>2+_Cz91cfJmWhcgH z*-CcoJ%l+O(;yVkA!z_V!lFx&m0jR0Aw`zUSBA^g){=Rm=pyl8$vFV1HM);}ZZkH2sidfpK@a@hHraOxqDn zSBb_bl>pVeY%@06;K)uN)?loc(s3K{8;6uAk|yBu98jl=JP(eLy2$(t7cx@9agRj~ zQgGwKRRsuTUvjGykMrf3sPau}0h&l9X!!@USOta$VTy#k78^D@H$l7Lj4XBAi(e&! znEOA3tyM{{nL$<*~_EHZ@SsAa2vaj^fVEldc?R%fA zHF&WecySnkqbbx%=cV zNI94GM0YckaPnnK{Zpx z(-I-OP4!3N2uFOaWa^z#Q>#M90nZ?-#oaWQ>e~F%pgJIa=@as@qR^FHcO%*7rpkmi zgq*AXjAfCr4gS;)v+;3)^G!$Rn=I_>O5AI0i!1`z&Nk$$BR%o-wWFAld;}XeQCjN+ z8Gv__QHN4cn+cY&){LLCbd%li1KpPUX76>USk%fISx9oyH`~)O9qF3nB1zmsm7T@wvrO*6*FGCp>n7bvpIB`c|#(K%j3AYdMy$Q(TT zZ(Fklef*KKT;nZS=)?p~dj1h5RRWzMjUK~VtU|toF5P+10s<^b#)(=-@Bhae@SpbN@Fo@9z(Gp;I98lx~Hh-poGc7NuNVpv-r$$0^soNwO9>pHQ z_*@Wr$im*?9`Gi?wsQwkxCkT(cC96q!iDeYNq4*`??|&w?olIiYcLt;&CFv&05|V} zVJ*2AIqS>*yJf^Gt-sOoL6P^s0p;YhNrOGiEX8(}&Ds{RpLAgh~!d z1>2g%qlYe_Orq~=MFXNlxWLGNgie9uDEd0xu!L2ZG?N}t=@1A=6S%;i6qpmkvPeX@lfji0|_j_%Y1r=4YYOmyWSlsBJfZTc#+eOf!7?EanC=?{R(6WztT z|FpXV4o=i?T^=cLY<^GtWA?xwv^KXao!nq^wTPGs+JysX*9<9q_J}R^Uv0DMCL0?k z3n~$qN`@edhyXdrrb_?3!x#e&vLLhj_+MY|KKL;%%KwtvrGgTb4Yvr4h-D?P>^)dY zMk7XN%(VMELueIUD^mK(h@t5q4bgXI_v* z$@AVj&--6IZ;lS?$b3Gq|9RKpX?YIpmG(sq(~Dw!YD5IawFJHcvn$9v69<5P6qqU! z)F&dRk5QxX!y_y^+2|QAv-iE`=NhiNFe|(od??vGEm8?1hYJ1yk@879ij$++FQ9&Y==2&n! zs>*xRg^?DGalKT-TJX+`#W<4@+W#m50BEnyk8Lu1OET%34C{Sh(KpPAJNqx%Ei5eE z4NYdeOr-@P#bsp!;1&zT1y7qdA6H`N)}Vn7{*Xxg>}|OG~KnbQOOjk5{#ASh6P%RhMo^HqqmXq|M_j@@wST@MAfz5oZmKTys+Iey?nSxsnuqHWf6z{95x#?!oQ3 z1j=2tH6(Nvtkqi@BYmh1{jjW1R_Ga~hRKw+kI|xs6;i2k*Oz2Gs0tPsb&4ii(WU&+ z`^D!UI@2sS)v0PI@xjef^#Io2Jd1tTacFji8HI@Pp7(Y{?yAQ*V}fQ~UQ&EtuOtFz zv_GX+A|9^5HG6%cn%?IN1y$ZTI{745rIKnUS|}L}$NF2hXw&V*{7z=gwIKt#_ zwr)xFj&ZNwkGx`DU;O=~zs3>3 z5VW5kaC@5OHZSE?sd;bi{P^YTu_9fcL>sn`jOH%>C)7fUsSTw%bk{+VaSD_;S+Nhx zp-WA-W3o6F@9lES{!pM+XZ#4ZRdN01JSLtCHZEy;9sl<~O22UX*p8_?suk)kMPguUV$i+B;HkurSBart5)TRz z$zn-iDoKa*lfo^NBHWV>A54lokrb7l6kV8fq#`M%HR4H;KvE&Su z&A`@-(3~H?w0~qd((JoI9UkleK11NnKS*m$&bybKKb2h2nvCEh84Y47Q5YF*h7Kp& z@3gvgGQDsy`SOX=SJF?H6#fhqJH^oYQR+z3;ZdVG*(S~s&W==*ocL0elxqEy8q1X0 zFVZsC_SYZ$Rd?^F4uDd?Gc=Ym{HfW!)tj}iQf_`pX%(bYyVHo;jFUVdx*MUuW4LpE znXzg9L0~&a2;d-=*HQ%+c@%W$!S2crXbn`aw2Ym5Ls2 zPaQ2x8>>hgANghtWQqA_Hl`rXR3PnJ;6Izvrd7_&=%1O5%Bgoh(@=4zrkfE0AyI7F zok(vNHp89pVRq`wi&tm9yfjIn`$h5mHt9^4g(z?P{Q<|IUoQ`yeS6~UyC0_zob1AM zD%1U?Kga!RCh?zE*VIRuY7Q56 z9a+~HFW%{QtHZzMDZRunYP`9Pa#>F=_@rC(`>$HuO6zP1-IxvSnOf&7hQ~fgse=cN z8isB88#|vg2X@7O{_ss_o_%QKg6`4pyPkE#JiT@7<9FS~?)Y~zEk}Roz3flXMS F{{gR&nqvR} literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b4c542d107b25f68a9d4f9d7a109d0565d1f1437 GIT binary patch literal 3189 zcmbW0dsLEX8o)utyLkf>vO+8cOg9wF%x1j+p@RkpsHC1z^8%LRB~9&2XDqEGG)XNW za}>Dv$PIyhNYo}DFE8{K%%;saJRZN^Z|nBZpzy$8e9+2Iz;a<8Kk+#d^3T1~%eX+Yocd57U@)iBS;Lz~Rksn75)5aOo z?47y!`{oCW4<9{#^7PrO*Kd~J{`T(uhu>GYz#z*%v4Hp|*ne=j0$dhWR+d&aD_mfU z{lIJKY6bDeS-VBjZPE+fQ9+fq&?sTsg&TH0!Hk!%jG`%fj}7?y8(*!UeJ1mKAkW+N+qrtJ``cfL69@8V&h4pSlYZct zdbj(JoO9O?Qsypg_fMOg z#rMbU1sg3&fUGhub|uS1yIT&?FK_29gtOKhHhq6|)$&^OfnnC|ikp{TaNez5@_lf< zVtK=Xq%zSvAMNgxI$d``m?>^#DeXGE<=1t-8%N)&Uj?N0rRmZL=i-Ck?cDEJW9D3T zQNPlr2-xo8nJClmdhOM!G zSxEgwFp>mhr9k%KF1;r^Lf?*3q*Hw)AAX54&QN>v!`Sj4coX05(}r$KJj?NGNXrKD z8NeX+XC1e{BJniG?|2&dIw0`UbHjy&?fwkwr)jCV>jFx1PkkVvaTKR0CyLX7_nCecUzMp7ZL}O4zG~}I+CyvTeU-TI-o>tMCfOfLfd}6{ zn-VTf)-(a;Sp7?!H+8zxp-X96c*~5f=$(V9wU)QI1jM{4!5`D}1JYcRmW=fTf+e4QuYi-${T5Wl!DOA;{Oo23HgADWZ0p6&DQlQq?3y&OLbGnI?ce`qz*7HE3Q&J0yE1{KY(ay2sM|HXSio`Q) zzXlFjW+UfD{LLS0Y3NDMZ+bLSxya70{JN19=17g3?)?e9FZ5ZnrErV zvc9TlZ?yq&c7k1;y1CMvfr`2*p>dU3G~uVHuoh;U3XOlsL-Hc><_FsSENHw4o(p$j zw)bdIf$wKuY_M5uY7jo7*N8)xlDq44D&RA{O83Md zUZRt!OQyD3-d!M)y58T8o^7r1;Q)?=Jbggc))teO1jnW^(b!S@M~%0?c1D#A#m!42 z6EgV^RRPY~f@L299EO4F{YM6aRn%jA0bj&VhnX{+pd%E8D?>;{UE_=;kb=g2yfqfAsCc65n7)rm9R;0fugG!a?6I`}*+F&TF6jg!YbNSM&6n z!>=Ksh-cuFCLM#PT%OLR31*# zS!FN80v&b?Q9xLl3|=v$!KrSTHPk$lOz&cBC(uMCnl~&v&7{(2O78wex~cmSOpaE& z@n0x|jdJ&(EI@;CjEQDIz&KHWb$avInqg_#umE)7H0pr@iwQbrk>en z79En`gx%hnTVYhT!J&F=6h@YKI{B>qZeoJ13eb^8$|MD$Fd|@Xz9!KyjAO3$S7A&6 zYeXZFhR=5gk`glrvDnM5U17rT-%tL9$Xkv}o|0U3PlQp{eM3$Ocx?e|u{ujx6p2chSy@+SHkN##WBa9ifCVH+`fLyi`WHu2S0Ro<$2jyxdslxi%sXK_EHhD>M5VFx3b4`Flh zIc+g;!#Pf^N9TwRp)FB8seslma>NhVnFKcGYRfSYt`m)MKVN zJFFM37S4z!if;L>jai*Z;Dx9uyz#v$-IYW1Q)7knZia`sJ-gGm3ULV6Au?R(5Si3A z5F(+LINUNU&E#}=!BCsu%B>|82L8R~_$}at>B^3wP{a$xih^b*veU}^%SvA!+$lzK zBsz66-IK>Ysg7aaQ~#J+Ae@Vb#6Xz!tXUW*GLZDfkf66tq!{&32#Rm+|vJii{`y-7cV5enl_GL(c= z{?V^}q$&*ST0{H+~kYM|3uYAs#ozCy(?T>GWX{31NhEwAXaj z$-4<~)zvKkig3>%>7H#88haoT&KLQ(p^}5wZDdLx6KuYt)#=5@obg1ET z!{g_qB0WaNtYWyPG+?L#;E<_|jLW|K#~bMh0c5F+bE?jc+QiEu*c*>0hl)mt&v;q9 zPKAu!+3dJ`Y)zlylp^0O;m9NO(KQNpN*rDyx3ok0O5&`hV>Gm_4_)o#6CnbVu%_YL zkA_EL0QME}wev(ESKLmxMjDBc)Yb-aJM+rU(|mZh4tM?0}d<^7HhJa22mwL*EptRLFpXUAn5J_@V literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif b/assets/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif new file mode 100644 index 0000000000000000000000000000000000000000..e46de5333082869b9bdab2576a554a2f9d01a966 GIT binary patch literal 11794 zcmWk!i9gei8~^OH(+nR+?qiNn!bm7$?mKheng~fXL_(QujvSd%A?0R7CgiL}a+f(O zN;OjH`ZiMOvR}XFKX_ix^M0Q9`~5r)PWGmI!&c$uzz+b}8$Q_3J`4cB+Lzu9odL-SKwq4;O-1r8)E~_ottI`aGXoKC%Au zn^#xDp}vVP`bSneE^UKdg?XnvE=UgehDKkkY9AdP{jI0_{bSMZpThwmk!wGX_1zudul>Eom7>$LI-A@t$)|4>D~MG&C1_zCR1#W^XEVDR=-wEvF0W^qAtIs z)-CkjpLXBFAX75e+9f86jDNd1jBg175*w=9#^cLYOG~p~zTtm;=-E(mwEEr#kH?=` z-Wu+Rd-7l>t*GMu*vscGE`ur7p5fH>_4Ul$YaH&E-1_Ck_kU=tbynl;glkiYS2iwJ z-)y_;S#nxV+^x;tu`DgtJ<_87V@KPMpId}(oB5Gw>!@21XPSy`tQFNgx|oyWnc8>M zkLZ#x(AGCiB$sv!%xqejT1GWCcTPOk(|a`k%iP?O1A_Nz47LvW@HcrMzkKIDUObf1 z)zCO~sEF^Cv(6I;!t!~vmMv!MTq|dpGdMJN5pl6)`RRWnqpR%I)gK8i_viq?$m)lw{^5u3pND@{D+11X1P+Xj4tqBz2fmV`K<2l!6#eJx03j`!`bbftj>{VZ?~#@ zU#JBxOKgFCqr7M5*o1vF7MI9$@=SWN!_Gq&7LIl$wy|dC{;UObM|R^SnJ;&^Wp==L+_>& z9HFf(-Mr8qJuAIf=hE^#Z)d6TH`q7&i@xNqXXld=2f)y?FoB5cX3Nt39Pt#l#og4K zA&A6+zw_sUcj~5eFu!VdwMX>`BMEvvH%=aDgW)ZuM2ZSN4)r=>Vt*GRKA&I8XFgV1 zKi5zQr=hdAr%|WSI}_T{_!nC5iz(e)PhsO_mIml8g%%3dH5b_zkz!3&vk4t4W>xyMM?Rgim)VJ3NYxbJ4@Sjn7klMA@JUN%=;H zWlkO&nbi|9mgRux$Q5}7q9fi)r~s&1w$YFcvjv4XXzy4-$6*EQ`ZwLeG3I9-e9yq0 zvbZ9Tq~w6TD^4pydn{tS7l9$6A5+rmocRc+IDpsZHqgiz<<v1V88S53UnpB&;jp(#rxs?7)FN!A}!Hx4c61 z#F}q>>Wg`cXtsv&)jrs2Fx2C(ow6p`M32bZf`Ff4#{?`DtW>E2*T$yX<1}p<#B7lF z6?x7+@}phbnN6nhHmKGPc~!0>@2sjOFJVG5Zl2fhOHV^O<6_F(Iq9BSaa(yDjqM9m!(@@Nm@ z+DX@KB#wUkPf>HP_E%>-AN4#EnlWCAogFY%&LGXN&cIcbmaJZ{ixIC&FOgCMSFVG~M0=r(q6P`J zaUS!vbQfk&IX;d~TExp(;V;0A)_0OQpXuBjpBLC_6*;RL{t9L}ZJzdbr2@Y&5UN%{ zFk`RW3^V5R?DLnV!wRxnuTL%u1)7oPrvjej4)xJ*5heUff@g_n}PjrtHiE2w)A{bkYhPFp2LdbjUQh%`f5MNZFsh1ef(*WrjeE0(&mG&X_a~M7*Ew+(shSk zElBN;D`~mUr{ZO?j&Bn`tvdKsW!kVp>F0d>Iy^v9Dc-WqU|Dfrc&PxuIGJ1;b9?r6 z!Say}Q}KYFmx$qEIPw-z_KdAq58fK`tOK{X5~Q{PR=Z6dRmEsbWarMD(|TmY!Y0Ya zPyE3{9XB1pO>V zTeY%3Aa&+RSF&M_{q53*Q%?pf`?sIJ{&^o&w(&j8{U`n;DozuwC+h~ddZh>`#P`PC zMcR$W0n2Cx!qfweM#Sqd7_wi^4tUoavKsFP9nr9(nLA%NTnh~h>XhMO@?4^v^8B!z z48^Q?Z!zOjF=q1k{magEw=!=^75oY3(s7+7;(kvGFu5-hC5W@CZkr`9$5?aVC+o#k!`Ff-pjNh;Xzx=)4EidJCw_a}637gMQ9RoVSP zS4a0ao+AVvv6mrC=f(?F6W$+}&v2=c&-9QP-hM>yf*nYCAz5caYP8mS2QQ&a-U{S` zkqK?t3bE3v3&}L1a~FZ}r%@I58`#Cdv&Di33e`<_9{BW~S-bCwrg#uh<%~m{h)m`E zXQdz9Xqk|))l4RQfM(b~en_al`fe|WqGxYcy&Z9-i;d9Rr(FH{|V z_)+x?Kg>}^3f$iR+20nf{-vuw_8m~NoOR@pkY!u4qc39Ve=o7nO z1raO6;``q%>aRVpIo?<7!aN{55XC=dWOdyPh_L<9i_3|#ZV58Zio6m7u5oM|KL+2+ zF;Ttv)*DR-SqOIgk!Nte&HJd7XrSPJFP;ntd9DH9OS9$n-!#yu-+v6lx8|Vg-m4hb~vvbIqwo#nlcg8dqF>StYcwZ4^j&u$*LLn7UUmOw|944evOFdj95PEc_13$ zo+*$>h!~lS-(6^Mm9{S07qR+wlwUof^wD5IJs!5zRH^s|Z>@LPYJ(CkfbYp*R6kH36@v4yDb9>>z zr^)jn#KB&kWah`4VlH)&*4_Wsbs=p}A@}2xXch1DQ$@xpJ z_UmmS`#tVCN%7s)G>U7Yn#WYZ&d1Fc_Qcx-gs9J$UJ=%~BGGmwU-)Glh6rE<@^As- zgX}rP)(@4w%~w|5p}Q|%39yWMWS8oqe$wj2p0E7%61`2SsJ-r9YNBlWH>8t+#FOb% zjUV>n@i3ei3CQ*Z;%DW0N7N$bLN}Jw($RXWiBM!0DY`+NNQyyS0+dIkZyTR>p2N2e z8@zY}OX+e2@TZZgN8@gtIuMRX*E)48Ou_qP#vSRsbw$AL&SVX|_Mtgk+IO@)lks{e zW8J~7kCdK5@mnD!fL0F0L@0+U0-A`|Ynes^!o#N|n*GFEP3TIMxVQ^hh1FsAIAN}9 zSxCH$s&R(KK{y3RLHr(%Sv_M0^LjUgoVpYmfyXChA}xRe6HKQ92RycH6x;ekd7a5aoCYh(bmTdj51#3tC*c66d43 zt@&r!5!2MTd2cDWkJM~t{Ar0^u4ek>YylUcN4!YQxhxw8ySR2B`dhlin$hrS=z^@c zrlV#*a2cA86!zQg^HUsPhngQk1isJhYD*6g(8aIufEYM<*v5URk?O2v0%0;f@6F$P zv1Hso|C>Vevy92U{kZD`1Sekbqcya;CzA7%R@a}>=PK~j) zO`(y9kj9px#YMYU3;%6ar|u%ubb`ZrL7?0TR%w}7n9O3G43sFNJ021q&wM&yLM^&# z6?S6V+6g`KMSNA#YE`++Km~Q?K<>03Ov*k^S}#lWQdm;8iIw{T;n)HvPigI+b_ohB zs|&^k#ht79>r~SqE78lVPRfurI;1}LP4&>udUTucLgiU-8aD~-6IrTFr?~c%R+FDK zXbjZgr~Tu9mY>De4<@s!JXn3%HD3j$$qW{2??A&rY-4d?V^MDH<+8@I-p2CY1`DDL zYoW1vUsG*hQ+-MkYhOmiFR`?;rklT-*zz}S?Yq$tc;j};jqb7=y}dX3pWSHt1=oR^ zb@=eRfz2@z!lPx)ZG6NDa=oI5xouof&^i1 zu!YPZVHZg3BU|K#qy-h&nF}aV4ABN+iqG2=h0zp}&?PqXY9}Zj=41m&w6XQv*}%hR zkSrT%Xx46c1L_d)LDQ@49ZYDL+dfPXndOT55ITIQ2>Vn>kpk5`5HI2aK^(N)a{xww zDN=;4REpt>u$x}u++5LBDmYh$YM`|oQoxG-!niYUOA=tRZMTo}P$66-xd^PUL}Dpj z$*Em|By1f|`X%<}vh&TiP116Ne=`YCprE|j7(dF*;36R@3V6W`>4opnBEm|k&^Zzj zMFxh5*jgegf{m`kTZB`3Syy{md63g@F~v#*e61Iwio5o_2h{0B2}{5Oq3t^0T^;Z+ z2{nHay7Rklz^osg!Imb&!kM=*S8rDd!Nq@zjZgGHasjv>ff=(l(4+ruYCl%6bcdtU zFPs6GQri@ncRzfD$p=A-zeTghrAo-qt9^*=@oE_WB9Gd?@w??;&?F#37DBe&8Xs)dn}B4gu<=94Vmw-w3U%P&BNSX2G+0IyHcN%}2O;k;2X~ea zKCMKsgCJ85%(Sv&XC;)&1e&&sn&v}=95jZ5CjAzx7>DiSi|wHT!eOug3MOR~Rmkr| zlAw*i)@0HH-`EGDRWNeO`0XquUj*s2Wfng}eK^R&dn9j}>`+D@ztQts_#GGZrLLm&WU$_1p$dSV+KuG%t z2va_TZJxpLIUjGq)9ypX9K4~xMW~nxi<=lw#-R+kvxayf_25Bd+@MbL;50=9!5>5z zJVbij-&0Ox@WO?l$L48a1%2mJ|$sbyJ&S~lSFAU~R?#`g9MNv>5T$B_K>^~!31MM>-!F^JNeo%za z1ER7=JADOa& z;REs{Av#{hlL~lJ#XL#V@aZMP05FP+F5sbAyy=ajYD7+UV?HY2JXR|N(rMvbW)4n6 zBDiMGlOKp4w#Z`&@;w{g!$-Lj7O-tdU&?@7Y!PyL0N)HV*M*abt7HLj5M>}TOdYgS z5@`mIj%1zyy8puHK2&voig!jpxqtP)bEs*6O%V%hd4VB!UJQZ9lVJDSEGl`Jrai(f z6zJ+l-@KUk!e_OvVqHjti8`!+EqNhac4x5s&fxX^t+~ykgQ5SuyE!<;e1@n3Btfgq z^IvXtb|T}(e7;Fe99)Du9quJoH{F zFnvs1m+%6de({3}XH(y=d37Gr&I02^Yj_y6$AlKKCrP0Cbv2~tZY<;uz>imo{o(^F zL{VuHHkS`Eh6nUR-_ zA>k0hqt@CA%=FUk%GYY4P|VbKY|&Ijn24c;S^O8dlT*v>U%zX<{Eis-Vf^0@L|B{R zK@27Yp<~5EcnG-~U{u*FVjNKrf_qY7H#vQwq6h+B`Kl#&k_(6cV#p_VG-*Y8WHjpp z`qXn!mxnk&f`li5J4{%GyvQBiTTxeta$VGqgm}dlN#ntebAjhfNR}|`OPUR$&c*|9 z0vXb$;Ibe6lU*oWH7sij%sY;A6!2G@@rVlt-Xpf=K&vew1CT)xRp)80ri|*65d#x2*#s0C1~n3o>_sfSy65iLtr(F^n6@z&7dg4Q`#wp<-(B7?ZEhmG zA@oa%-Mp`%^{oOiNxO)1QC#5?ePiW~N*5WJn0&61I{E8c*MnAPGF6+7zV)aTXu48n zD<_8Q+$uC*baOuVGzG{d^~7{8m58fLsT%vW1pSPCB)9_>4uck>jDkiQ> zkJPfI;wPFRKD9$*{A9y*d5FhjIe(ZyU$jytJ5X^1^2nuvm|`MLgv>N7i*7bWUeC&! z-|c|?lq@(p9lA9iE#@LSUn8RkC7-8<%64-kRE<-X3r=9i)bdUyk*P3?MPiJw^X<_$ zkAs`pG>N^7m5KE-Mny23f7m64G$G;{ODUY`ZzS)_;G(b^8nLTZD7W8H2>0tA!V>Nh z?8`Do1k=^XAVt%0kmT#~5w8M4iS|Kae}Ts<06SXMJlSfj|%(CK`E+G!nHx(#P# zpR0yVliaoB>T!6MLef0_xSU~f{W-1Fl_IU{t=?(ZTe<4Szw{QO+Y8zklRkbn$ubZ4q|&IK zC0Hryz&C#S(0noXvy#m1Hq|V9!=FGlGGUb6~vt+v}dh2qxwEPZViQ+OTDZ7Pgq^P)v<=w0BD9>>v0Um zDkmtJCIdNg6kd~H)E%(V zQu~RKFkBH5{PNQ!w_y}H;320Y_6AATKoi0aej~VUN1nlWx>SLkQ_|Vp;qMdcP>9-&>YYZCFX|*= zYx9XX0fibkRJSeDaIVVn^q}FD1&qX;>M^u9+GY{oWyGsGehQ9Mo}tjgHZQ1VYdfO1 zrZbcn5^;`U4yLjVN?N91{O*8^m3s2tN#rG=vZId5PckN^8f#GBmWDOG4b1;Giy|5V zZG4_WeR~LBv^(3CzWgJASUalN9v19`;dc#_#apP;{`5sghI5l?p~4~=siPbwTw5H5 z+GibRQcKM^FocK8QIFbej6da{`*$1K{^{q8L&di>qQG|s4-;}Nx<{WByY;Q6`LIDM z^S&szm3lZf%%%G&%-*W4ZhvK+DL-)jEETRoo`q{_14-V@14)Ayx11?iQZq0Tn3DxG zxUe`Ns6#tGAN_8 ze_UOD9iyAS42fMkCoMZLl5V;TwMRb??U|Y89dbmg@pBwfKIj%NqNtTA%-q1a zYQiJu9feiwTDGUw%|C5=ME}we#qDF41U+xgJvr(UY{(mPg4N5qzTF2N_PS`xi@$Qm zm7ySjm*ikv!0*dfIuKb=VibmSInV9DP^n}j^v+bo!KjIn7lfLYC$9CDq$t}?;WEmJ z0)sv7OP%vo)YwuH^BOlOC1cpM9#z7!x^{>gl$FEldbI60 zkgrDtIK=lIx=Y+UL>O|z8g_tyH2wq#sghrN6oFD`2rBq55bVE<57oQQ6fr6P;e+E2 zOLoseChS}Zcg8ZMUe+#J**32~z7-creMOMJFFVV!UMiv_YXsW}!LLu!h_GDSSX=RD zp2GSRD~F?2oORUR+8r}ww6G-&6G5SgGr>FA=QG5!wbv{U#I}0=0AYKm4~!37`;aah zHmnPSFoS~rvH2^{zO(NBuuQ{6)Z$KSSw`OVm^@MzIP4kdVX-a#mh~Bwf5pz;FPWE| zvJS(UgD({f2CqC+iTqE!IwA*x4DdwUp?vbg1C-t6?t9*$d5M>2+_Cz91cfJmWhcgH z*-CcoJ%l+O(;yVkA!z_V!lFx&m0jR0Aw`zUSBA^g){=Rm=pyl8$vFV1HM);}ZZkH2sidfpK@a@hHraOxqDn zSBb_bl>pVeY%@06;K)uN)?loc(s3K{8;6uAk|yBu98jl=JP(eLy2$(t7cx@9agRj~ zQgGwKRRsuTUvjGykMrf3sPau}0h&l9X!!@USOta$VTy#k78^D@H$l7Lj4XBAi(e&! znEOA3tyM{{nL$<*~_EHZ@SsAa2vaj^fVEldc?R%fA zHF&WecySnkqbbx%=cV zNI94GM0YckaPnnK{Zpx z(-I-OP4!3N2uFOaWa^z#Q>#M90nZ?-#oaWQ>e~F%pgJIa=@as@qR^FHcO%*7rpkmi zgq*AXjAfCr4gS;)v+;3)^G!$Rn=I_>O5AI0i!1`z&Nk$$BR%o-wWFAld;}XeQCjN+ z8Gv__QHN4cn+cY&){LLCbd%li1KpPUX76>USk%fISx9oyH`~)O9qF3nB1zmsm7T@wvrO*6*FGCp>n7bvpIB`c|#(K%j3AYdMy$Q(TT zZ(Fklef*KKT;nZS=)?p~dj1h5RRWzMjUK~VtU|toF5P+10s<^b#)(=-@Bhae@SpbN@Fo@9z(Gp;I98lx~Hh-poGc7NuNVpv-r$$0^soNwO9>pHQ z_*@Wr$im*?9`Gi?wsQwkxCkT(cC96q!iDeYNq4*`??|&w?olIiYcLt;&CFv&05|V} zVJ*2AIqS>*yJf^Gt-sOoL6P^s0p;YhNrOGiEX8(}&Ds{RpLAgh~!d z1>2g%qlYe_Orq~=MFXNlxWLGNgie9uDEd0xu!L2ZG?N}t=@1A=6S%;i6qpmkvPeX@lfji0|_j_%Y1r=4YYOmyWSlsBJfZTc#+eOf!7?EanC=?{R(6WztT z|FpXV4o=i?T^=cLY<^GtWA?xwv^KXao!nq^wTPGs+JysX*9<9q_J}R^Uv0DMCL0?k z3n~$qN`@edhyXdrrb_?3!x#e&vLLhj_+MY|KKL;%%KwtvrGgTb4Yvr4h-D?P>^)dY zMk7XN%(VMELueIUD^mK(h@t5q4bgXI_v* z$@AVj&--6IZ;lS?$b3Gq|9RKpX?YIpmG(sq(~Dw!YD5IawFJHcvn$9v69<5P6qqU! z)F&dRk5QxX!y_y^+2|QAv-iE`=NhiNFe|(od??vGEm8?1hYJ1yk@879ij$++FQ9&Y==2&n! zs>*xRg^?DGalKT-TJX+`#W<4@+W#m50BEnyk8Lu1OET%34C{Sh(KpPAJNqx%Ei5eE z4NYdeOr-@P#bsp!;1&zT1y7qdA6H`N)}Vn7{*Xxg>}|OG~KnbQOOjk5{#ASh6P%RhMo^HqqmXq|M_j@@wST@MAfz5oZmKTys+Iey?nSxsnuqHWf6z{95x#?!oQ3 z1j=2tH6(Nvtkqi@BYmh1{jjW1R_Ga~hRKw+kI|xs6;i2k*Oz2Gs0tPsb&4ii(WU&+ z`^D!UI@2sS)v0PI@xjef^#Io2Jd1tTacFji8HI@Pp7(Y{?yAQ*V}fQ~UQ&EtuOtFz zv_GX+A|9^5HG6%cn%?IN1y$ZTI{745rIKnUS|}L}$NF2hXw&V*{7z=gwIKt#_ zwr)xFj&ZNwkGx`DU;O=~zs3>3 z5VW5kaC@5OHZSE?sd;bi{P^YTu_9fcL>sn`jOH%>C)7fUsSTw%bk{+VaSD_;S+Nhx zp-WA-W3o6F@9lES{!pM+XZ#4ZRdN01JSLtCHZEy;9sl<~O22UX*p8_?suk)kMPguUV$i+B;HkurSBart5)TRz z$zn-iDoKa*lfo^NBHWV>A54lokrb7l6kV8fq#`M%HR4H;KvE&Su z&A`@-(3~H?w0~qd((JoI9UkleK11NnKS*m$&bybKKb2h2nvCEh84Y47Q5YF*h7Kp& z@3gvgGQDsy`SOX=SJF?H6#fhqJH^oYQR+z3;ZdVG*(S~s&W==*ocL0elxqEy8q1X0 zFVZsC_SYZ$Rd?^F4uDd?Gc=Ym{HfW!)tj}iQf_`pX%(bYyVHo;jFUVdx*MUuW4LpE znXzg9L0~&a2;d-=*HQ%+c@%W$!S2crXbn`aw2Ym5Ls2 zPaQ2x8>>hgANghtWQqA_Hl`rXR3PnJ;6Izvrd7_&=%1O5%Bgoh(@=4zrkfE0AyI7F zok(vNHp89pVRq`wi&tm9yfjIn`$h5mHt9^4g(z?P{Q<|IUoQ`yeS6~UyC0_zob1AM zD%1U?Kga!RCh?zE*VIRuY7Q56 z9a+~HFW%{QtHZzMDZRunYP`9Pa#>F=_@rC(`>$HuO6zP1-IxvSnOf&7hQ~fgse=cN z8isB88#|vg2X@7O{_ss_o_%QKg6`4pyPkE#JiT@7<9FS~?)Y~zEk}Roz3flXMS F{{gR&nqvR} literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/all-wcprops new file mode 100644 index 0000000..4eec647 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/all-wcprops @@ -0,0 +1,47 @@ +K 25 +svn:wc:ra_dav:version-url +V 85 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js +END +source_editor.js +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js +END +anchor.js +K 25 +svn:wc:ra_dav:version-url +V 95 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js +END +about.js +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js +END +color_picker.js +K 25 +svn:wc:ra_dav:version-url +V 101 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js +END +charmap.js +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js +END +link.js +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js +END +image.js +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js/image.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/entries b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/entries new file mode 100644 index 0000000..f571067 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/entries @@ -0,0 +1,266 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/js +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +source_editor.js +file + + + + +2010-06-04T12:51:47.525645Z +72284ff9e905cff4f228f0f9a6f76c12 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1505 + +anchor.js +file + + + + +2010-06-04T12:51:47.525645Z +a52835281645e4c85f0cadf56783d48f +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +891 + +about.js +file + + + + +2010-06-04T12:51:47.525645Z +73308b59a9305e9e2f9a4a9c1b538442 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2126 + +color_picker.js +file + + + + +2010-06-04T12:51:47.525645Z +560e2bd8c4b72557ed2a71a04ff7d39a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +11270 + +charmap.js +file + + + + +2010-06-04T12:51:47.525645Z +eea45e66eb4d2d920e0875708766c9b2 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +15059 + +link.js +file + + + + +2010-06-04T12:51:47.525645Z +956f82c027adf77cc88fb639b946f309 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +4959 + +image.js +file + + + + +2010-06-04T12:51:47.525645Z +6b84a9a6983d2960c389176f77dfae78 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +6091 + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/about.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/about.js.svn-base new file mode 100644 index 0000000..5cee9ed --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/about.js.svn-base @@ -0,0 +1,72 @@ +tinyMCEPopup.requireLangPack(); + +function init() { + var ed, tcont; + + tinyMCEPopup.resizeToInnerSize(); + ed = tinyMCEPopup.editor; + + // Give FF some time + window.setTimeout(insertHelpIFrame, 10); + + tcont = document.getElementById('plugintablecontainer'); + document.getElementById('plugins_tab').style.display = 'none'; + + var html = ""; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + + tinymce.each(ed.plugins, function(p, n) { + var info; + + if (!p.getInfo) + return; + + html += ''; + + info = p.getInfo(); + + if (info.infourl != null && info.infourl != '') + html += ''; + else + html += ''; + + if (info.authorurl != null && info.authorurl != '') + html += ''; + else + html += ''; + + html += ''; + html += ''; + + document.getElementById('plugins_tab').style.display = ''; + + }); + + html += ''; + html += '
' + ed.getLang('advanced_dlg.about_plugin') + '' + ed.getLang('advanced_dlg.about_author') + '' + ed.getLang('advanced_dlg.about_version') + '
' + info.longname + '' + info.longname + '' + info.author + '' + info.author + '' + info.version + '
'; + + tcont.innerHTML = html; + + tinyMCEPopup.dom.get('version').innerHTML = tinymce.majorVersion + "." + tinymce.minorVersion; + tinyMCEPopup.dom.get('date').innerHTML = tinymce.releaseDate; +} + +function insertHelpIFrame() { + var html; + + if (tinyMCEPopup.getParam('docs_url')) { + html = ''; + document.getElementById('iframecontainer').innerHTML = html; + document.getElementById('help_tab').style.display = 'block'; + } +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/anchor.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/anchor.js.svn-base new file mode 100644 index 0000000..7fe7810 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/anchor.js.svn-base @@ -0,0 +1,37 @@ +tinyMCEPopup.requireLangPack(); + +var AnchorDialog = { + init : function(ed) { + var action, elm, f = document.forms[0]; + + this.editor = ed; + elm = ed.dom.getParent(ed.selection.getNode(), 'A'); + v = ed.dom.getAttrib(elm, 'name'); + + if (v) { + this.action = 'update'; + f.anchorName.value = v; + } + + f.insert.value = ed.getLang(elm ? 'update' : 'insert'); + }, + + update : function() { + var ed = this.editor, elm, name = document.forms[0].anchorName.value; + + tinyMCEPopup.restoreSelection(); + + if (this.action != 'update') + ed.selection.collapse(1); + + elm = ed.dom.getParent(ed.selection.getNode(), 'A'); + if (elm) + elm.name = name; + else + ed.execCommand('mceInsertContent', 0, ed.dom.createHTML('a', {name : name, 'class' : 'mceItemAnchor'}, '')); + + tinyMCEPopup.close(); + } +}; + +tinyMCEPopup.onInit.add(AnchorDialog.init, AnchorDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/charmap.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/charmap.js.svn-base new file mode 100644 index 0000000..8c5aea1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/charmap.js.svn-base @@ -0,0 +1,335 @@ +/** + * charmap.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +tinyMCEPopup.requireLangPack(); + +var charmap = [ + [' ', ' ', true, 'no-break space'], + ['&', '&', true, 'ampersand'], + ['"', '"', true, 'quotation mark'], +// finance + ['¢', '¢', true, 'cent sign'], + ['€', '€', true, 'euro sign'], + ['£', '£', true, 'pound sign'], + ['¥', '¥', true, 'yen sign'], +// signs + ['©', '©', true, 'copyright sign'], + ['®', '®', true, 'registered sign'], + ['™', '™', true, 'trade mark sign'], + ['‰', '‰', true, 'per mille sign'], + ['µ', 'µ', true, 'micro sign'], + ['·', '·', true, 'middle dot'], + ['•', '•', true, 'bullet'], + ['…', '…', true, 'three dot leader'], + ['′', '′', true, 'minutes / feet'], + ['″', '″', true, 'seconds / inches'], + ['§', '§', true, 'section sign'], + ['¶', '¶', true, 'paragraph sign'], + ['ß', 'ß', true, 'sharp s / ess-zed'], +// quotations + ['‹', '‹', true, 'single left-pointing angle quotation mark'], + ['›', '›', true, 'single right-pointing angle quotation mark'], + ['«', '«', true, 'left pointing guillemet'], + ['»', '»', true, 'right pointing guillemet'], + ['‘', '‘', true, 'left single quotation mark'], + ['’', '’', true, 'right single quotation mark'], + ['“', '“', true, 'left double quotation mark'], + ['”', '”', true, 'right double quotation mark'], + ['‚', '‚', true, 'single low-9 quotation mark'], + ['„', '„', true, 'double low-9 quotation mark'], + ['<', '<', true, 'less-than sign'], + ['>', '>', true, 'greater-than sign'], + ['≤', '≤', true, 'less-than or equal to'], + ['≥', '≥', true, 'greater-than or equal to'], + ['–', '–', true, 'en dash'], + ['—', '—', true, 'em dash'], + ['¯', '¯', true, 'macron'], + ['‾', '‾', true, 'overline'], + ['¤', '¤', true, 'currency sign'], + ['¦', '¦', true, 'broken bar'], + ['¨', '¨', true, 'diaeresis'], + ['¡', '¡', true, 'inverted exclamation mark'], + ['¿', '¿', true, 'turned question mark'], + ['ˆ', 'ˆ', true, 'circumflex accent'], + ['˜', '˜', true, 'small tilde'], + ['°', '°', true, 'degree sign'], + ['−', '−', true, 'minus sign'], + ['±', '±', true, 'plus-minus sign'], + ['÷', '÷', true, 'division sign'], + ['⁄', '⁄', true, 'fraction slash'], + ['×', '×', true, 'multiplication sign'], + ['¹', '¹', true, 'superscript one'], + ['²', '²', true, 'superscript two'], + ['³', '³', true, 'superscript three'], + ['¼', '¼', true, 'fraction one quarter'], + ['½', '½', true, 'fraction one half'], + ['¾', '¾', true, 'fraction three quarters'], +// math / logical + ['ƒ', 'ƒ', true, 'function / florin'], + ['∫', '∫', true, 'integral'], + ['∑', '∑', true, 'n-ary sumation'], + ['∞', '∞', true, 'infinity'], + ['√', '√', true, 'square root'], + ['∼', '∼', false,'similar to'], + ['≅', '≅', false,'approximately equal to'], + ['≈', '≈', true, 'almost equal to'], + ['≠', '≠', true, 'not equal to'], + ['≡', '≡', true, 'identical to'], + ['∈', '∈', false,'element of'], + ['∉', '∉', false,'not an element of'], + ['∋', '∋', false,'contains as member'], + ['∏', '∏', true, 'n-ary product'], + ['∧', '∧', false,'logical and'], + ['∨', '∨', false,'logical or'], + ['¬', '¬', true, 'not sign'], + ['∩', '∩', true, 'intersection'], + ['∪', '∪', false,'union'], + ['∂', '∂', true, 'partial differential'], + ['∀', '∀', false,'for all'], + ['∃', '∃', false,'there exists'], + ['∅', '∅', false,'diameter'], + ['∇', '∇', false,'backward difference'], + ['∗', '∗', false,'asterisk operator'], + ['∝', '∝', false,'proportional to'], + ['∠', '∠', false,'angle'], +// undefined + ['´', '´', true, 'acute accent'], + ['¸', '¸', true, 'cedilla'], + ['ª', 'ª', true, 'feminine ordinal indicator'], + ['º', 'º', true, 'masculine ordinal indicator'], + ['†', '†', true, 'dagger'], + ['‡', '‡', true, 'double dagger'], +// alphabetical special chars + ['À', 'À', true, 'A - grave'], + ['Á', 'Á', true, 'A - acute'], + ['Â', 'Â', true, 'A - circumflex'], + ['Ã', 'Ã', true, 'A - tilde'], + ['Ä', 'Ä', true, 'A - diaeresis'], + ['Å', 'Å', true, 'A - ring above'], + ['Æ', 'Æ', true, 'ligature AE'], + ['Ç', 'Ç', true, 'C - cedilla'], + ['È', 'È', true, 'E - grave'], + ['É', 'É', true, 'E - acute'], + ['Ê', 'Ê', true, 'E - circumflex'], + ['Ë', 'Ë', true, 'E - diaeresis'], + ['Ì', 'Ì', true, 'I - grave'], + ['Í', 'Í', true, 'I - acute'], + ['Î', 'Î', true, 'I - circumflex'], + ['Ï', 'Ï', true, 'I - diaeresis'], + ['Ð', 'Ð', true, 'ETH'], + ['Ñ', 'Ñ', true, 'N - tilde'], + ['Ò', 'Ò', true, 'O - grave'], + ['Ó', 'Ó', true, 'O - acute'], + ['Ô', 'Ô', true, 'O - circumflex'], + ['Õ', 'Õ', true, 'O - tilde'], + ['Ö', 'Ö', true, 'O - diaeresis'], + ['Ø', 'Ø', true, 'O - slash'], + ['Œ', 'Œ', true, 'ligature OE'], + ['Š', 'Š', true, 'S - caron'], + ['Ù', 'Ù', true, 'U - grave'], + ['Ú', 'Ú', true, 'U - acute'], + ['Û', 'Û', true, 'U - circumflex'], + ['Ü', 'Ü', true, 'U - diaeresis'], + ['Ý', 'Ý', true, 'Y - acute'], + ['Ÿ', 'Ÿ', true, 'Y - diaeresis'], + ['Þ', 'Þ', true, 'THORN'], + ['à', 'à', true, 'a - grave'], + ['á', 'á', true, 'a - acute'], + ['â', 'â', true, 'a - circumflex'], + ['ã', 'ã', true, 'a - tilde'], + ['ä', 'ä', true, 'a - diaeresis'], + ['å', 'å', true, 'a - ring above'], + ['æ', 'æ', true, 'ligature ae'], + ['ç', 'ç', true, 'c - cedilla'], + ['è', 'è', true, 'e - grave'], + ['é', 'é', true, 'e - acute'], + ['ê', 'ê', true, 'e - circumflex'], + ['ë', 'ë', true, 'e - diaeresis'], + ['ì', 'ì', true, 'i - grave'], + ['í', 'í', true, 'i - acute'], + ['î', 'î', true, 'i - circumflex'], + ['ï', 'ï', true, 'i - diaeresis'], + ['ð', 'ð', true, 'eth'], + ['ñ', 'ñ', true, 'n - tilde'], + ['ò', 'ò', true, 'o - grave'], + ['ó', 'ó', true, 'o - acute'], + ['ô', 'ô', true, 'o - circumflex'], + ['õ', 'õ', true, 'o - tilde'], + ['ö', 'ö', true, 'o - diaeresis'], + ['ø', 'ø', true, 'o slash'], + ['œ', 'œ', true, 'ligature oe'], + ['š', 'š', true, 's - caron'], + ['ù', 'ù', true, 'u - grave'], + ['ú', 'ú', true, 'u - acute'], + ['û', 'û', true, 'u - circumflex'], + ['ü', 'ü', true, 'u - diaeresis'], + ['ý', 'ý', true, 'y - acute'], + ['þ', 'þ', true, 'thorn'], + ['ÿ', 'ÿ', true, 'y - diaeresis'], + ['Α', 'Α', true, 'Alpha'], + ['Β', 'Β', true, 'Beta'], + ['Γ', 'Γ', true, 'Gamma'], + ['Δ', 'Δ', true, 'Delta'], + ['Ε', 'Ε', true, 'Epsilon'], + ['Ζ', 'Ζ', true, 'Zeta'], + ['Η', 'Η', true, 'Eta'], + ['Θ', 'Θ', true, 'Theta'], + ['Ι', 'Ι', true, 'Iota'], + ['Κ', 'Κ', true, 'Kappa'], + ['Λ', 'Λ', true, 'Lambda'], + ['Μ', 'Μ', true, 'Mu'], + ['Ν', 'Ν', true, 'Nu'], + ['Ξ', 'Ξ', true, 'Xi'], + ['Ο', 'Ο', true, 'Omicron'], + ['Π', 'Π', true, 'Pi'], + ['Ρ', 'Ρ', true, 'Rho'], + ['Σ', 'Σ', true, 'Sigma'], + ['Τ', 'Τ', true, 'Tau'], + ['Υ', 'Υ', true, 'Upsilon'], + ['Φ', 'Φ', true, 'Phi'], + ['Χ', 'Χ', true, 'Chi'], + ['Ψ', 'Ψ', true, 'Psi'], + ['Ω', 'Ω', true, 'Omega'], + ['α', 'α', true, 'alpha'], + ['β', 'β', true, 'beta'], + ['γ', 'γ', true, 'gamma'], + ['δ', 'δ', true, 'delta'], + ['ε', 'ε', true, 'epsilon'], + ['ζ', 'ζ', true, 'zeta'], + ['η', 'η', true, 'eta'], + ['θ', 'θ', true, 'theta'], + ['ι', 'ι', true, 'iota'], + ['κ', 'κ', true, 'kappa'], + ['λ', 'λ', true, 'lambda'], + ['μ', 'μ', true, 'mu'], + ['ν', 'ν', true, 'nu'], + ['ξ', 'ξ', true, 'xi'], + ['ο', 'ο', true, 'omicron'], + ['π', 'π', true, 'pi'], + ['ρ', 'ρ', true, 'rho'], + ['ς', 'ς', true, 'final sigma'], + ['σ', 'σ', true, 'sigma'], + ['τ', 'τ', true, 'tau'], + ['υ', 'υ', true, 'upsilon'], + ['φ', 'φ', true, 'phi'], + ['χ', 'χ', true, 'chi'], + ['ψ', 'ψ', true, 'psi'], + ['ω', 'ω', true, 'omega'], +// symbols + ['ℵ', 'ℵ', false,'alef symbol'], + ['ϖ', 'ϖ', false,'pi symbol'], + ['ℜ', 'ℜ', false,'real part symbol'], + ['ϑ','ϑ', false,'theta symbol'], + ['ϒ', 'ϒ', false,'upsilon - hook symbol'], + ['℘', '℘', false,'Weierstrass p'], + ['ℑ', 'ℑ', false,'imaginary part'], +// arrows + ['←', '←', true, 'leftwards arrow'], + ['↑', '↑', true, 'upwards arrow'], + ['→', '→', true, 'rightwards arrow'], + ['↓', '↓', true, 'downwards arrow'], + ['↔', '↔', true, 'left right arrow'], + ['↵', '↵', false,'carriage return'], + ['⇐', '⇐', false,'leftwards double arrow'], + ['⇑', '⇑', false,'upwards double arrow'], + ['⇒', '⇒', false,'rightwards double arrow'], + ['⇓', '⇓', false,'downwards double arrow'], + ['⇔', '⇔', false,'left right double arrow'], + ['∴', '∴', false,'therefore'], + ['⊂', '⊂', false,'subset of'], + ['⊃', '⊃', false,'superset of'], + ['⊄', '⊄', false,'not a subset of'], + ['⊆', '⊆', false,'subset of or equal to'], + ['⊇', '⊇', false,'superset of or equal to'], + ['⊕', '⊕', false,'circled plus'], + ['⊗', '⊗', false,'circled times'], + ['⊥', '⊥', false,'perpendicular'], + ['⋅', '⋅', false,'dot operator'], + ['⌈', '⌈', false,'left ceiling'], + ['⌉', '⌉', false,'right ceiling'], + ['⌊', '⌊', false,'left floor'], + ['⌋', '⌋', false,'right floor'], + ['⟨', '〈', false,'left-pointing angle bracket'], + ['⟩', '〉', false,'right-pointing angle bracket'], + ['◊', '◊', true,'lozenge'], + ['♠', '♠', false,'black spade suit'], + ['♣', '♣', true, 'black club suit'], + ['♥', '♥', true, 'black heart suit'], + ['♦', '♦', true, 'black diamond suit'], + [' ', ' ', false,'en space'], + [' ', ' ', false,'em space'], + [' ', ' ', false,'thin space'], + ['‌', '‌', false,'zero width non-joiner'], + ['‍', '‍', false,'zero width joiner'], + ['‎', '‎', false,'left-to-right mark'], + ['‏', '‏', false,'right-to-left mark'], + ['­', '­', false,'soft hyphen'] +]; + +tinyMCEPopup.onInit.add(function() { + tinyMCEPopup.dom.setHTML('charmapView', renderCharMapHTML()); +}); + +function renderCharMapHTML() { + var charsPerRow = 20, tdWidth=20, tdHeight=20, i; + var html = ''; + var cols=-1; + + for (i=0; i' + + '' + + charmap[i][1] + + ''; + if ((cols+1) % charsPerRow == 0) + html += ''; + } + } + + if (cols % charsPerRow > 0) { + var padd = charsPerRow - (cols % charsPerRow); + for (var i=0; i '; + } + + html += '
'; + + return html; +} + +function insertChar(chr) { + tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';'); + + // Refocus in window + if (tinyMCEPopup.isWindow) + window.focus(); + + tinyMCEPopup.editor.focus(); + tinyMCEPopup.close(); +} + +function previewChar(codeA, codeB, codeN) { + var elmA = document.getElementById('codeA'); + var elmB = document.getElementById('codeB'); + var elmV = document.getElementById('codeV'); + var elmN = document.getElementById('codeN'); + + if (codeA=='#160;') { + elmV.innerHTML = '__'; + } else { + elmV.innerHTML = '&' + codeA; + } + + elmB.innerHTML = '&' + codeA; + elmA.innerHTML = '&' + codeB; + elmN.innerHTML = codeN; +} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/color_picker.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/color_picker.js.svn-base new file mode 100644 index 0000000..fd9700f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/color_picker.js.svn-base @@ -0,0 +1,253 @@ +tinyMCEPopup.requireLangPack(); + +var detail = 50, strhex = "0123456789abcdef", i, isMouseDown = false, isMouseOver = false; + +var colors = [ + "#000000","#000033","#000066","#000099","#0000cc","#0000ff","#330000","#330033", + "#330066","#330099","#3300cc","#3300ff","#660000","#660033","#660066","#660099", + "#6600cc","#6600ff","#990000","#990033","#990066","#990099","#9900cc","#9900ff", + "#cc0000","#cc0033","#cc0066","#cc0099","#cc00cc","#cc00ff","#ff0000","#ff0033", + "#ff0066","#ff0099","#ff00cc","#ff00ff","#003300","#003333","#003366","#003399", + "#0033cc","#0033ff","#333300","#333333","#333366","#333399","#3333cc","#3333ff", + "#663300","#663333","#663366","#663399","#6633cc","#6633ff","#993300","#993333", + "#993366","#993399","#9933cc","#9933ff","#cc3300","#cc3333","#cc3366","#cc3399", + "#cc33cc","#cc33ff","#ff3300","#ff3333","#ff3366","#ff3399","#ff33cc","#ff33ff", + "#006600","#006633","#006666","#006699","#0066cc","#0066ff","#336600","#336633", + "#336666","#336699","#3366cc","#3366ff","#666600","#666633","#666666","#666699", + "#6666cc","#6666ff","#996600","#996633","#996666","#996699","#9966cc","#9966ff", + "#cc6600","#cc6633","#cc6666","#cc6699","#cc66cc","#cc66ff","#ff6600","#ff6633", + "#ff6666","#ff6699","#ff66cc","#ff66ff","#009900","#009933","#009966","#009999", + "#0099cc","#0099ff","#339900","#339933","#339966","#339999","#3399cc","#3399ff", + "#669900","#669933","#669966","#669999","#6699cc","#6699ff","#999900","#999933", + "#999966","#999999","#9999cc","#9999ff","#cc9900","#cc9933","#cc9966","#cc9999", + "#cc99cc","#cc99ff","#ff9900","#ff9933","#ff9966","#ff9999","#ff99cc","#ff99ff", + "#00cc00","#00cc33","#00cc66","#00cc99","#00cccc","#00ccff","#33cc00","#33cc33", + "#33cc66","#33cc99","#33cccc","#33ccff","#66cc00","#66cc33","#66cc66","#66cc99", + "#66cccc","#66ccff","#99cc00","#99cc33","#99cc66","#99cc99","#99cccc","#99ccff", + "#cccc00","#cccc33","#cccc66","#cccc99","#cccccc","#ccccff","#ffcc00","#ffcc33", + "#ffcc66","#ffcc99","#ffcccc","#ffccff","#00ff00","#00ff33","#00ff66","#00ff99", + "#00ffcc","#00ffff","#33ff00","#33ff33","#33ff66","#33ff99","#33ffcc","#33ffff", + "#66ff00","#66ff33","#66ff66","#66ff99","#66ffcc","#66ffff","#99ff00","#99ff33", + "#99ff66","#99ff99","#99ffcc","#99ffff","#ccff00","#ccff33","#ccff66","#ccff99", + "#ccffcc","#ccffff","#ffff00","#ffff33","#ffff66","#ffff99","#ffffcc","#ffffff" +]; + +var named = { + '#F0F8FF':'AliceBlue','#FAEBD7':'AntiqueWhite','#00FFFF':'Aqua','#7FFFD4':'Aquamarine','#F0FFFF':'Azure','#F5F5DC':'Beige', + '#FFE4C4':'Bisque','#000000':'Black','#FFEBCD':'BlanchedAlmond','#0000FF':'Blue','#8A2BE2':'BlueViolet','#A52A2A':'Brown', + '#DEB887':'BurlyWood','#5F9EA0':'CadetBlue','#7FFF00':'Chartreuse','#D2691E':'Chocolate','#FF7F50':'Coral','#6495ED':'CornflowerBlue', + '#FFF8DC':'Cornsilk','#DC143C':'Crimson','#00FFFF':'Cyan','#00008B':'DarkBlue','#008B8B':'DarkCyan','#B8860B':'DarkGoldenRod', + '#A9A9A9':'DarkGray','#A9A9A9':'DarkGrey','#006400':'DarkGreen','#BDB76B':'DarkKhaki','#8B008B':'DarkMagenta','#556B2F':'DarkOliveGreen', + '#FF8C00':'Darkorange','#9932CC':'DarkOrchid','#8B0000':'DarkRed','#E9967A':'DarkSalmon','#8FBC8F':'DarkSeaGreen','#483D8B':'DarkSlateBlue', + '#2F4F4F':'DarkSlateGray','#2F4F4F':'DarkSlateGrey','#00CED1':'DarkTurquoise','#9400D3':'DarkViolet','#FF1493':'DeepPink','#00BFFF':'DeepSkyBlue', + '#696969':'DimGray','#696969':'DimGrey','#1E90FF':'DodgerBlue','#B22222':'FireBrick','#FFFAF0':'FloralWhite','#228B22':'ForestGreen', + '#FF00FF':'Fuchsia','#DCDCDC':'Gainsboro','#F8F8FF':'GhostWhite','#FFD700':'Gold','#DAA520':'GoldenRod','#808080':'Gray','#808080':'Grey', + '#008000':'Green','#ADFF2F':'GreenYellow','#F0FFF0':'HoneyDew','#FF69B4':'HotPink','#CD5C5C':'IndianRed','#4B0082':'Indigo','#FFFFF0':'Ivory', + '#F0E68C':'Khaki','#E6E6FA':'Lavender','#FFF0F5':'LavenderBlush','#7CFC00':'LawnGreen','#FFFACD':'LemonChiffon','#ADD8E6':'LightBlue', + '#F08080':'LightCoral','#E0FFFF':'LightCyan','#FAFAD2':'LightGoldenRodYellow','#D3D3D3':'LightGray','#D3D3D3':'LightGrey','#90EE90':'LightGreen', + '#FFB6C1':'LightPink','#FFA07A':'LightSalmon','#20B2AA':'LightSeaGreen','#87CEFA':'LightSkyBlue','#778899':'LightSlateGray','#778899':'LightSlateGrey', + '#B0C4DE':'LightSteelBlue','#FFFFE0':'LightYellow','#00FF00':'Lime','#32CD32':'LimeGreen','#FAF0E6':'Linen','#FF00FF':'Magenta','#800000':'Maroon', + '#66CDAA':'MediumAquaMarine','#0000CD':'MediumBlue','#BA55D3':'MediumOrchid','#9370D8':'MediumPurple','#3CB371':'MediumSeaGreen','#7B68EE':'MediumSlateBlue', + '#00FA9A':'MediumSpringGreen','#48D1CC':'MediumTurquoise','#C71585':'MediumVioletRed','#191970':'MidnightBlue','#F5FFFA':'MintCream','#FFE4E1':'MistyRose','#FFE4B5':'Moccasin', + '#FFDEAD':'NavajoWhite','#000080':'Navy','#FDF5E6':'OldLace','#808000':'Olive','#6B8E23':'OliveDrab','#FFA500':'Orange','#FF4500':'OrangeRed','#DA70D6':'Orchid', + '#EEE8AA':'PaleGoldenRod','#98FB98':'PaleGreen','#AFEEEE':'PaleTurquoise','#D87093':'PaleVioletRed','#FFEFD5':'PapayaWhip','#FFDAB9':'PeachPuff', + '#CD853F':'Peru','#FFC0CB':'Pink','#DDA0DD':'Plum','#B0E0E6':'PowderBlue','#800080':'Purple','#FF0000':'Red','#BC8F8F':'RosyBrown','#4169E1':'RoyalBlue', + '#8B4513':'SaddleBrown','#FA8072':'Salmon','#F4A460':'SandyBrown','#2E8B57':'SeaGreen','#FFF5EE':'SeaShell','#A0522D':'Sienna','#C0C0C0':'Silver', + '#87CEEB':'SkyBlue','#6A5ACD':'SlateBlue','#708090':'SlateGray','#708090':'SlateGrey','#FFFAFA':'Snow','#00FF7F':'SpringGreen', + '#4682B4':'SteelBlue','#D2B48C':'Tan','#008080':'Teal','#D8BFD8':'Thistle','#FF6347':'Tomato','#40E0D0':'Turquoise','#EE82EE':'Violet', + '#F5DEB3':'Wheat','#FFFFFF':'White','#F5F5F5':'WhiteSmoke','#FFFF00':'Yellow','#9ACD32':'YellowGreen' +}; + +function init() { + var inputColor = convertRGBToHex(tinyMCEPopup.getWindowArg('input_color')); + + tinyMCEPopup.resizeToInnerSize(); + + generatePicker(); + + if (inputColor) { + changeFinalColor(inputColor); + + col = convertHexToRGB(inputColor); + + if (col) + updateLight(col.r, col.g, col.b); + } +} + +function insertAction() { + var color = document.getElementById("color").value, f = tinyMCEPopup.getWindowArg('func'); + + tinyMCEPopup.restoreSelection(); + + if (f) + f(color); + + tinyMCEPopup.close(); +} + +function showColor(color, name) { + if (name) + document.getElementById("colorname").innerHTML = name; + + document.getElementById("preview").style.backgroundColor = color; + document.getElementById("color").value = color.toLowerCase(); +} + +function convertRGBToHex(col) { + var re = new RegExp("rgb\\s*\\(\\s*([0-9]+).*,\\s*([0-9]+).*,\\s*([0-9]+).*\\)", "gi"); + + if (!col) + return col; + + var rgb = col.replace(re, "$1,$2,$3").split(','); + if (rgb.length == 3) { + r = parseInt(rgb[0]).toString(16); + g = parseInt(rgb[1]).toString(16); + b = parseInt(rgb[2]).toString(16); + + r = r.length == 1 ? '0' + r : r; + g = g.length == 1 ? '0' + g : g; + b = b.length == 1 ? '0' + b : b; + + return "#" + r + g + b; + } + + return col; +} + +function convertHexToRGB(col) { + if (col.indexOf('#') != -1) { + col = col.replace(new RegExp('[^0-9A-F]', 'gi'), ''); + + r = parseInt(col.substring(0, 2), 16); + g = parseInt(col.substring(2, 4), 16); + b = parseInt(col.substring(4, 6), 16); + + return {r : r, g : g, b : b}; + } + + return null; +} + +function generatePicker() { + var el = document.getElementById('light'), h = '', i; + + for (i = 0; i < detail; i++){ + h += '
'; + } + + el.innerHTML = h; +} + +function generateWebColors() { + var el = document.getElementById('webcolors'), h = '', i; + + if (el.className == 'generated') + return; + + h += '' + + ''; + + for (i=0; i' + + '' + + ''; + if ((i+1) % 18 == 0) + h += ''; + } + + h += '
'; + + el.innerHTML = h; + el.className = 'generated'; +} + +function generateNamedColors() { + var el = document.getElementById('namedcolors'), h = '', n, v, i = 0; + + if (el.className == 'generated') + return; + + for (n in named) { + v = named[n]; + h += '' + } + + el.innerHTML = h; + el.className = 'generated'; +} + +function dechex(n) { + return strhex.charAt(Math.floor(n / 16)) + strhex.charAt(n % 16); +} + +function computeColor(e) { + var x, y, partWidth, partDetail, imHeight, r, g, b, coef, i, finalCoef, finalR, finalG, finalB; + + x = e.offsetX ? e.offsetX : (e.target ? e.clientX - e.target.x : 0); + y = e.offsetY ? e.offsetY : (e.target ? e.clientY - e.target.y : 0); + + partWidth = document.getElementById('colors').width / 6; + partDetail = detail / 2; + imHeight = document.getElementById('colors').height; + + r = (x >= 0)*(x < partWidth)*255 + (x >= partWidth)*(x < 2*partWidth)*(2*255 - x * 255 / partWidth) + (x >= 4*partWidth)*(x < 5*partWidth)*(-4*255 + x * 255 / partWidth) + (x >= 5*partWidth)*(x < 6*partWidth)*255; + g = (x >= 0)*(x < partWidth)*(x * 255 / partWidth) + (x >= partWidth)*(x < 3*partWidth)*255 + (x >= 3*partWidth)*(x < 4*partWidth)*(4*255 - x * 255 / partWidth); + b = (x >= 2*partWidth)*(x < 3*partWidth)*(-2*255 + x * 255 / partWidth) + (x >= 3*partWidth)*(x < 5*partWidth)*255 + (x >= 5*partWidth)*(x < 6*partWidth)*(6*255 - x * 255 / partWidth); + + coef = (imHeight - y) / imHeight; + r = 128 + (r - 128) * coef; + g = 128 + (g - 128) * coef; + b = 128 + (b - 128) * coef; + + changeFinalColor('#' + dechex(r) + dechex(g) + dechex(b)); + updateLight(r, g, b); +} + +function updateLight(r, g, b) { + var i, partDetail = detail / 2, finalCoef, finalR, finalG, finalB, color; + + for (i=0; i=0) && (i'); + }, + + init : function() { + var f = document.forms[0], ed = tinyMCEPopup.editor; + + // Setup browse button + document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image'); + if (isVisible('srcbrowser')) + document.getElementById('src').style.width = '180px'; + + e = ed.selection.getNode(); + + this.fillFileList('image_list', 'tinyMCEImageList'); + + if (e.nodeName == 'IMG') { + f.src.value = ed.dom.getAttrib(e, 'src'); + f.alt.value = ed.dom.getAttrib(e, 'alt'); + f.border.value = this.getAttrib(e, 'border'); + f.vspace.value = this.getAttrib(e, 'vspace'); + f.hspace.value = this.getAttrib(e, 'hspace'); + f.width.value = ed.dom.getAttrib(e, 'width'); + f.height.value = ed.dom.getAttrib(e, 'height'); + f.insert.value = ed.getLang('update'); + this.styleVal = ed.dom.getAttrib(e, 'style'); + selectByValue(f, 'image_list', f.src.value); + selectByValue(f, 'align', this.getAttrib(e, 'align')); + this.updateStyle(); + } + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + update : function() { + var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, args = {}, el; + + tinyMCEPopup.restoreSelection(); + + if (f.src.value === '') { + if (ed.selection.getNode().nodeName == 'IMG') { + ed.dom.remove(ed.selection.getNode()); + ed.execCommand('mceRepaint'); + } + + tinyMCEPopup.close(); + return; + } + + if (!ed.settings.inline_styles) { + args = tinymce.extend(args, { + vspace : nl.vspace.value, + hspace : nl.hspace.value, + border : nl.border.value, + align : getSelectValue(f, 'align') + }); + } else + args.style = this.styleVal; + + tinymce.extend(args, { + src : f.src.value, + alt : f.alt.value, + width : f.width.value, + height : f.height.value + }); + + el = ed.selection.getNode(); + + if (el && el.nodeName == 'IMG') { + ed.dom.setAttribs(el, args); + } else { + ed.execCommand('mceInsertContent', false, '', {skip_undo : 1}); + ed.dom.setAttribs('__mce_tmp', args); + ed.dom.setAttrib('__mce_tmp', 'id', ''); + ed.undoManager.add(); + } + + tinyMCEPopup.close(); + }, + + updateStyle : function() { + var dom = tinyMCEPopup.dom, st, v, f = document.forms[0]; + + if (tinyMCEPopup.editor.settings.inline_styles) { + st = tinyMCEPopup.dom.parseStyle(this.styleVal); + + // Handle align + v = getSelectValue(f, 'align'); + if (v) { + if (v == 'left' || v == 'right') { + st['float'] = v; + delete st['vertical-align']; + } else { + st['vertical-align'] = v; + delete st['float']; + } + } else { + delete st['float']; + delete st['vertical-align']; + } + + // Handle border + v = f.border.value; + if (v || v == '0') { + if (v == '0') + st['border'] = '0'; + else + st['border'] = v + 'px solid black'; + } else + delete st['border']; + + // Handle hspace + v = f.hspace.value; + if (v) { + delete st['margin']; + st['margin-left'] = v + 'px'; + st['margin-right'] = v + 'px'; + } else { + delete st['margin-left']; + delete st['margin-right']; + } + + // Handle vspace + v = f.vspace.value; + if (v) { + delete st['margin']; + st['margin-top'] = v + 'px'; + st['margin-bottom'] = v + 'px'; + } else { + delete st['margin-top']; + delete st['margin-bottom']; + } + + // Merge + st = tinyMCEPopup.dom.parseStyle(dom.serializeStyle(st), 'img'); + this.styleVal = dom.serializeStyle(st, 'img'); + } + }, + + getAttrib : function(e, at) { + var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2; + + if (ed.settings.inline_styles) { + switch (at) { + case 'align': + if (v = dom.getStyle(e, 'float')) + return v; + + if (v = dom.getStyle(e, 'vertical-align')) + return v; + + break; + + case 'hspace': + v = dom.getStyle(e, 'margin-left') + v2 = dom.getStyle(e, 'margin-right'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'vspace': + v = dom.getStyle(e, 'margin-top') + v2 = dom.getStyle(e, 'margin-bottom'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'border': + v = 0; + + tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) { + sv = dom.getStyle(e, 'border-' + sv + '-width'); + + // False or not the same as prev + if (!sv || (sv != v && v !== 0)) { + v = 0; + return false; + } + + if (sv) + v = sv; + }); + + if (v) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + } + } + + if (v = dom.getAttrib(e, at)) + return v; + + return ''; + }, + + resetImageData : function() { + var f = document.forms[0]; + + f.width.value = f.height.value = ""; + }, + + updateImageData : function() { + var f = document.forms[0], t = ImageDialog; + + if (f.width.value == "") + f.width.value = t.preloadImg.width; + + if (f.height.value == "") + f.height.value = t.preloadImg.height; + }, + + getImageData : function() { + var f = document.forms[0]; + + this.preloadImg = new Image(); + this.preloadImg.onload = this.updateImageData; + this.preloadImg.onerror = this.resetImageData; + this.preloadImg.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(f.src.value); + } +}; + +ImageDialog.preInit(); +tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/link.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/link.js.svn-base new file mode 100644 index 0000000..f67a5bc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/link.js.svn-base @@ -0,0 +1,156 @@ +tinyMCEPopup.requireLangPack(); + +var LinkDialog = { + preInit : function() { + var url; + + if (url = tinyMCEPopup.getParam("external_link_list_url")) + document.write(''); + }, + + init : function() { + var f = document.forms[0], ed = tinyMCEPopup.editor; + + // Setup browse button + document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser', 'href', 'file', 'theme_advanced_link'); + if (isVisible('hrefbrowser')) + document.getElementById('href').style.width = '180px'; + + this.fillClassList('class_list'); + this.fillFileList('link_list', 'tinyMCELinkList'); + this.fillTargetList('target_list'); + + if (e = ed.dom.getParent(ed.selection.getNode(), 'A')) { + f.href.value = ed.dom.getAttrib(e, 'href'); + f.linktitle.value = ed.dom.getAttrib(e, 'title'); + f.insert.value = ed.getLang('update'); + selectByValue(f, 'link_list', f.href.value); + selectByValue(f, 'target_list', ed.dom.getAttrib(e, 'target')); + selectByValue(f, 'class_list', ed.dom.getAttrib(e, 'class')); + } + }, + + update : function() { + var f = document.forms[0], ed = tinyMCEPopup.editor, e, b; + + tinyMCEPopup.restoreSelection(); + e = ed.dom.getParent(ed.selection.getNode(), 'A'); + + // Remove element if there is no href + if (!f.href.value) { + if (e) { + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + b = ed.selection.getBookmark(); + ed.dom.remove(e, 1); + ed.selection.moveToBookmark(b); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + return; + } + } + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + + // Create new anchor elements + if (e == null) { + ed.getDoc().execCommand("unlink", false, null); + tinyMCEPopup.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1}); + + tinymce.each(ed.dom.select("a"), function(n) { + if (ed.dom.getAttrib(n, 'href') == '#mce_temp_url#') { + e = n; + + ed.dom.setAttribs(e, { + href : f.href.value, + title : f.linktitle.value, + target : f.target_list ? getSelectValue(f, "target_list") : null, + 'class' : f.class_list ? getSelectValue(f, "class_list") : null + }); + } + }); + } else { + ed.dom.setAttribs(e, { + href : f.href.value, + title : f.linktitle.value, + target : f.target_list ? getSelectValue(f, "target_list") : null, + 'class' : f.class_list ? getSelectValue(f, "class_list") : null + }); + } + + // Don't move caret if selection was image + if (e.childNodes.length != 1 || e.firstChild.nodeName != 'IMG') { + ed.focus(); + ed.selection.select(e); + ed.selection.collapse(0); + tinyMCEPopup.storeSelection(); + } + + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + }, + + checkPrefix : function(n) { + if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_email'))) + n.value = 'mailto:' + n.value; + + if (/^\s*www\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_external'))) + n.value = 'http://' + n.value; + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillClassList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + if (v = tinyMCEPopup.getParam('theme_advanced_styles')) { + cl = []; + + tinymce.each(v.split(';'), function(v) { + var p = v.split('='); + + cl.push({'title' : p[0], 'class' : p[1]}); + }); + } else + cl = tinyMCEPopup.editor.dom.getClasses(); + + if (cl.length > 0) { + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + + tinymce.each(cl, function(o) { + lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillTargetList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v; + + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_same'), '_self'); + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_blank'), '_blank'); + + if (v = tinyMCEPopup.getParam('theme_advanced_link_targets')) { + tinymce.each(v.split(','), function(v) { + v = v.split('='); + lst.options[lst.options.length] = new Option(v[0], v[1]); + }); + } + } +}; + +LinkDialog.preInit(); +tinyMCEPopup.onInit.add(LinkDialog.init, LinkDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/source_editor.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/source_editor.js.svn-base new file mode 100644 index 0000000..2793286 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/.svn/text-base/source_editor.js.svn-base @@ -0,0 +1,62 @@ +tinyMCEPopup.requireLangPack(); +tinyMCEPopup.onInit.add(onLoadInit); + +function saveContent() { + tinyMCEPopup.editor.setContent(document.getElementById('htmlSource').value, {source_view : true}); + tinyMCEPopup.close(); +} + +function onLoadInit() { + tinyMCEPopup.resizeToInnerSize(); + + // Remove Gecko spellchecking + if (tinymce.isGecko) + document.body.spellcheck = tinyMCEPopup.editor.getParam("gecko_spellcheck"); + + document.getElementById('htmlSource').value = tinyMCEPopup.editor.getContent({source_view : true}); + + if (tinyMCEPopup.editor.getParam("theme_advanced_source_editor_wrap", true)) { + setWrap('soft'); + document.getElementById('wraped').checked = true; + } + + resizeInputs(); +} + +function setWrap(val) { + var v, n, s = document.getElementById('htmlSource'); + + s.wrap = val; + + if (!tinymce.isIE) { + v = s.value; + n = s.cloneNode(false); + n.setAttribute("wrap", val); + s.parentNode.replaceChild(n, s); + n.value = v; + } +} + +function toggleWordWrap(elm) { + if (elm.checked) + setWrap('soft'); + else + setWrap('off'); +} + +var wHeight=0, wWidth=0, owHeight=0, owWidth=0; + +function resizeInputs() { + var el = document.getElementById('htmlSource'); + + if (!tinymce.isIE) { + wHeight = self.innerHeight - 65; + wWidth = self.innerWidth - 16; + } else { + wHeight = document.body.clientHeight - 70; + wWidth = document.body.clientWidth - 16; + } + + el.style.height = Math.abs(wHeight) + 'px'; + el.style.width = Math.abs(wWidth) + 'px'; +} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js new file mode 100644 index 0000000..5cee9ed --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js @@ -0,0 +1,72 @@ +tinyMCEPopup.requireLangPack(); + +function init() { + var ed, tcont; + + tinyMCEPopup.resizeToInnerSize(); + ed = tinyMCEPopup.editor; + + // Give FF some time + window.setTimeout(insertHelpIFrame, 10); + + tcont = document.getElementById('plugintablecontainer'); + document.getElementById('plugins_tab').style.display = 'none'; + + var html = ""; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + + tinymce.each(ed.plugins, function(p, n) { + var info; + + if (!p.getInfo) + return; + + html += ''; + + info = p.getInfo(); + + if (info.infourl != null && info.infourl != '') + html += ''; + else + html += ''; + + if (info.authorurl != null && info.authorurl != '') + html += ''; + else + html += ''; + + html += ''; + html += ''; + + document.getElementById('plugins_tab').style.display = ''; + + }); + + html += ''; + html += '
' + ed.getLang('advanced_dlg.about_plugin') + '' + ed.getLang('advanced_dlg.about_author') + '' + ed.getLang('advanced_dlg.about_version') + '
' + info.longname + '' + info.longname + '' + info.author + '' + info.author + '' + info.version + '
'; + + tcont.innerHTML = html; + + tinyMCEPopup.dom.get('version').innerHTML = tinymce.majorVersion + "." + tinymce.minorVersion; + tinyMCEPopup.dom.get('date').innerHTML = tinymce.releaseDate; +} + +function insertHelpIFrame() { + var html; + + if (tinyMCEPopup.getParam('docs_url')) { + html = ''; + document.getElementById('iframecontainer').innerHTML = html; + document.getElementById('help_tab').style.display = 'block'; + } +} + +tinyMCEPopup.onInit.add(init); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js new file mode 100644 index 0000000..7fe7810 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js @@ -0,0 +1,37 @@ +tinyMCEPopup.requireLangPack(); + +var AnchorDialog = { + init : function(ed) { + var action, elm, f = document.forms[0]; + + this.editor = ed; + elm = ed.dom.getParent(ed.selection.getNode(), 'A'); + v = ed.dom.getAttrib(elm, 'name'); + + if (v) { + this.action = 'update'; + f.anchorName.value = v; + } + + f.insert.value = ed.getLang(elm ? 'update' : 'insert'); + }, + + update : function() { + var ed = this.editor, elm, name = document.forms[0].anchorName.value; + + tinyMCEPopup.restoreSelection(); + + if (this.action != 'update') + ed.selection.collapse(1); + + elm = ed.dom.getParent(ed.selection.getNode(), 'A'); + if (elm) + elm.name = name; + else + ed.execCommand('mceInsertContent', 0, ed.dom.createHTML('a', {name : name, 'class' : 'mceItemAnchor'}, '')); + + tinyMCEPopup.close(); + } +}; + +tinyMCEPopup.onInit.add(AnchorDialog.init, AnchorDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js new file mode 100644 index 0000000..8c5aea1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js @@ -0,0 +1,335 @@ +/** + * charmap.js + * + * Copyright 2009, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://tinymce.moxiecode.com/license + * Contributing: http://tinymce.moxiecode.com/contributing + */ + +tinyMCEPopup.requireLangPack(); + +var charmap = [ + [' ', ' ', true, 'no-break space'], + ['&', '&', true, 'ampersand'], + ['"', '"', true, 'quotation mark'], +// finance + ['¢', '¢', true, 'cent sign'], + ['€', '€', true, 'euro sign'], + ['£', '£', true, 'pound sign'], + ['¥', '¥', true, 'yen sign'], +// signs + ['©', '©', true, 'copyright sign'], + ['®', '®', true, 'registered sign'], + ['™', '™', true, 'trade mark sign'], + ['‰', '‰', true, 'per mille sign'], + ['µ', 'µ', true, 'micro sign'], + ['·', '·', true, 'middle dot'], + ['•', '•', true, 'bullet'], + ['…', '…', true, 'three dot leader'], + ['′', '′', true, 'minutes / feet'], + ['″', '″', true, 'seconds / inches'], + ['§', '§', true, 'section sign'], + ['¶', '¶', true, 'paragraph sign'], + ['ß', 'ß', true, 'sharp s / ess-zed'], +// quotations + ['‹', '‹', true, 'single left-pointing angle quotation mark'], + ['›', '›', true, 'single right-pointing angle quotation mark'], + ['«', '«', true, 'left pointing guillemet'], + ['»', '»', true, 'right pointing guillemet'], + ['‘', '‘', true, 'left single quotation mark'], + ['’', '’', true, 'right single quotation mark'], + ['“', '“', true, 'left double quotation mark'], + ['”', '”', true, 'right double quotation mark'], + ['‚', '‚', true, 'single low-9 quotation mark'], + ['„', '„', true, 'double low-9 quotation mark'], + ['<', '<', true, 'less-than sign'], + ['>', '>', true, 'greater-than sign'], + ['≤', '≤', true, 'less-than or equal to'], + ['≥', '≥', true, 'greater-than or equal to'], + ['–', '–', true, 'en dash'], + ['—', '—', true, 'em dash'], + ['¯', '¯', true, 'macron'], + ['‾', '‾', true, 'overline'], + ['¤', '¤', true, 'currency sign'], + ['¦', '¦', true, 'broken bar'], + ['¨', '¨', true, 'diaeresis'], + ['¡', '¡', true, 'inverted exclamation mark'], + ['¿', '¿', true, 'turned question mark'], + ['ˆ', 'ˆ', true, 'circumflex accent'], + ['˜', '˜', true, 'small tilde'], + ['°', '°', true, 'degree sign'], + ['−', '−', true, 'minus sign'], + ['±', '±', true, 'plus-minus sign'], + ['÷', '÷', true, 'division sign'], + ['⁄', '⁄', true, 'fraction slash'], + ['×', '×', true, 'multiplication sign'], + ['¹', '¹', true, 'superscript one'], + ['²', '²', true, 'superscript two'], + ['³', '³', true, 'superscript three'], + ['¼', '¼', true, 'fraction one quarter'], + ['½', '½', true, 'fraction one half'], + ['¾', '¾', true, 'fraction three quarters'], +// math / logical + ['ƒ', 'ƒ', true, 'function / florin'], + ['∫', '∫', true, 'integral'], + ['∑', '∑', true, 'n-ary sumation'], + ['∞', '∞', true, 'infinity'], + ['√', '√', true, 'square root'], + ['∼', '∼', false,'similar to'], + ['≅', '≅', false,'approximately equal to'], + ['≈', '≈', true, 'almost equal to'], + ['≠', '≠', true, 'not equal to'], + ['≡', '≡', true, 'identical to'], + ['∈', '∈', false,'element of'], + ['∉', '∉', false,'not an element of'], + ['∋', '∋', false,'contains as member'], + ['∏', '∏', true, 'n-ary product'], + ['∧', '∧', false,'logical and'], + ['∨', '∨', false,'logical or'], + ['¬', '¬', true, 'not sign'], + ['∩', '∩', true, 'intersection'], + ['∪', '∪', false,'union'], + ['∂', '∂', true, 'partial differential'], + ['∀', '∀', false,'for all'], + ['∃', '∃', false,'there exists'], + ['∅', '∅', false,'diameter'], + ['∇', '∇', false,'backward difference'], + ['∗', '∗', false,'asterisk operator'], + ['∝', '∝', false,'proportional to'], + ['∠', '∠', false,'angle'], +// undefined + ['´', '´', true, 'acute accent'], + ['¸', '¸', true, 'cedilla'], + ['ª', 'ª', true, 'feminine ordinal indicator'], + ['º', 'º', true, 'masculine ordinal indicator'], + ['†', '†', true, 'dagger'], + ['‡', '‡', true, 'double dagger'], +// alphabetical special chars + ['À', 'À', true, 'A - grave'], + ['Á', 'Á', true, 'A - acute'], + ['Â', 'Â', true, 'A - circumflex'], + ['Ã', 'Ã', true, 'A - tilde'], + ['Ä', 'Ä', true, 'A - diaeresis'], + ['Å', 'Å', true, 'A - ring above'], + ['Æ', 'Æ', true, 'ligature AE'], + ['Ç', 'Ç', true, 'C - cedilla'], + ['È', 'È', true, 'E - grave'], + ['É', 'É', true, 'E - acute'], + ['Ê', 'Ê', true, 'E - circumflex'], + ['Ë', 'Ë', true, 'E - diaeresis'], + ['Ì', 'Ì', true, 'I - grave'], + ['Í', 'Í', true, 'I - acute'], + ['Î', 'Î', true, 'I - circumflex'], + ['Ï', 'Ï', true, 'I - diaeresis'], + ['Ð', 'Ð', true, 'ETH'], + ['Ñ', 'Ñ', true, 'N - tilde'], + ['Ò', 'Ò', true, 'O - grave'], + ['Ó', 'Ó', true, 'O - acute'], + ['Ô', 'Ô', true, 'O - circumflex'], + ['Õ', 'Õ', true, 'O - tilde'], + ['Ö', 'Ö', true, 'O - diaeresis'], + ['Ø', 'Ø', true, 'O - slash'], + ['Œ', 'Œ', true, 'ligature OE'], + ['Š', 'Š', true, 'S - caron'], + ['Ù', 'Ù', true, 'U - grave'], + ['Ú', 'Ú', true, 'U - acute'], + ['Û', 'Û', true, 'U - circumflex'], + ['Ü', 'Ü', true, 'U - diaeresis'], + ['Ý', 'Ý', true, 'Y - acute'], + ['Ÿ', 'Ÿ', true, 'Y - diaeresis'], + ['Þ', 'Þ', true, 'THORN'], + ['à', 'à', true, 'a - grave'], + ['á', 'á', true, 'a - acute'], + ['â', 'â', true, 'a - circumflex'], + ['ã', 'ã', true, 'a - tilde'], + ['ä', 'ä', true, 'a - diaeresis'], + ['å', 'å', true, 'a - ring above'], + ['æ', 'æ', true, 'ligature ae'], + ['ç', 'ç', true, 'c - cedilla'], + ['è', 'è', true, 'e - grave'], + ['é', 'é', true, 'e - acute'], + ['ê', 'ê', true, 'e - circumflex'], + ['ë', 'ë', true, 'e - diaeresis'], + ['ì', 'ì', true, 'i - grave'], + ['í', 'í', true, 'i - acute'], + ['î', 'î', true, 'i - circumflex'], + ['ï', 'ï', true, 'i - diaeresis'], + ['ð', 'ð', true, 'eth'], + ['ñ', 'ñ', true, 'n - tilde'], + ['ò', 'ò', true, 'o - grave'], + ['ó', 'ó', true, 'o - acute'], + ['ô', 'ô', true, 'o - circumflex'], + ['õ', 'õ', true, 'o - tilde'], + ['ö', 'ö', true, 'o - diaeresis'], + ['ø', 'ø', true, 'o slash'], + ['œ', 'œ', true, 'ligature oe'], + ['š', 'š', true, 's - caron'], + ['ù', 'ù', true, 'u - grave'], + ['ú', 'ú', true, 'u - acute'], + ['û', 'û', true, 'u - circumflex'], + ['ü', 'ü', true, 'u - diaeresis'], + ['ý', 'ý', true, 'y - acute'], + ['þ', 'þ', true, 'thorn'], + ['ÿ', 'ÿ', true, 'y - diaeresis'], + ['Α', 'Α', true, 'Alpha'], + ['Β', 'Β', true, 'Beta'], + ['Γ', 'Γ', true, 'Gamma'], + ['Δ', 'Δ', true, 'Delta'], + ['Ε', 'Ε', true, 'Epsilon'], + ['Ζ', 'Ζ', true, 'Zeta'], + ['Η', 'Η', true, 'Eta'], + ['Θ', 'Θ', true, 'Theta'], + ['Ι', 'Ι', true, 'Iota'], + ['Κ', 'Κ', true, 'Kappa'], + ['Λ', 'Λ', true, 'Lambda'], + ['Μ', 'Μ', true, 'Mu'], + ['Ν', 'Ν', true, 'Nu'], + ['Ξ', 'Ξ', true, 'Xi'], + ['Ο', 'Ο', true, 'Omicron'], + ['Π', 'Π', true, 'Pi'], + ['Ρ', 'Ρ', true, 'Rho'], + ['Σ', 'Σ', true, 'Sigma'], + ['Τ', 'Τ', true, 'Tau'], + ['Υ', 'Υ', true, 'Upsilon'], + ['Φ', 'Φ', true, 'Phi'], + ['Χ', 'Χ', true, 'Chi'], + ['Ψ', 'Ψ', true, 'Psi'], + ['Ω', 'Ω', true, 'Omega'], + ['α', 'α', true, 'alpha'], + ['β', 'β', true, 'beta'], + ['γ', 'γ', true, 'gamma'], + ['δ', 'δ', true, 'delta'], + ['ε', 'ε', true, 'epsilon'], + ['ζ', 'ζ', true, 'zeta'], + ['η', 'η', true, 'eta'], + ['θ', 'θ', true, 'theta'], + ['ι', 'ι', true, 'iota'], + ['κ', 'κ', true, 'kappa'], + ['λ', 'λ', true, 'lambda'], + ['μ', 'μ', true, 'mu'], + ['ν', 'ν', true, 'nu'], + ['ξ', 'ξ', true, 'xi'], + ['ο', 'ο', true, 'omicron'], + ['π', 'π', true, 'pi'], + ['ρ', 'ρ', true, 'rho'], + ['ς', 'ς', true, 'final sigma'], + ['σ', 'σ', true, 'sigma'], + ['τ', 'τ', true, 'tau'], + ['υ', 'υ', true, 'upsilon'], + ['φ', 'φ', true, 'phi'], + ['χ', 'χ', true, 'chi'], + ['ψ', 'ψ', true, 'psi'], + ['ω', 'ω', true, 'omega'], +// symbols + ['ℵ', 'ℵ', false,'alef symbol'], + ['ϖ', 'ϖ', false,'pi symbol'], + ['ℜ', 'ℜ', false,'real part symbol'], + ['ϑ','ϑ', false,'theta symbol'], + ['ϒ', 'ϒ', false,'upsilon - hook symbol'], + ['℘', '℘', false,'Weierstrass p'], + ['ℑ', 'ℑ', false,'imaginary part'], +// arrows + ['←', '←', true, 'leftwards arrow'], + ['↑', '↑', true, 'upwards arrow'], + ['→', '→', true, 'rightwards arrow'], + ['↓', '↓', true, 'downwards arrow'], + ['↔', '↔', true, 'left right arrow'], + ['↵', '↵', false,'carriage return'], + ['⇐', '⇐', false,'leftwards double arrow'], + ['⇑', '⇑', false,'upwards double arrow'], + ['⇒', '⇒', false,'rightwards double arrow'], + ['⇓', '⇓', false,'downwards double arrow'], + ['⇔', '⇔', false,'left right double arrow'], + ['∴', '∴', false,'therefore'], + ['⊂', '⊂', false,'subset of'], + ['⊃', '⊃', false,'superset of'], + ['⊄', '⊄', false,'not a subset of'], + ['⊆', '⊆', false,'subset of or equal to'], + ['⊇', '⊇', false,'superset of or equal to'], + ['⊕', '⊕', false,'circled plus'], + ['⊗', '⊗', false,'circled times'], + ['⊥', '⊥', false,'perpendicular'], + ['⋅', '⋅', false,'dot operator'], + ['⌈', '⌈', false,'left ceiling'], + ['⌉', '⌉', false,'right ceiling'], + ['⌊', '⌊', false,'left floor'], + ['⌋', '⌋', false,'right floor'], + ['⟨', '〈', false,'left-pointing angle bracket'], + ['⟩', '〉', false,'right-pointing angle bracket'], + ['◊', '◊', true,'lozenge'], + ['♠', '♠', false,'black spade suit'], + ['♣', '♣', true, 'black club suit'], + ['♥', '♥', true, 'black heart suit'], + ['♦', '♦', true, 'black diamond suit'], + [' ', ' ', false,'en space'], + [' ', ' ', false,'em space'], + [' ', ' ', false,'thin space'], + ['‌', '‌', false,'zero width non-joiner'], + ['‍', '‍', false,'zero width joiner'], + ['‎', '‎', false,'left-to-right mark'], + ['‏', '‏', false,'right-to-left mark'], + ['­', '­', false,'soft hyphen'] +]; + +tinyMCEPopup.onInit.add(function() { + tinyMCEPopup.dom.setHTML('charmapView', renderCharMapHTML()); +}); + +function renderCharMapHTML() { + var charsPerRow = 20, tdWidth=20, tdHeight=20, i; + var html = ''; + var cols=-1; + + for (i=0; i' + + '' + + charmap[i][1] + + ''; + if ((cols+1) % charsPerRow == 0) + html += ''; + } + } + + if (cols % charsPerRow > 0) { + var padd = charsPerRow - (cols % charsPerRow); + for (var i=0; i '; + } + + html += '
'; + + return html; +} + +function insertChar(chr) { + tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';'); + + // Refocus in window + if (tinyMCEPopup.isWindow) + window.focus(); + + tinyMCEPopup.editor.focus(); + tinyMCEPopup.close(); +} + +function previewChar(codeA, codeB, codeN) { + var elmA = document.getElementById('codeA'); + var elmB = document.getElementById('codeB'); + var elmV = document.getElementById('codeV'); + var elmN = document.getElementById('codeN'); + + if (codeA=='#160;') { + elmV.innerHTML = '__'; + } else { + elmV.innerHTML = '&' + codeA; + } + + elmB.innerHTML = '&' + codeA; + elmA.innerHTML = '&' + codeB; + elmN.innerHTML = codeN; +} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js new file mode 100644 index 0000000..fd9700f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js @@ -0,0 +1,253 @@ +tinyMCEPopup.requireLangPack(); + +var detail = 50, strhex = "0123456789abcdef", i, isMouseDown = false, isMouseOver = false; + +var colors = [ + "#000000","#000033","#000066","#000099","#0000cc","#0000ff","#330000","#330033", + "#330066","#330099","#3300cc","#3300ff","#660000","#660033","#660066","#660099", + "#6600cc","#6600ff","#990000","#990033","#990066","#990099","#9900cc","#9900ff", + "#cc0000","#cc0033","#cc0066","#cc0099","#cc00cc","#cc00ff","#ff0000","#ff0033", + "#ff0066","#ff0099","#ff00cc","#ff00ff","#003300","#003333","#003366","#003399", + "#0033cc","#0033ff","#333300","#333333","#333366","#333399","#3333cc","#3333ff", + "#663300","#663333","#663366","#663399","#6633cc","#6633ff","#993300","#993333", + "#993366","#993399","#9933cc","#9933ff","#cc3300","#cc3333","#cc3366","#cc3399", + "#cc33cc","#cc33ff","#ff3300","#ff3333","#ff3366","#ff3399","#ff33cc","#ff33ff", + "#006600","#006633","#006666","#006699","#0066cc","#0066ff","#336600","#336633", + "#336666","#336699","#3366cc","#3366ff","#666600","#666633","#666666","#666699", + "#6666cc","#6666ff","#996600","#996633","#996666","#996699","#9966cc","#9966ff", + "#cc6600","#cc6633","#cc6666","#cc6699","#cc66cc","#cc66ff","#ff6600","#ff6633", + "#ff6666","#ff6699","#ff66cc","#ff66ff","#009900","#009933","#009966","#009999", + "#0099cc","#0099ff","#339900","#339933","#339966","#339999","#3399cc","#3399ff", + "#669900","#669933","#669966","#669999","#6699cc","#6699ff","#999900","#999933", + "#999966","#999999","#9999cc","#9999ff","#cc9900","#cc9933","#cc9966","#cc9999", + "#cc99cc","#cc99ff","#ff9900","#ff9933","#ff9966","#ff9999","#ff99cc","#ff99ff", + "#00cc00","#00cc33","#00cc66","#00cc99","#00cccc","#00ccff","#33cc00","#33cc33", + "#33cc66","#33cc99","#33cccc","#33ccff","#66cc00","#66cc33","#66cc66","#66cc99", + "#66cccc","#66ccff","#99cc00","#99cc33","#99cc66","#99cc99","#99cccc","#99ccff", + "#cccc00","#cccc33","#cccc66","#cccc99","#cccccc","#ccccff","#ffcc00","#ffcc33", + "#ffcc66","#ffcc99","#ffcccc","#ffccff","#00ff00","#00ff33","#00ff66","#00ff99", + "#00ffcc","#00ffff","#33ff00","#33ff33","#33ff66","#33ff99","#33ffcc","#33ffff", + "#66ff00","#66ff33","#66ff66","#66ff99","#66ffcc","#66ffff","#99ff00","#99ff33", + "#99ff66","#99ff99","#99ffcc","#99ffff","#ccff00","#ccff33","#ccff66","#ccff99", + "#ccffcc","#ccffff","#ffff00","#ffff33","#ffff66","#ffff99","#ffffcc","#ffffff" +]; + +var named = { + '#F0F8FF':'AliceBlue','#FAEBD7':'AntiqueWhite','#00FFFF':'Aqua','#7FFFD4':'Aquamarine','#F0FFFF':'Azure','#F5F5DC':'Beige', + '#FFE4C4':'Bisque','#000000':'Black','#FFEBCD':'BlanchedAlmond','#0000FF':'Blue','#8A2BE2':'BlueViolet','#A52A2A':'Brown', + '#DEB887':'BurlyWood','#5F9EA0':'CadetBlue','#7FFF00':'Chartreuse','#D2691E':'Chocolate','#FF7F50':'Coral','#6495ED':'CornflowerBlue', + '#FFF8DC':'Cornsilk','#DC143C':'Crimson','#00FFFF':'Cyan','#00008B':'DarkBlue','#008B8B':'DarkCyan','#B8860B':'DarkGoldenRod', + '#A9A9A9':'DarkGray','#A9A9A9':'DarkGrey','#006400':'DarkGreen','#BDB76B':'DarkKhaki','#8B008B':'DarkMagenta','#556B2F':'DarkOliveGreen', + '#FF8C00':'Darkorange','#9932CC':'DarkOrchid','#8B0000':'DarkRed','#E9967A':'DarkSalmon','#8FBC8F':'DarkSeaGreen','#483D8B':'DarkSlateBlue', + '#2F4F4F':'DarkSlateGray','#2F4F4F':'DarkSlateGrey','#00CED1':'DarkTurquoise','#9400D3':'DarkViolet','#FF1493':'DeepPink','#00BFFF':'DeepSkyBlue', + '#696969':'DimGray','#696969':'DimGrey','#1E90FF':'DodgerBlue','#B22222':'FireBrick','#FFFAF0':'FloralWhite','#228B22':'ForestGreen', + '#FF00FF':'Fuchsia','#DCDCDC':'Gainsboro','#F8F8FF':'GhostWhite','#FFD700':'Gold','#DAA520':'GoldenRod','#808080':'Gray','#808080':'Grey', + '#008000':'Green','#ADFF2F':'GreenYellow','#F0FFF0':'HoneyDew','#FF69B4':'HotPink','#CD5C5C':'IndianRed','#4B0082':'Indigo','#FFFFF0':'Ivory', + '#F0E68C':'Khaki','#E6E6FA':'Lavender','#FFF0F5':'LavenderBlush','#7CFC00':'LawnGreen','#FFFACD':'LemonChiffon','#ADD8E6':'LightBlue', + '#F08080':'LightCoral','#E0FFFF':'LightCyan','#FAFAD2':'LightGoldenRodYellow','#D3D3D3':'LightGray','#D3D3D3':'LightGrey','#90EE90':'LightGreen', + '#FFB6C1':'LightPink','#FFA07A':'LightSalmon','#20B2AA':'LightSeaGreen','#87CEFA':'LightSkyBlue','#778899':'LightSlateGray','#778899':'LightSlateGrey', + '#B0C4DE':'LightSteelBlue','#FFFFE0':'LightYellow','#00FF00':'Lime','#32CD32':'LimeGreen','#FAF0E6':'Linen','#FF00FF':'Magenta','#800000':'Maroon', + '#66CDAA':'MediumAquaMarine','#0000CD':'MediumBlue','#BA55D3':'MediumOrchid','#9370D8':'MediumPurple','#3CB371':'MediumSeaGreen','#7B68EE':'MediumSlateBlue', + '#00FA9A':'MediumSpringGreen','#48D1CC':'MediumTurquoise','#C71585':'MediumVioletRed','#191970':'MidnightBlue','#F5FFFA':'MintCream','#FFE4E1':'MistyRose','#FFE4B5':'Moccasin', + '#FFDEAD':'NavajoWhite','#000080':'Navy','#FDF5E6':'OldLace','#808000':'Olive','#6B8E23':'OliveDrab','#FFA500':'Orange','#FF4500':'OrangeRed','#DA70D6':'Orchid', + '#EEE8AA':'PaleGoldenRod','#98FB98':'PaleGreen','#AFEEEE':'PaleTurquoise','#D87093':'PaleVioletRed','#FFEFD5':'PapayaWhip','#FFDAB9':'PeachPuff', + '#CD853F':'Peru','#FFC0CB':'Pink','#DDA0DD':'Plum','#B0E0E6':'PowderBlue','#800080':'Purple','#FF0000':'Red','#BC8F8F':'RosyBrown','#4169E1':'RoyalBlue', + '#8B4513':'SaddleBrown','#FA8072':'Salmon','#F4A460':'SandyBrown','#2E8B57':'SeaGreen','#FFF5EE':'SeaShell','#A0522D':'Sienna','#C0C0C0':'Silver', + '#87CEEB':'SkyBlue','#6A5ACD':'SlateBlue','#708090':'SlateGray','#708090':'SlateGrey','#FFFAFA':'Snow','#00FF7F':'SpringGreen', + '#4682B4':'SteelBlue','#D2B48C':'Tan','#008080':'Teal','#D8BFD8':'Thistle','#FF6347':'Tomato','#40E0D0':'Turquoise','#EE82EE':'Violet', + '#F5DEB3':'Wheat','#FFFFFF':'White','#F5F5F5':'WhiteSmoke','#FFFF00':'Yellow','#9ACD32':'YellowGreen' +}; + +function init() { + var inputColor = convertRGBToHex(tinyMCEPopup.getWindowArg('input_color')); + + tinyMCEPopup.resizeToInnerSize(); + + generatePicker(); + + if (inputColor) { + changeFinalColor(inputColor); + + col = convertHexToRGB(inputColor); + + if (col) + updateLight(col.r, col.g, col.b); + } +} + +function insertAction() { + var color = document.getElementById("color").value, f = tinyMCEPopup.getWindowArg('func'); + + tinyMCEPopup.restoreSelection(); + + if (f) + f(color); + + tinyMCEPopup.close(); +} + +function showColor(color, name) { + if (name) + document.getElementById("colorname").innerHTML = name; + + document.getElementById("preview").style.backgroundColor = color; + document.getElementById("color").value = color.toLowerCase(); +} + +function convertRGBToHex(col) { + var re = new RegExp("rgb\\s*\\(\\s*([0-9]+).*,\\s*([0-9]+).*,\\s*([0-9]+).*\\)", "gi"); + + if (!col) + return col; + + var rgb = col.replace(re, "$1,$2,$3").split(','); + if (rgb.length == 3) { + r = parseInt(rgb[0]).toString(16); + g = parseInt(rgb[1]).toString(16); + b = parseInt(rgb[2]).toString(16); + + r = r.length == 1 ? '0' + r : r; + g = g.length == 1 ? '0' + g : g; + b = b.length == 1 ? '0' + b : b; + + return "#" + r + g + b; + } + + return col; +} + +function convertHexToRGB(col) { + if (col.indexOf('#') != -1) { + col = col.replace(new RegExp('[^0-9A-F]', 'gi'), ''); + + r = parseInt(col.substring(0, 2), 16); + g = parseInt(col.substring(2, 4), 16); + b = parseInt(col.substring(4, 6), 16); + + return {r : r, g : g, b : b}; + } + + return null; +} + +function generatePicker() { + var el = document.getElementById('light'), h = '', i; + + for (i = 0; i < detail; i++){ + h += '
'; + } + + el.innerHTML = h; +} + +function generateWebColors() { + var el = document.getElementById('webcolors'), h = '', i; + + if (el.className == 'generated') + return; + + h += '' + + ''; + + for (i=0; i' + + '' + + ''; + if ((i+1) % 18 == 0) + h += ''; + } + + h += '
'; + + el.innerHTML = h; + el.className = 'generated'; +} + +function generateNamedColors() { + var el = document.getElementById('namedcolors'), h = '', n, v, i = 0; + + if (el.className == 'generated') + return; + + for (n in named) { + v = named[n]; + h += '' + } + + el.innerHTML = h; + el.className = 'generated'; +} + +function dechex(n) { + return strhex.charAt(Math.floor(n / 16)) + strhex.charAt(n % 16); +} + +function computeColor(e) { + var x, y, partWidth, partDetail, imHeight, r, g, b, coef, i, finalCoef, finalR, finalG, finalB; + + x = e.offsetX ? e.offsetX : (e.target ? e.clientX - e.target.x : 0); + y = e.offsetY ? e.offsetY : (e.target ? e.clientY - e.target.y : 0); + + partWidth = document.getElementById('colors').width / 6; + partDetail = detail / 2; + imHeight = document.getElementById('colors').height; + + r = (x >= 0)*(x < partWidth)*255 + (x >= partWidth)*(x < 2*partWidth)*(2*255 - x * 255 / partWidth) + (x >= 4*partWidth)*(x < 5*partWidth)*(-4*255 + x * 255 / partWidth) + (x >= 5*partWidth)*(x < 6*partWidth)*255; + g = (x >= 0)*(x < partWidth)*(x * 255 / partWidth) + (x >= partWidth)*(x < 3*partWidth)*255 + (x >= 3*partWidth)*(x < 4*partWidth)*(4*255 - x * 255 / partWidth); + b = (x >= 2*partWidth)*(x < 3*partWidth)*(-2*255 + x * 255 / partWidth) + (x >= 3*partWidth)*(x < 5*partWidth)*255 + (x >= 5*partWidth)*(x < 6*partWidth)*(6*255 - x * 255 / partWidth); + + coef = (imHeight - y) / imHeight; + r = 128 + (r - 128) * coef; + g = 128 + (g - 128) * coef; + b = 128 + (b - 128) * coef; + + changeFinalColor('#' + dechex(r) + dechex(g) + dechex(b)); + updateLight(r, g, b); +} + +function updateLight(r, g, b) { + var i, partDetail = detail / 2, finalCoef, finalR, finalG, finalB, color; + + for (i=0; i=0) && (i'); + }, + + init : function() { + var f = document.forms[0], ed = tinyMCEPopup.editor; + + // Setup browse button + document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image'); + if (isVisible('srcbrowser')) + document.getElementById('src').style.width = '180px'; + + e = ed.selection.getNode(); + + this.fillFileList('image_list', 'tinyMCEImageList'); + + if (e.nodeName == 'IMG') { + f.src.value = ed.dom.getAttrib(e, 'src'); + f.alt.value = ed.dom.getAttrib(e, 'alt'); + f.border.value = this.getAttrib(e, 'border'); + f.vspace.value = this.getAttrib(e, 'vspace'); + f.hspace.value = this.getAttrib(e, 'hspace'); + f.width.value = ed.dom.getAttrib(e, 'width'); + f.height.value = ed.dom.getAttrib(e, 'height'); + f.insert.value = ed.getLang('update'); + this.styleVal = ed.dom.getAttrib(e, 'style'); + selectByValue(f, 'image_list', f.src.value); + selectByValue(f, 'align', this.getAttrib(e, 'align')); + this.updateStyle(); + } + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + update : function() { + var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, args = {}, el; + + tinyMCEPopup.restoreSelection(); + + if (f.src.value === '') { + if (ed.selection.getNode().nodeName == 'IMG') { + ed.dom.remove(ed.selection.getNode()); + ed.execCommand('mceRepaint'); + } + + tinyMCEPopup.close(); + return; + } + + if (!ed.settings.inline_styles) { + args = tinymce.extend(args, { + vspace : nl.vspace.value, + hspace : nl.hspace.value, + border : nl.border.value, + align : getSelectValue(f, 'align') + }); + } else + args.style = this.styleVal; + + tinymce.extend(args, { + src : f.src.value, + alt : f.alt.value, + width : f.width.value, + height : f.height.value + }); + + el = ed.selection.getNode(); + + if (el && el.nodeName == 'IMG') { + ed.dom.setAttribs(el, args); + } else { + ed.execCommand('mceInsertContent', false, '', {skip_undo : 1}); + ed.dom.setAttribs('__mce_tmp', args); + ed.dom.setAttrib('__mce_tmp', 'id', ''); + ed.undoManager.add(); + } + + tinyMCEPopup.close(); + }, + + updateStyle : function() { + var dom = tinyMCEPopup.dom, st, v, f = document.forms[0]; + + if (tinyMCEPopup.editor.settings.inline_styles) { + st = tinyMCEPopup.dom.parseStyle(this.styleVal); + + // Handle align + v = getSelectValue(f, 'align'); + if (v) { + if (v == 'left' || v == 'right') { + st['float'] = v; + delete st['vertical-align']; + } else { + st['vertical-align'] = v; + delete st['float']; + } + } else { + delete st['float']; + delete st['vertical-align']; + } + + // Handle border + v = f.border.value; + if (v || v == '0') { + if (v == '0') + st['border'] = '0'; + else + st['border'] = v + 'px solid black'; + } else + delete st['border']; + + // Handle hspace + v = f.hspace.value; + if (v) { + delete st['margin']; + st['margin-left'] = v + 'px'; + st['margin-right'] = v + 'px'; + } else { + delete st['margin-left']; + delete st['margin-right']; + } + + // Handle vspace + v = f.vspace.value; + if (v) { + delete st['margin']; + st['margin-top'] = v + 'px'; + st['margin-bottom'] = v + 'px'; + } else { + delete st['margin-top']; + delete st['margin-bottom']; + } + + // Merge + st = tinyMCEPopup.dom.parseStyle(dom.serializeStyle(st), 'img'); + this.styleVal = dom.serializeStyle(st, 'img'); + } + }, + + getAttrib : function(e, at) { + var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2; + + if (ed.settings.inline_styles) { + switch (at) { + case 'align': + if (v = dom.getStyle(e, 'float')) + return v; + + if (v = dom.getStyle(e, 'vertical-align')) + return v; + + break; + + case 'hspace': + v = dom.getStyle(e, 'margin-left') + v2 = dom.getStyle(e, 'margin-right'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'vspace': + v = dom.getStyle(e, 'margin-top') + v2 = dom.getStyle(e, 'margin-bottom'); + if (v && v == v2) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + + case 'border': + v = 0; + + tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) { + sv = dom.getStyle(e, 'border-' + sv + '-width'); + + // False or not the same as prev + if (!sv || (sv != v && v !== 0)) { + v = 0; + return false; + } + + if (sv) + v = sv; + }); + + if (v) + return parseInt(v.replace(/[^0-9]/g, '')); + + break; + } + } + + if (v = dom.getAttrib(e, at)) + return v; + + return ''; + }, + + resetImageData : function() { + var f = document.forms[0]; + + f.width.value = f.height.value = ""; + }, + + updateImageData : function() { + var f = document.forms[0], t = ImageDialog; + + if (f.width.value == "") + f.width.value = t.preloadImg.width; + + if (f.height.value == "") + f.height.value = t.preloadImg.height; + }, + + getImageData : function() { + var f = document.forms[0]; + + this.preloadImg = new Image(); + this.preloadImg.onload = this.updateImageData; + this.preloadImg.onerror = this.resetImageData; + this.preloadImg.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(f.src.value); + } +}; + +ImageDialog.preInit(); +tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js new file mode 100644 index 0000000..f67a5bc --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js @@ -0,0 +1,156 @@ +tinyMCEPopup.requireLangPack(); + +var LinkDialog = { + preInit : function() { + var url; + + if (url = tinyMCEPopup.getParam("external_link_list_url")) + document.write(''); + }, + + init : function() { + var f = document.forms[0], ed = tinyMCEPopup.editor; + + // Setup browse button + document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser', 'href', 'file', 'theme_advanced_link'); + if (isVisible('hrefbrowser')) + document.getElementById('href').style.width = '180px'; + + this.fillClassList('class_list'); + this.fillFileList('link_list', 'tinyMCELinkList'); + this.fillTargetList('target_list'); + + if (e = ed.dom.getParent(ed.selection.getNode(), 'A')) { + f.href.value = ed.dom.getAttrib(e, 'href'); + f.linktitle.value = ed.dom.getAttrib(e, 'title'); + f.insert.value = ed.getLang('update'); + selectByValue(f, 'link_list', f.href.value); + selectByValue(f, 'target_list', ed.dom.getAttrib(e, 'target')); + selectByValue(f, 'class_list', ed.dom.getAttrib(e, 'class')); + } + }, + + update : function() { + var f = document.forms[0], ed = tinyMCEPopup.editor, e, b; + + tinyMCEPopup.restoreSelection(); + e = ed.dom.getParent(ed.selection.getNode(), 'A'); + + // Remove element if there is no href + if (!f.href.value) { + if (e) { + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + b = ed.selection.getBookmark(); + ed.dom.remove(e, 1); + ed.selection.moveToBookmark(b); + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + return; + } + } + + tinyMCEPopup.execCommand("mceBeginUndoLevel"); + + // Create new anchor elements + if (e == null) { + ed.getDoc().execCommand("unlink", false, null); + tinyMCEPopup.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1}); + + tinymce.each(ed.dom.select("a"), function(n) { + if (ed.dom.getAttrib(n, 'href') == '#mce_temp_url#') { + e = n; + + ed.dom.setAttribs(e, { + href : f.href.value, + title : f.linktitle.value, + target : f.target_list ? getSelectValue(f, "target_list") : null, + 'class' : f.class_list ? getSelectValue(f, "class_list") : null + }); + } + }); + } else { + ed.dom.setAttribs(e, { + href : f.href.value, + title : f.linktitle.value, + target : f.target_list ? getSelectValue(f, "target_list") : null, + 'class' : f.class_list ? getSelectValue(f, "class_list") : null + }); + } + + // Don't move caret if selection was image + if (e.childNodes.length != 1 || e.firstChild.nodeName != 'IMG') { + ed.focus(); + ed.selection.select(e); + ed.selection.collapse(0); + tinyMCEPopup.storeSelection(); + } + + tinyMCEPopup.execCommand("mceEndUndoLevel"); + tinyMCEPopup.close(); + }, + + checkPrefix : function(n) { + if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_email'))) + n.value = 'mailto:' + n.value; + + if (/^\s*www\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_external'))) + n.value = 'http://' + n.value; + }, + + fillFileList : function(id, l) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + l = window[l]; + + if (l && l.length > 0) { + lst.options[lst.options.length] = new Option('', ''); + + tinymce.each(l, function(o) { + lst.options[lst.options.length] = new Option(o[0], o[1]); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillClassList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl; + + if (v = tinyMCEPopup.getParam('theme_advanced_styles')) { + cl = []; + + tinymce.each(v.split(';'), function(v) { + var p = v.split('='); + + cl.push({'title' : p[0], 'class' : p[1]}); + }); + } else + cl = tinyMCEPopup.editor.dom.getClasses(); + + if (cl.length > 0) { + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + + tinymce.each(cl, function(o) { + lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']); + }); + } else + dom.remove(dom.getParent(id, 'tr')); + }, + + fillTargetList : function(id) { + var dom = tinyMCEPopup.dom, lst = dom.get(id), v; + + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), ''); + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_same'), '_self'); + lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_blank'), '_blank'); + + if (v = tinyMCEPopup.getParam('theme_advanced_link_targets')) { + tinymce.each(v.split(','), function(v) { + v = v.split('='); + lst.options[lst.options.length] = new Option(v[0], v[1]); + }); + } + } +}; + +LinkDialog.preInit(); +tinyMCEPopup.onInit.add(LinkDialog.init, LinkDialog); diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js new file mode 100644 index 0000000..2793286 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js @@ -0,0 +1,62 @@ +tinyMCEPopup.requireLangPack(); +tinyMCEPopup.onInit.add(onLoadInit); + +function saveContent() { + tinyMCEPopup.editor.setContent(document.getElementById('htmlSource').value, {source_view : true}); + tinyMCEPopup.close(); +} + +function onLoadInit() { + tinyMCEPopup.resizeToInnerSize(); + + // Remove Gecko spellchecking + if (tinymce.isGecko) + document.body.spellcheck = tinyMCEPopup.editor.getParam("gecko_spellcheck"); + + document.getElementById('htmlSource').value = tinyMCEPopup.editor.getContent({source_view : true}); + + if (tinyMCEPopup.editor.getParam("theme_advanced_source_editor_wrap", true)) { + setWrap('soft'); + document.getElementById('wraped').checked = true; + } + + resizeInputs(); +} + +function setWrap(val) { + var v, n, s = document.getElementById('htmlSource'); + + s.wrap = val; + + if (!tinymce.isIE) { + v = s.value; + n = s.cloneNode(false); + n.setAttribute("wrap", val); + s.parentNode.replaceChild(n, s); + n.value = v; + } +} + +function toggleWordWrap(elm) { + if (elm.checked) + setWrap('soft'); + else + setWrap('off'); +} + +var wHeight=0, wWidth=0, owHeight=0, owWidth=0; + +function resizeInputs() { + var el = document.getElementById('htmlSource'); + + if (!tinymce.isIE) { + wHeight = self.innerHeight - 65; + wWidth = self.innerWidth - 16; + } else { + wHeight = document.body.clientHeight - 70; + wWidth = document.body.clientWidth - 16; + } + + el.style.height = Math.abs(wHeight) + 'px'; + el.style.width = Math.abs(wWidth) + 'px'; +} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/all-wcprops new file mode 100644 index 0000000..6809b34 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/all-wcprops @@ -0,0 +1,41 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs +END +fr.js +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr.js +END +de.js +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs/de.js +END +en_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js +END +fr_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr_dlg.js +END +de_dlg.js +K 25 +svn:wc:ra_dav:version-url +V 98 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs/de_dlg.js +END +en.js +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/entries b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/entries new file mode 100644 index 0000000..a672c85 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/entries @@ -0,0 +1,232 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/langs +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +fr.js +file + + + + +2010-06-04T12:51:47.135615Z +0733b6edef946b97f37e58f2df7bf35d +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2294 + +de.js +file + + + + +2010-06-04T12:51:47.135615Z +fc100cb77ddea75954f070c1eea99a16 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2265 + +en_dlg.js +file + + + + +2010-06-04T12:51:47.135615Z +c855d4c47b333fb42727cc5634d72d49 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1724 + +fr_dlg.js +file + + + + +2010-06-04T12:51:47.135615Z +d752e3d12d44fd1a12a10ff414f6db4a +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +2032 + +de_dlg.js +file + + + + +2010-06-04T12:51:47.135615Z +82e2515a5fcee84b7cc86ea84ebdc9fb +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1861 + +en.js +file + + + + +2010-06-04T12:51:47.135615Z +91c93bcdb9bad88b46b0f9be597e4dab +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1896 + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de.js.svn-base new file mode 100644 index 0000000..321e787 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de.js.svn-base @@ -0,0 +1,63 @@ +tinyMCE.addI18n('de.advanced',{ +style_select:"Format", +font_size:"Schriftgr\u00F6\u00DFe", +fontdefault:"Schriftart", +block:"Vorlage", +paragraph:"Absatz", +div:"Zusammenh\u00E4ngender Bereich", +address:"Adresse", +pre:"Rohdaten", +h1:"\u00DCberschrift 1", +h2:"\u00DCberschrift 2", +h3:"\u00DCberschrift 3", +h4:"\u00DCberschrift 4", +h5:"\u00DCberschrift 5", +h6:"\u00DCberschrift 6", +blockquote:"Zitatblock", +code:"Code", +samp:"Beispiel", +dt:"Definitionsbegriff", +dd:"Definitionsbeschreibung", +bold_desc:"Fett (Strg+B)", +italic_desc:"Kursiv (Strg+I)", +underline_desc:"Unterstrichen (Strg+U)", +striketrough_desc:"Durchgestrichen", +justifyleft_desc:"Links ausgerichtet", +justifycenter_desc:"Mittig ausgerichtet", +justifyright_desc:"Rechts ausgerichtet", +justifyfull_desc:"Blocksatz", +bullist_desc:"Unsortierte Liste", +numlist_desc:"Sortierte Liste", +outdent_desc:"Ausr\u00FCcken", +indent_desc:"Einr\u00FCcken", +undo_desc:"R\u00FCckg\u00E4ngig (Strg+Z)", +redo_desc:"Wiederholen (Strg+Y)", +link_desc:"Link einf\u00FCgen/ver\u00E4ndern", +unlink_desc:"Link entfernen", +image_desc:"Bild einf\u00FCgen/ver\u00E4ndern", +cleanup_desc:"Quellcode aufr\u00E4umen", +code_desc:"HTML-Quellcode bearbeiten", +sub_desc:"Tiefgestellt", +sup_desc:"Hochgestellt", +hr_desc:"Trennlinie einf\u00FCgen", +removeformat_desc:"Formatierungen zur\u00FCcksetzen", +custom1_desc:"Benutzerdefinierte Beschreibung", +forecolor_desc:"Textfarbe", +backcolor_desc:"Hintergrundfarbe", +charmap_desc:"Sonderzeichen einf\u00FCgen", +visualaid_desc:"Hilfslinien und unsichtbare Elemente ein-/ausblenden", +anchor_desc:"Anker einf\u00FCgen/ver\u00E4ndern", +cut_desc:"Ausschneiden", +copy_desc:"Kopieren", +paste_desc:"Einf\u00FCgen", +image_props_desc:"Bildeigenschaften", +newdocument_desc:"Neues Dokument", +help_desc:"Hilfe", +blockquote_desc:"Zitatblock", +clipboard_msg:"Kopieren, Ausschneiden und Einf\u00FCgen sind im Mozilla Firefox nicht m\u00F6glich.\r\nWollen Sie mehr \u00FCber dieses Problem erfahren?", +path:"Pfad", +newdocument:"Wollen Sie wirklich den ganzen Inhalt l\u00F6schen?", +toolbar_focus:"Zur Werkzeugleiste springen: Alt+Q; Zum Editor springen: Alt-Z; Zum Elementpfad springen: Alt-X", +more_colors:"Weitere Farben", +anchor_delta_width:"13" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de_dlg.js.svn-base new file mode 100644 index 0000000..353b05e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/de_dlg.js.svn-base @@ -0,0 +1,51 @@ +tinyMCE.addI18n('de.advanced_dlg',{ +about_title:"\u00DCber TinyMCE", +about_general:"\u00DCber\u2026", +about_help:"Hilfe", +about_license:"Lizenzbedingungen", +about_plugins:"Plugins", +about_plugin:"Plugin", +about_author:"Urheber", +about_version:"Version", +about_loaded:"Geladene Plugins", +anchor_title:"Anker einf\u00FCgen/ver\u00E4ndern", +anchor_name:"Name des Ankers", +code_title:"HTML-Quellcode bearbeiten", +code_wordwrap:"Automatischer Zeilenumbruch", +colorpicker_title:"Farbe", +colorpicker_picker_tab:"Farbwahl", +colorpicker_picker_title:"Farbwahl", +colorpicker_palette_tab:"Palette", +colorpicker_palette_title:"Farbpalette", +colorpicker_named_tab:"Benannte Farben", +colorpicker_named_title:"Benannte Farben", +colorpicker_color:"Farbe:", +colorpicker_name:"Name:", +charmap_title:"Sonderzeichen", +image_title:"Bild einf\u00FCgen/bearbeiten", +image_src:"Adresse", +image_alt:"Alternativtext", +image_list:"Bilderliste", +image_border:"Rahmen", +image_dimensions:"Ausma\u00DFe", +image_vspace:"Vertikaler Abstand", +image_hspace:"Horizontaler Abstand", +image_align:"Ausrichtung", +image_align_baseline:"Zeile", +image_align_top:"Oben", +image_align_middle:"Mittig", +image_align_bottom:"Unten", +image_align_texttop:"Oben im Text", +image_align_textbottom:"Unten im Text", +image_align_left:"Links", +image_align_right:"Rechts", +link_title:"Link einf\u00FCgen/bearbeiten", +link_url:"Adresse", +link_target:"Fenster", +link_target_same:"Im selben Fenster \u00F6ffnen", +link_target_blank:"Neues Fenster \u00F6ffnen", +link_titlefield:"Titel", +link_is_email:"Diese Adresse scheint eine E-Mail-Adresse zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte mailto: voranstellen?", +link_is_external:"Diese Adresse scheint ein externer Link zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte http:// voranstellen?", +link_list:"Linkliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en.js.svn-base new file mode 100644 index 0000000..69694b1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en.js.svn-base @@ -0,0 +1,62 @@ +tinyMCE.addI18n('en.advanced',{ +style_select:"Styles", +font_size:"Font size", +fontdefault:"Font family", +block:"Format", +paragraph:"Paragraph", +div:"Div", +address:"Address", +pre:"Preformatted", +h1:"Heading 1", +h2:"Heading 2", +h3:"Heading 3", +h4:"Heading 4", +h5:"Heading 5", +h6:"Heading 6", +blockquote:"Blockquote", +code:"Code", +samp:"Code sample", +dt:"Definition term ", +dd:"Definition description", +bold_desc:"Bold (Ctrl+B)", +italic_desc:"Italic (Ctrl+I)", +underline_desc:"Underline (Ctrl+U)", +striketrough_desc:"Strikethrough", +justifyleft_desc:"Align left", +justifycenter_desc:"Align center", +justifyright_desc:"Align right", +justifyfull_desc:"Align full", +bullist_desc:"Unordered list", +numlist_desc:"Ordered list", +outdent_desc:"Outdent", +indent_desc:"Indent", +undo_desc:"Undo (Ctrl+Z)", +redo_desc:"Redo (Ctrl+Y)", +link_desc:"Insert/edit link", +unlink_desc:"Unlink", +image_desc:"Insert/edit image", +cleanup_desc:"Cleanup messy code", +code_desc:"Edit HTML Source", +sub_desc:"Subscript", +sup_desc:"Superscript", +hr_desc:"Insert horizontal ruler", +removeformat_desc:"Remove formatting", +custom1_desc:"Your custom description here", +forecolor_desc:"Select text color", +backcolor_desc:"Select background color", +charmap_desc:"Insert custom character", +visualaid_desc:"Toggle guidelines/invisible elements", +anchor_desc:"Insert/edit anchor", +cut_desc:"Cut", +copy_desc:"Copy", +paste_desc:"Paste", +image_props_desc:"Image properties", +newdocument_desc:"New document", +help_desc:"Help", +blockquote_desc:"Blockquote", +clipboard_msg:"Copy/Cut/Paste is not available in Mozilla and Firefox.\r\nDo you want more information about this issue?", +path:"Path", +newdocument:"Are you sure you want clear all contents?", +toolbar_focus:"Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X", +more_colors:"More colors" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en_dlg.js.svn-base new file mode 100644 index 0000000..9d124d7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/en_dlg.js.svn-base @@ -0,0 +1,51 @@ +tinyMCE.addI18n('en.advanced_dlg',{ +about_title:"About TinyMCE", +about_general:"About", +about_help:"Help", +about_license:"License", +about_plugins:"Plugins", +about_plugin:"Plugin", +about_author:"Author", +about_version:"Version", +about_loaded:"Loaded plugins", +anchor_title:"Insert/edit anchor", +anchor_name:"Anchor name", +code_title:"HTML Source Editor", +code_wordwrap:"Word wrap", +colorpicker_title:"Select a color", +colorpicker_picker_tab:"Picker", +colorpicker_picker_title:"Color picker", +colorpicker_palette_tab:"Palette", +colorpicker_palette_title:"Palette colors", +colorpicker_named_tab:"Named", +colorpicker_named_title:"Named colors", +colorpicker_color:"Color:", +colorpicker_name:"Name:", +charmap_title:"Select custom character", +image_title:"Insert/edit image", +image_src:"Image URL", +image_alt:"Image description", +image_list:"Image list", +image_border:"Border", +image_dimensions:"Dimensions", +image_vspace:"Vertical space", +image_hspace:"Horizontal space", +image_align:"Alignment", +image_align_baseline:"Baseline", +image_align_top:"Top", +image_align_middle:"Middle", +image_align_bottom:"Bottom", +image_align_texttop:"Text top", +image_align_textbottom:"Text bottom", +image_align_left:"Left", +image_align_right:"Right", +link_title:"Insert/edit link", +link_url:"Link URL", +link_target:"Target", +link_target_same:"Open link in the same window", +link_target_blank:"Open link in a new window", +link_titlefield:"Title", +link_is_email:"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?", +link_is_external:"The URL you entered seems to external link, do you want to add the required http:// prefix?", +link_list:"Link list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr.js.svn-base new file mode 100644 index 0000000..36c974d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr.js.svn-base @@ -0,0 +1,62 @@ +tinyMCE.addI18n('fr.advanced',{ +style_select:"Styles", +font_size:"Taille police", +fontdefault:"Police", +block:"Format", +paragraph:"Paragraphe", +div:"Div", +address:"Adresse", +pre:"Pr\u00E9format\u00E9", +h1:"Titre 1", +h2:"Titre 2", +h3:"Titre 3", +h4:"Titre 4", +h5:"Titre 5", +h6:"Titre 6", +blockquote:"Bloc de citation", +code:"Code", +samp:"Exemple de code", +dt:"Terme \u00E0 d\u00E9finir", +dd:"D\u00E9finition du terme", +bold_desc:"Gras (Ctrl+B)", +italic_desc:"Italique (Ctrl+I)", +underline_desc:"Soulign\u00E9 (Ctrl+U)", +striketrough_desc:"Barr\u00E9", +justifyleft_desc:"Align\u00E9 \u00E0 gauche", +justifycenter_desc:"Centr\u00E9", +justifyright_desc:"Align\u00E9 \u00E0 droite", +justifyfull_desc:"Justifi\u00E9", +bullist_desc:"Liste \u00E0 puces", +numlist_desc:"Liste num\u00E9rot\u00E9e", +outdent_desc:"Retirer l'indentation", +indent_desc:"Indenter", +undo_desc:"Annuler (Ctrl+Z)", +redo_desc:"R\u00E9tablir (Ctrl+Y)", +link_desc:"Ins\u00E9rer / \u00E9diter le lien", +unlink_desc:"Supprimer le lien", +image_desc:"Ins\u00E9rer / \u00E9diter l'image", +cleanup_desc:"Nettoyer le code", +code_desc:"\u00C9diter le code source HTML", +sub_desc:"Indice", +sup_desc:"Exposant", +hr_desc:"Ins\u00E9rer un trait horizontal", +removeformat_desc:"Supprimer le formatage", +custom1_desc:"Votre description personnalis\u00E9e ici", +forecolor_desc:"Choisir la couleur du texte", +backcolor_desc:"Choisir la couleur de surlignage", +charmap_desc:"Ins\u00E9rer des caract\u00E8res sp\u00E9ciaux", +visualaid_desc:"Activer / d\u00E9sactiver les guides et les \u00E9l\u00E9ments invisibles", +anchor_desc:"Ins\u00E9rer / \u00E9diter une ancre", +cut_desc:"Couper", +copy_desc:"Copier", +paste_desc:"Coller", +image_props_desc:"Propri\u00E9t\u00E9s de l'image", +newdocument_desc:"Nouveau document", +help_desc:"Aide", +blockquote_desc:"Citation", +clipboard_msg:"Vous ne pouvez pas copier/couper/coller sous Mozilla et sous Firefox.\nSouhaitez-vous en apprendre davantage sur ce probl\u00E8me ?", +path:"Chemin", +newdocument:"Souhaitez-vous vraiment effacer tout le contenu du document ?", +toolbar_focus:"Atteindre les boutons de l'\u00E9diteur - Alt+Q, Aller \u00E0 l'\u00E9diteur - Alt-Z, Aller au chemin de l'\u00E9l\u00E9ment - Alt-X", +more_colors:"Plus de couleurs" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr_dlg.js.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr_dlg.js.svn-base new file mode 100644 index 0000000..c9ced49 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/.svn/text-base/fr_dlg.js.svn-base @@ -0,0 +1,51 @@ +tinyMCE.addI18n('fr.advanced_dlg',{ +about_title:"\u00C0 propos de TinyMCE", +about_general:"\u00C0 propos", +about_help:"Aide", +about_license:"Licence", +about_plugins:"Plugins", +about_plugin:"Plugin", +about_author:"Auteur", +about_version:"Version", +about_loaded:"Plugins charg\u00E9s", +anchor_title:"Ins\u00E9rer / \u00E9diter une ancre", +anchor_name:"Nom de l'ancre", +code_title:"\u00C9diteur de source HTML", +code_wordwrap:"Retour \u00E0 la ligne", +colorpicker_title:"Choisir une couleur", +colorpicker_picker_tab:"Nuancier", +colorpicker_picker_title:"Nuancier", +colorpicker_palette_tab:"Palette", +colorpicker_palette_title:"Couleurs de la palette", +colorpicker_named_tab:"Noms", +colorpicker_named_title:"Couleurs nomm\u00E9es", +colorpicker_color:"Couleur :", +colorpicker_name:"Nom :", +charmap_title:"Choisir le caract\u00E8re \u00E0 ins\u00E9rer", +image_title:"Ins\u00E9rer / \u00E9diter une image", +image_src:"URL de l'image", +image_alt:"Description de l'image", +image_list:"Liste d'images", +image_border:"Bordure", +image_dimensions:"Dimensions", +image_vspace:"Espacement vertical", +image_hspace:"Espacement horizontal", +image_align:"Alignement", +image_align_baseline:"Normal", +image_align_top:"En haut", +image_align_middle:"Au milieu", +image_align_bottom:"En bas", +image_align_texttop:"Texte en haut", +image_align_textbottom:"Texte en bas", +image_align_left:"Gauche (flottant)", +image_align_right:"Droite (flottant)", +link_title:"Ins\u00E9rer / \u00E9diter un lien", +link_url:"URL du lien", +link_target:"Cible", +link_target_same:"Ouvrir dans la m\u00EAme fen\u00EAtre", +link_target_blank:"Ouvrir dans une nouvelle fen\u00EAtre", +link_titlefield:"Titre", +link_is_email:"L'URL que vous avez saisie semble \u00EAtre une adresse e-mail, souhaitez-vous ajouter le pr\u00E9fixe \u00AB mailto: \u00BB ?", +link_is_external:"L'URL que vous avez saisie semble \u00EAtre une adresse web externe. Souhaitez-vous ajouter le pr\u00E9fixe \u00AB http:// \u00BB ?", +link_list:"Liste de liens" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de.js new file mode 100644 index 0000000..321e787 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de.js @@ -0,0 +1,63 @@ +tinyMCE.addI18n('de.advanced',{ +style_select:"Format", +font_size:"Schriftgr\u00F6\u00DFe", +fontdefault:"Schriftart", +block:"Vorlage", +paragraph:"Absatz", +div:"Zusammenh\u00E4ngender Bereich", +address:"Adresse", +pre:"Rohdaten", +h1:"\u00DCberschrift 1", +h2:"\u00DCberschrift 2", +h3:"\u00DCberschrift 3", +h4:"\u00DCberschrift 4", +h5:"\u00DCberschrift 5", +h6:"\u00DCberschrift 6", +blockquote:"Zitatblock", +code:"Code", +samp:"Beispiel", +dt:"Definitionsbegriff", +dd:"Definitionsbeschreibung", +bold_desc:"Fett (Strg+B)", +italic_desc:"Kursiv (Strg+I)", +underline_desc:"Unterstrichen (Strg+U)", +striketrough_desc:"Durchgestrichen", +justifyleft_desc:"Links ausgerichtet", +justifycenter_desc:"Mittig ausgerichtet", +justifyright_desc:"Rechts ausgerichtet", +justifyfull_desc:"Blocksatz", +bullist_desc:"Unsortierte Liste", +numlist_desc:"Sortierte Liste", +outdent_desc:"Ausr\u00FCcken", +indent_desc:"Einr\u00FCcken", +undo_desc:"R\u00FCckg\u00E4ngig (Strg+Z)", +redo_desc:"Wiederholen (Strg+Y)", +link_desc:"Link einf\u00FCgen/ver\u00E4ndern", +unlink_desc:"Link entfernen", +image_desc:"Bild einf\u00FCgen/ver\u00E4ndern", +cleanup_desc:"Quellcode aufr\u00E4umen", +code_desc:"HTML-Quellcode bearbeiten", +sub_desc:"Tiefgestellt", +sup_desc:"Hochgestellt", +hr_desc:"Trennlinie einf\u00FCgen", +removeformat_desc:"Formatierungen zur\u00FCcksetzen", +custom1_desc:"Benutzerdefinierte Beschreibung", +forecolor_desc:"Textfarbe", +backcolor_desc:"Hintergrundfarbe", +charmap_desc:"Sonderzeichen einf\u00FCgen", +visualaid_desc:"Hilfslinien und unsichtbare Elemente ein-/ausblenden", +anchor_desc:"Anker einf\u00FCgen/ver\u00E4ndern", +cut_desc:"Ausschneiden", +copy_desc:"Kopieren", +paste_desc:"Einf\u00FCgen", +image_props_desc:"Bildeigenschaften", +newdocument_desc:"Neues Dokument", +help_desc:"Hilfe", +blockquote_desc:"Zitatblock", +clipboard_msg:"Kopieren, Ausschneiden und Einf\u00FCgen sind im Mozilla Firefox nicht m\u00F6glich.\r\nWollen Sie mehr \u00FCber dieses Problem erfahren?", +path:"Pfad", +newdocument:"Wollen Sie wirklich den ganzen Inhalt l\u00F6schen?", +toolbar_focus:"Zur Werkzeugleiste springen: Alt+Q; Zum Editor springen: Alt-Z; Zum Elementpfad springen: Alt-X", +more_colors:"Weitere Farben", +anchor_delta_width:"13" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de_dlg.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de_dlg.js new file mode 100644 index 0000000..353b05e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/de_dlg.js @@ -0,0 +1,51 @@ +tinyMCE.addI18n('de.advanced_dlg',{ +about_title:"\u00DCber TinyMCE", +about_general:"\u00DCber\u2026", +about_help:"Hilfe", +about_license:"Lizenzbedingungen", +about_plugins:"Plugins", +about_plugin:"Plugin", +about_author:"Urheber", +about_version:"Version", +about_loaded:"Geladene Plugins", +anchor_title:"Anker einf\u00FCgen/ver\u00E4ndern", +anchor_name:"Name des Ankers", +code_title:"HTML-Quellcode bearbeiten", +code_wordwrap:"Automatischer Zeilenumbruch", +colorpicker_title:"Farbe", +colorpicker_picker_tab:"Farbwahl", +colorpicker_picker_title:"Farbwahl", +colorpicker_palette_tab:"Palette", +colorpicker_palette_title:"Farbpalette", +colorpicker_named_tab:"Benannte Farben", +colorpicker_named_title:"Benannte Farben", +colorpicker_color:"Farbe:", +colorpicker_name:"Name:", +charmap_title:"Sonderzeichen", +image_title:"Bild einf\u00FCgen/bearbeiten", +image_src:"Adresse", +image_alt:"Alternativtext", +image_list:"Bilderliste", +image_border:"Rahmen", +image_dimensions:"Ausma\u00DFe", +image_vspace:"Vertikaler Abstand", +image_hspace:"Horizontaler Abstand", +image_align:"Ausrichtung", +image_align_baseline:"Zeile", +image_align_top:"Oben", +image_align_middle:"Mittig", +image_align_bottom:"Unten", +image_align_texttop:"Oben im Text", +image_align_textbottom:"Unten im Text", +image_align_left:"Links", +image_align_right:"Rechts", +link_title:"Link einf\u00FCgen/bearbeiten", +link_url:"Adresse", +link_target:"Fenster", +link_target_same:"Im selben Fenster \u00F6ffnen", +link_target_blank:"Neues Fenster \u00F6ffnen", +link_titlefield:"Titel", +link_is_email:"Diese Adresse scheint eine E-Mail-Adresse zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte mailto: voranstellen?", +link_is_external:"Diese Adresse scheint ein externer Link zu sein. M\u00F6chten Sie das dazu ben\u00F6tigte http:// voranstellen?", +link_list:"Linkliste" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js new file mode 100644 index 0000000..69694b1 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js @@ -0,0 +1,62 @@ +tinyMCE.addI18n('en.advanced',{ +style_select:"Styles", +font_size:"Font size", +fontdefault:"Font family", +block:"Format", +paragraph:"Paragraph", +div:"Div", +address:"Address", +pre:"Preformatted", +h1:"Heading 1", +h2:"Heading 2", +h3:"Heading 3", +h4:"Heading 4", +h5:"Heading 5", +h6:"Heading 6", +blockquote:"Blockquote", +code:"Code", +samp:"Code sample", +dt:"Definition term ", +dd:"Definition description", +bold_desc:"Bold (Ctrl+B)", +italic_desc:"Italic (Ctrl+I)", +underline_desc:"Underline (Ctrl+U)", +striketrough_desc:"Strikethrough", +justifyleft_desc:"Align left", +justifycenter_desc:"Align center", +justifyright_desc:"Align right", +justifyfull_desc:"Align full", +bullist_desc:"Unordered list", +numlist_desc:"Ordered list", +outdent_desc:"Outdent", +indent_desc:"Indent", +undo_desc:"Undo (Ctrl+Z)", +redo_desc:"Redo (Ctrl+Y)", +link_desc:"Insert/edit link", +unlink_desc:"Unlink", +image_desc:"Insert/edit image", +cleanup_desc:"Cleanup messy code", +code_desc:"Edit HTML Source", +sub_desc:"Subscript", +sup_desc:"Superscript", +hr_desc:"Insert horizontal ruler", +removeformat_desc:"Remove formatting", +custom1_desc:"Your custom description here", +forecolor_desc:"Select text color", +backcolor_desc:"Select background color", +charmap_desc:"Insert custom character", +visualaid_desc:"Toggle guidelines/invisible elements", +anchor_desc:"Insert/edit anchor", +cut_desc:"Cut", +copy_desc:"Copy", +paste_desc:"Paste", +image_props_desc:"Image properties", +newdocument_desc:"New document", +help_desc:"Help", +blockquote_desc:"Blockquote", +clipboard_msg:"Copy/Cut/Paste is not available in Mozilla and Firefox.\r\nDo you want more information about this issue?", +path:"Path", +newdocument:"Are you sure you want clear all contents?", +toolbar_focus:"Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X", +more_colors:"More colors" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js new file mode 100644 index 0000000..9d124d7 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js @@ -0,0 +1,51 @@ +tinyMCE.addI18n('en.advanced_dlg',{ +about_title:"About TinyMCE", +about_general:"About", +about_help:"Help", +about_license:"License", +about_plugins:"Plugins", +about_plugin:"Plugin", +about_author:"Author", +about_version:"Version", +about_loaded:"Loaded plugins", +anchor_title:"Insert/edit anchor", +anchor_name:"Anchor name", +code_title:"HTML Source Editor", +code_wordwrap:"Word wrap", +colorpicker_title:"Select a color", +colorpicker_picker_tab:"Picker", +colorpicker_picker_title:"Color picker", +colorpicker_palette_tab:"Palette", +colorpicker_palette_title:"Palette colors", +colorpicker_named_tab:"Named", +colorpicker_named_title:"Named colors", +colorpicker_color:"Color:", +colorpicker_name:"Name:", +charmap_title:"Select custom character", +image_title:"Insert/edit image", +image_src:"Image URL", +image_alt:"Image description", +image_list:"Image list", +image_border:"Border", +image_dimensions:"Dimensions", +image_vspace:"Vertical space", +image_hspace:"Horizontal space", +image_align:"Alignment", +image_align_baseline:"Baseline", +image_align_top:"Top", +image_align_middle:"Middle", +image_align_bottom:"Bottom", +image_align_texttop:"Text top", +image_align_textbottom:"Text bottom", +image_align_left:"Left", +image_align_right:"Right", +link_title:"Insert/edit link", +link_url:"Link URL", +link_target:"Target", +link_target_same:"Open link in the same window", +link_target_blank:"Open link in a new window", +link_titlefield:"Title", +link_is_email:"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?", +link_is_external:"The URL you entered seems to external link, do you want to add the required http:// prefix?", +link_list:"Link list" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr.js new file mode 100644 index 0000000..36c974d --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr.js @@ -0,0 +1,62 @@ +tinyMCE.addI18n('fr.advanced',{ +style_select:"Styles", +font_size:"Taille police", +fontdefault:"Police", +block:"Format", +paragraph:"Paragraphe", +div:"Div", +address:"Adresse", +pre:"Pr\u00E9format\u00E9", +h1:"Titre 1", +h2:"Titre 2", +h3:"Titre 3", +h4:"Titre 4", +h5:"Titre 5", +h6:"Titre 6", +blockquote:"Bloc de citation", +code:"Code", +samp:"Exemple de code", +dt:"Terme \u00E0 d\u00E9finir", +dd:"D\u00E9finition du terme", +bold_desc:"Gras (Ctrl+B)", +italic_desc:"Italique (Ctrl+I)", +underline_desc:"Soulign\u00E9 (Ctrl+U)", +striketrough_desc:"Barr\u00E9", +justifyleft_desc:"Align\u00E9 \u00E0 gauche", +justifycenter_desc:"Centr\u00E9", +justifyright_desc:"Align\u00E9 \u00E0 droite", +justifyfull_desc:"Justifi\u00E9", +bullist_desc:"Liste \u00E0 puces", +numlist_desc:"Liste num\u00E9rot\u00E9e", +outdent_desc:"Retirer l'indentation", +indent_desc:"Indenter", +undo_desc:"Annuler (Ctrl+Z)", +redo_desc:"R\u00E9tablir (Ctrl+Y)", +link_desc:"Ins\u00E9rer / \u00E9diter le lien", +unlink_desc:"Supprimer le lien", +image_desc:"Ins\u00E9rer / \u00E9diter l'image", +cleanup_desc:"Nettoyer le code", +code_desc:"\u00C9diter le code source HTML", +sub_desc:"Indice", +sup_desc:"Exposant", +hr_desc:"Ins\u00E9rer un trait horizontal", +removeformat_desc:"Supprimer le formatage", +custom1_desc:"Votre description personnalis\u00E9e ici", +forecolor_desc:"Choisir la couleur du texte", +backcolor_desc:"Choisir la couleur de surlignage", +charmap_desc:"Ins\u00E9rer des caract\u00E8res sp\u00E9ciaux", +visualaid_desc:"Activer / d\u00E9sactiver les guides et les \u00E9l\u00E9ments invisibles", +anchor_desc:"Ins\u00E9rer / \u00E9diter une ancre", +cut_desc:"Couper", +copy_desc:"Copier", +paste_desc:"Coller", +image_props_desc:"Propri\u00E9t\u00E9s de l'image", +newdocument_desc:"Nouveau document", +help_desc:"Aide", +blockquote_desc:"Citation", +clipboard_msg:"Vous ne pouvez pas copier/couper/coller sous Mozilla et sous Firefox.\nSouhaitez-vous en apprendre davantage sur ce probl\u00E8me ?", +path:"Chemin", +newdocument:"Souhaitez-vous vraiment effacer tout le contenu du document ?", +toolbar_focus:"Atteindre les boutons de l'\u00E9diteur - Alt+Q, Aller \u00E0 l'\u00E9diteur - Alt-Z, Aller au chemin de l'\u00E9l\u00E9ment - Alt-X", +more_colors:"Plus de couleurs" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr_dlg.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr_dlg.js new file mode 100644 index 0000000..c9ced49 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/fr_dlg.js @@ -0,0 +1,51 @@ +tinyMCE.addI18n('fr.advanced_dlg',{ +about_title:"\u00C0 propos de TinyMCE", +about_general:"\u00C0 propos", +about_help:"Aide", +about_license:"Licence", +about_plugins:"Plugins", +about_plugin:"Plugin", +about_author:"Auteur", +about_version:"Version", +about_loaded:"Plugins charg\u00E9s", +anchor_title:"Ins\u00E9rer / \u00E9diter une ancre", +anchor_name:"Nom de l'ancre", +code_title:"\u00C9diteur de source HTML", +code_wordwrap:"Retour \u00E0 la ligne", +colorpicker_title:"Choisir une couleur", +colorpicker_picker_tab:"Nuancier", +colorpicker_picker_title:"Nuancier", +colorpicker_palette_tab:"Palette", +colorpicker_palette_title:"Couleurs de la palette", +colorpicker_named_tab:"Noms", +colorpicker_named_title:"Couleurs nomm\u00E9es", +colorpicker_color:"Couleur :", +colorpicker_name:"Nom :", +charmap_title:"Choisir le caract\u00E8re \u00E0 ins\u00E9rer", +image_title:"Ins\u00E9rer / \u00E9diter une image", +image_src:"URL de l'image", +image_alt:"Description de l'image", +image_list:"Liste d'images", +image_border:"Bordure", +image_dimensions:"Dimensions", +image_vspace:"Espacement vertical", +image_hspace:"Espacement horizontal", +image_align:"Alignement", +image_align_baseline:"Normal", +image_align_top:"En haut", +image_align_middle:"Au milieu", +image_align_bottom:"En bas", +image_align_texttop:"Texte en haut", +image_align_textbottom:"Texte en bas", +image_align_left:"Gauche (flottant)", +image_align_right:"Droite (flottant)", +link_title:"Ins\u00E9rer / \u00E9diter un lien", +link_url:"URL du lien", +link_target:"Cible", +link_target_same:"Ouvrir dans la m\u00EAme fen\u00EAtre", +link_target_blank:"Ouvrir dans une nouvelle fen\u00EAtre", +link_titlefield:"Titre", +link_is_email:"L'URL que vous avez saisie semble \u00EAtre une adresse e-mail, souhaitez-vous ajouter le pr\u00E9fixe \u00AB mailto: \u00BB ?", +link_is_external:"L'URL que vous avez saisie semble \u00EAtre une adresse web externe. Souhaitez-vous ajouter le pr\u00E9fixe \u00AB http:// \u00BB ?", +link_list:"Liste de liens" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru.js new file mode 100644 index 0000000..374b410 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru.js @@ -0,0 +1,62 @@ +tinyMCE.addI18n('ru.advanced',{ +style_select:"\u0421\u0442\u0438\u043B\u044C", +font_size:"\u0420\u0430\u0437\u043C\u0435\u0440", +fontdefault:"\u0428\u0440\u0438\u0444\u0442", +block:"\u0424\u043E\u0440\u043C\u0430\u0442", +paragraph:"\u0410\u0431\u0437\u0430\u0446", +div:"Div", +address:"\u0410\u0434\u0440\u0435\u0441", +pre:"\u041F\u0440\u0435\u0444\u043E\u0440\u043C\u0430\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439", +h1:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A 1", +h2:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A 2", +h3:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A 3", +h4:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A 4", +h5:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A 5", +h6:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A 6", +blockquote:"\u0426\u0438\u0442\u0430\u0442\u0430", +code:"\u041A\u043E\u0434", +samp:"\u041F\u0440\u0438\u043C\u0435\u0440 \u043A\u043E\u0434\u0430", +dt:"\u0422\u0435\u0440\u043C\u0438\u043D \u0441\u043F\u0440\u0430\u0432\u043E\u0447\u043D\u0438\u043A\u0430", +dd:"\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 \u0441\u043F\u0440\u0430\u0432\u043E\u0447\u043D\u0438\u043A\u0430", +bold_desc:"\u041F\u043E\u043B\u0443\u0436\u0438\u0440\u043D\u044B\u0439 (Ctrl+B)", +italic_desc:"\u041A\u0443\u0440\u0441\u0438\u0432 (Ctrl+I)", +underline_desc:"\u041F\u043E\u0434\u0447\u0435\u0440\u043A\u043D\u0443\u0442\u044B\u0439 (Ctrl+U)", +striketrough_desc:"\u0417\u0430\u0447\u0435\u0440\u043A\u043D\u0443\u0442\u044B\u0439", +justifyleft_desc:"\u041F\u043E \u043B\u0435\u0432\u043E\u043C\u0443 \u043A\u0440\u0430\u044E", +justifycenter_desc:"\u041F\u043E \u0446\u0435\u043D\u0442\u0440\u0443", +justifyright_desc:"\u041F\u043E \u043F\u0440\u0430\u0432\u043E\u043C\u0443 \u043A\u0440\u0430\u044E", +justifyfull_desc:"\u041F\u043E \u0448\u0438\u0440\u0438\u043D\u0435", +bullist_desc:"\u041C\u0430\u0440\u043A\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439 \u0441\u043F\u0438\u0441\u043E\u043A", +numlist_desc:"\u041D\u0443\u043C\u0435\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439 \u0441\u043F\u0438\u0441\u043E\u043A", +outdent_desc:"\u0423\u043C\u0435\u043D\u044C\u0448\u0438\u0442\u044C \u043E\u0442\u0441\u0442\u0443\u043F", +indent_desc:"\u0423\u0432\u0435\u043B\u0438\u0447\u0438\u0442\u044C \u043E\u0442\u0441\u0442\u0443\u043F", +undo_desc:"\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C (Ctrl+Z)", +redo_desc:"\u0412\u0435\u0440\u043D\u0443\u0442\u044C (Ctrl+Y)", +link_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C/\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0441\u0441\u044B\u043B\u043A\u0443", +unlink_desc:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u0441\u044B\u043B\u043A\u0443", +image_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C/\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435", +cleanup_desc:"\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u043B\u0438\u0448\u043D\u0438\u0439 \u043A\u043E\u0434", +code_desc:"\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C HTML \u043A\u043E\u0434", +sub_desc:"\u041F\u043E\u0434\u0441\u0442\u0440\u043E\u0447\u043D\u044B\u0439", +sup_desc:"\u041D\u0430\u0434\u0441\u0442\u0440\u043E\u0447\u043D\u044B\u0439", +hr_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0447\u0435\u0440\u0442\u0443", +removeformat_desc:"\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0444\u043E\u0440\u043C\u0430\u0442", +custom1_desc:"\u0421\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0435 \u043E\u043F\u0438\u0441\u0430\u043D\u0438\u0435", +forecolor_desc:"\u0426\u0432\u0435\u0442 \u0442\u0435\u043A\u0441\u0442\u0430", +backcolor_desc:"\u0426\u0432\u0435\u0442 \u0432\u044B\u0434\u0435\u043B\u0435\u043D\u0438\u044F \u0442\u0435\u043A\u0441\u0442\u0430", +charmap_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u0438\u043C\u0432\u043E\u043B", +visualaid_desc:"\u0412\u0441\u0435 \u0437\u043D\u0430\u043A\u0438", +anchor_desc:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C/\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u044F\u043A\u043E\u0440\u044C", +cut_desc:"\u0412\u044B\u0440\u0435\u0437\u0430\u0442\u044C", +copy_desc:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C", +paste_desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C", +image_props_desc:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F", +newdocument_desc:"\u041D\u043E\u0432\u044B\u0439 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442", +help_desc:"\u041F\u043E\u043C\u043E\u0449\u044C", +blockquote_desc:"\u0426\u0438\u0442\u0430\u0442\u0430", +clipboard_msg:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435, \u0432\u044B\u0440\u0435\u0437\u043A\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u043A\u0430 \u043D\u0435 \u0440\u0430\u0431\u043E\u0442\u0430\u044E\u0442 \u0432 Firefox.\r\n\u0425\u043E\u0442\u0438\u0442\u0435 \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 \u043F\u043E\u0434\u0440\u043E\u0431\u043D\u0443\u044E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E?", +path:"\u0422\u0435\u0433\u0438", +newdocument:"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0432\u0441\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C?", +toolbar_focus:"\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043D\u0430 \u043F\u0430\u043D\u0435\u043B\u044C \u043A\u043D\u043E\u043F\u043E\u043A (Alt+Q). \u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043A \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0443 (Alt+Z). \u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043A \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0443 \u043F\u0443\u0442\u0438 (Alt+X).", +more_colors:"\u0414\u0440\u0443\u0433\u0438\u0435 \u0446\u0432\u0435\u0442\u0430..." +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru_dlg.js b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru_dlg.js new file mode 100644 index 0000000..ff19b21 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/langs/ru_dlg.js @@ -0,0 +1,51 @@ +tinyMCE.addI18n('ru.advanced_dlg',{ +about_title:"\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 TinyMCE", +about_general:"\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435", +about_help:"\u041F\u043E\u043C\u043E\u0449\u044C", +about_license:"\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u044F", +about_plugins:"\u041F\u043B\u0430\u0433\u0438\u043D\u044B", +about_plugin:"\u041F\u043B\u0430\u0433\u0438\u043D", +about_author:"\u0410\u0432\u0442\u043E\u0440", +about_version:"\u0412\u0435\u0440\u0441\u0438\u044F", +about_loaded:"\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u043D\u044B\u0435 \u043F\u043B\u0430\u0433\u0438\u043D\u044B", +anchor_title:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u044F\u043A\u043E\u0440\u044F", +anchor_name:"\u0418\u043C\u044F \u044F\u043A\u043E\u0440\u044F", +code_title:"\u0420\u0435\u0434\u0430\u043A\u0442\u043E\u0440 HTML \u043A\u043E\u0434\u0430", +code_wordwrap:"\u041F\u0435\u0440\u0435\u043D\u043E\u0441 \u0441\u0442\u0440\u043E\u043A", +colorpicker_title:"\u0426\u0432\u0435\u0442\u0430", +colorpicker_picker_tab:"\u0421\u043F\u043A\u0442\u0440", +colorpicker_picker_title:"\u0426\u0432\u0435\u0442\u0430", +colorpicker_palette_tab:"\u041F\u0430\u043B\u0438\u0442\u0440\u0430", +colorpicker_palette_title:"\u0426\u0432\u0435\u0442\u0430", +colorpicker_named_tab:"\u041D\u0430\u0437\u0432\u0430\u043D\u0438\u044F", +colorpicker_named_title:"\u0426\u0432\u0435\u0442\u0430", +colorpicker_color:"\u041A\u043E\u0434:", +colorpicker_name:"\u041D\u0430\u0437\u0432\u0430\u043D\u0438\u0435:", +charmap_title:"\u0412\u044B\u0431\u043E\u0440 \u0441\u0438\u043C\u0432\u043E\u043B\u0430", +image_title:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F", +image_src:"\u0410\u0434\u0440\u0435\u0441", +image_alt:"\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435", +image_list:"\u0421\u043F\u0438\u0441\u043E\u043A \u043A\u0430\u0440\u0442\u0438\u043D\u043E\u043A", +image_border:"\u0413\u0440\u0430\u043D\u0438\u0446\u0430", +image_dimensions:"\u0420\u0430\u0437\u043C\u0435\u0440", +image_vspace:"\u0412\u0435\u0440\u0442. \u043E\u0442\u0441\u0442\u0443\u043F", +image_hspace:"\u0413\u043E\u0440\u0438\u0437. \u043E\u0442\u0441\u0442\u0443\u043F", +image_align:"\u0412\u044B\u0440\u0430\u0432\u043D\u0438\u0432\u0430\u043D\u0438\u0435", +image_align_baseline:"\u041F\u043E \u0431\u0430\u0437\u043E\u0432\u043E\u0439 \u043B\u0438\u043D\u0438\u0438", +image_align_top:"\u041F\u043E \u0432\u0435\u0440\u0445\u043D\u0435\u043C\u0443 \u043A\u0440\u0430\u044E", +image_align_middle:"\u041F\u043E \u0446\u0435\u043D\u0442\u0440\u0443", +image_align_bottom:"\u041F\u043E \u043D\u0438\u0436\u043D\u0435\u043C\u0443 \u043A\u0440\u0430\u044E", +image_align_texttop:"\u041F\u043E \u0432\u0435\u0440\u0445\u043D\u0435\u043C\u0443 \u043A\u0440\u0430\u044E \u0442\u0435\u043A\u0441\u0442\u0430", +image_align_textbottom:"\u041F\u043E \u043D\u0438\u0436\u043D\u0435\u043C\u0443 \u043A\u0440\u0430\u044E \u0442\u0435\u043A\u0441\u0442\u0430", +image_align_left:"\u041F\u043E \u043B\u0435\u0432\u043E\u043C\u0443 \u043A\u0440\u0430\u044E", +image_align_right:"\u041F\u043E \u043F\u0440\u0430\u0432\u043E\u043C\u0443 \u043A\u0440\u0430\u044E", +link_title:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0441\u0441\u044B\u043B\u043A\u0438", +link_url:"\u0410\u0434\u0440\u0435\u0441", +link_target:"\u0426\u0435\u043B\u044C", +link_target_same:"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0432 \u044D\u0442\u043E\u043C \u043E\u043A\u043D\u0435", +link_target_blank:"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0432 \u043D\u043E\u0432\u043E\u043C \u043E\u043A\u043D\u0435", +link_titlefield:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A", +link_is_email:"\u0412\u0432\u0435\u0434\u0435\u043D\u043D\u044B\u0439 \u0430\u0434\u0440\u0435\u0441 \u043D\u0430\u043F\u043E\u043C\u0438\u043D\u0430\u0435\u0442 \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0443\u044E \u043F\u043E\u0447\u0442\u0443, \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043F\u0440\u0435\u0444\u0438\u043A\u0441 mailto:?", +link_is_external:"\u0412\u0432\u0435\u0434\u0435\u043D\u043D\u044B\u0439 \u0430\u0434\u0440\u0435\u0441 \u043D\u0430\u043F\u043E\u043C\u0438\u043D\u0430\u0435\u0442 \u0432\u043D\u0435\u0448\u043D\u044E\u044E \u0441\u0441\u044B\u043B\u043A\u0443, \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043F\u0440\u0435\u0444\u0438\u043A\u0441 http://?", +link_list:"\u0421\u043F\u0438\u0441\u043E\u043A \u0441\u0441\u044B\u043B\u043E\u043A" +}); \ No newline at end of file diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/link.htm b/assets/tinymce/jscripts/tiny_mce/themes/advanced/link.htm new file mode 100644 index 0000000..7565b9a --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/link.htm @@ -0,0 +1,58 @@ + + + + {#advanced_dlg.link_title} + + + + + + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
 
+
+
+ +
+ + +
+
+ + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/all-wcprops new file mode 100644 index 0000000..b74d596 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/entries b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/entries new file mode 100644 index 0000000..eb1ba47 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/.svn/entries @@ -0,0 +1,37 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins +http://django-grappelli.googlecode.com/svn + + + +2010-05-28T12:30:12.584501Z +1047 +sehmaschine + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +grappelli +dir + +o2k7 +dir + +default +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/all-wcprops new file mode 100644 index 0000000..825b3b2 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default +END +content.css +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css +END +ui.css +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/ui.css +END +dialog.css +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/entries b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/entries new file mode 100644 index 0000000..8182c76 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/entries @@ -0,0 +1,133 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +content.css +file + + + + +2010-06-04T12:51:47.391876Z +100bf5983ee03c36f8c8145d1551cbf6 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +1407 + +ui.css +file + + + + +2010-06-04T12:51:47.391876Z +96af70ccc761290f38684101307a6e14 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +15685 + +dialog.css +file + + + + +2010-06-04T12:51:47.391876Z +416e2b0cfec24302f776fd406981a325 +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + + + + + + + + +5616 + +img +dir + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/content.css.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/content.css.svn-base new file mode 100644 index 0000000..36f38ab --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/content.css.svn-base @@ -0,0 +1,35 @@ +body, td, pre {color:#000; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; margin:8px;} +body {background:#FFF;} +body.mceForceColors {background:#FFF; color:#000;} +h1 {font-size: 2em} +h2 {font-size: 1.5em} +h3 {font-size: 1.17em} +h4 {font-size: 1em} +h5 {font-size: .83em} +h6 {font-size: .75em} +.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;} +a.mceItemAnchor {display:inline-block; width:11px !important; height:11px !important; background:url(img/items.gif) no-repeat 0 0;} +td.mceSelected, th.mceSelected {background-color:#3399ff !important} +img {border:0;} +table {cursor:default} +table td, table th {cursor:text} +ins {border-bottom:1px solid green; text-decoration: none; color:green} +del {color:red; text-decoration:line-through} +cite {border-bottom:1px dashed blue} +acronym {border-bottom:1px dotted #CCC; cursor:help} +abbr {border-bottom:1px dashed #CCC; cursor:help} + +/* IE */ +* html body { +scrollbar-3dlight-color:#F0F0EE; +scrollbar-arrow-color:#676662; +scrollbar-base-color:#F0F0EE; +scrollbar-darkshadow-color:#DDD; +scrollbar-face-color:#E0E0DD; +scrollbar-highlight-color:#F0F0EE; +scrollbar-shadow-color:#F0F0EE; +scrollbar-track-color:#F5F5F5; +} + +img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px} +font[face=mceinline] {font-family:inherit !important} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/dialog.css.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/dialog.css.svn-base new file mode 100644 index 0000000..f012226 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/dialog.css.svn-base @@ -0,0 +1,117 @@ +/* Generic */ +body { +font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px; +scrollbar-3dlight-color:#F0F0EE; +scrollbar-arrow-color:#676662; +scrollbar-base-color:#F0F0EE; +scrollbar-darkshadow-color:#DDDDDD; +scrollbar-face-color:#E0E0DD; +scrollbar-highlight-color:#F0F0EE; +scrollbar-shadow-color:#F0F0EE; +scrollbar-track-color:#F5F5F5; +background:#F0F0EE; +padding:0; +margin:8px 8px 0 8px; +} + +html {background:#F0F0EE;} +td {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;} +textarea {resize:none;outline:none;} +a:link, a:visited {color:black;} +a:hover {color:#2B6FB6;} +.nowrap {white-space: nowrap} + +/* Forms */ +fieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;} +legend {color:#2B6FB6; font-weight:bold;} +label.msg {display:none;} +label.invalid {color:#EE0000; display:inline;} +input.invalid {border:1px solid #EE0000;} +input {background:#FFF; border:1px solid #CCC;} +input, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;} +input, select, textarea {border:1px solid #808080;} +input.radio {border:1px none #000000; background:transparent; vertical-align:middle;} +input.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;} +.input_noborder {border:0;} + +/* Buttons */ +#insert, #cancel, input.button, .updateButton { +border:0; margin:0; padding:0; +font-weight:bold; +width:94px; height:26px; +background:url(img/buttons.png) 0 -26px; +cursor:pointer; +padding-bottom:2px; +float:left; +} + +#insert {background:url(img/buttons.png) 0 -52px} +#cancel {background:url(img/buttons.png) 0 0; float:right} + +/* Browse */ +a.pickcolor, a.browse {text-decoration:none} +a.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;} +.mceOldBoxModel a.browse span {width:22px; height:20px;} +a.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;} +a.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)} +a.browse:hover span.disabled {border:1px solid white; background-color:transparent;} +a.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;} +.mceOldBoxModel a.pickcolor span {width:21px; height:17px;} +a.pickcolor:hover span {background-color:#B2BBD0;} +a.pickcolor:hover span.disabled {} + +/* Charmap */ +table.charmap {border:1px solid #AAA; text-align:center} +td.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;} +#charmap a {display:block; color:#000; text-decoration:none; border:0} +#charmap a:hover {background:#CCC;color:#2B6FB6} +#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center} +#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center} + +/* Source */ +.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;} +.mceActionPanel {margin-top:5px;} + +/* Tabs classes */ +.tabs {width:100%; height:18px; line-height:normal; background:url(img/tabs.gif) repeat-x 0 -72px;} +.tabs ul {margin:0; padding:0; list-style:none;} +.tabs li {float:left; background:url(img/tabs.gif) no-repeat 0 0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block;} +.tabs li.current {background:url(img/tabs.gif) no-repeat 0 -18px; margin-right:2px;} +.tabs span {float:left; display:block; background:url(img/tabs.gif) no-repeat right -36px; padding:0px 10px 0 0;} +.tabs .current span {background:url(img/tabs.gif) no-repeat right -54px;} +.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;} +.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;} + +/* Panels */ +.panel_wrapper div.panel {display:none;} +.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;} +.panel_wrapper {border:1px solid #919B9C; border-top:0px; padding:10px; padding-top:5px; clear:both; background:white;} + +/* Columns */ +.column {float:left;} +.properties {width:100%;} +.properties .column1 {} +.properties .column2 {text-align:left;} + +/* Titles */ +h1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;} +h3 {font-size:14px;} +.title {font-size:12px; font-weight:bold; color:#2B6FB6;} + +/* Dialog specific */ +#link .panel_wrapper, #link div.current {height:125px;} +#image .panel_wrapper, #image div.current {height:200px;} +#plugintable thead {font-weight:bold; background:#DDD;} +#plugintable, #about #plugintable td {border:1px solid #919B9C;} +#plugintable {width:96%; margin-top:10px;} +#pluginscontainer {height:290px; overflow:auto;} +#colorpicker #preview {float:right; width:50px; height:14px;line-height:1px; border:1px solid black; margin-left:5px;} +#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;} +#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;} +#colorpicker #light div {overflow:hidden;} +#colorpicker #previewblock {float:right; padding-left:10px; height:20px;} +#colorpicker .panel_wrapper div.current {height:175px;} +#colorpicker #namedcolors {width:150px;} +#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;} +#colorpicker #colornamecontainer {margin-top:5px;} +#colorpicker #picker_panel fieldset {margin:auto;width:325px;} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/ui.css.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/ui.css.svn-base new file mode 100644 index 0000000..aea6105 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/.svn/text-base/ui.css.svn-base @@ -0,0 +1,214 @@ +/* Reset */ +.defaultSkin table, .defaultSkin tbody, .defaultSkin a, .defaultSkin img, .defaultSkin tr, .defaultSkin div, .defaultSkin td, .defaultSkin iframe, .defaultSkin span, .defaultSkin *, .defaultSkin .mceText {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000; vertical-align:baseline; width:auto; border-collapse:separate; text-align:left} +.defaultSkin a:hover, .defaultSkin a:link, .defaultSkin a:visited, .defaultSkin a:active {text-decoration:none; font-weight:normal; cursor:default; color:#000} +.defaultSkin table td {vertical-align:middle} + +/* Containers */ +.defaultSkin table {direction:ltr; background:#F0F0EE} +.defaultSkin iframe {display:block; background:#FFF} +.defaultSkin .mceToolbar {height:26px} +.defaultSkin .mceLeft {text-align:left} +.defaultSkin .mceRight {text-align:right} + +/* External */ +.defaultSkin .mceExternalToolbar {position:absolute; border:1px solid #CCC; border-bottom:0; display:none;} +.defaultSkin .mceExternalToolbar td.mceToolbar {padding-right:13px;} +.defaultSkin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px; background:url(../../img/icons.gif) -820px 0} + +/* Layout */ +.defaultSkin table.mceLayout {border:0; border-left:1px solid #CCC; border-right:1px solid #CCC} +.defaultSkin table.mceLayout tr.mceFirst td {border-top:1px solid #CCC} +.defaultSkin table.mceLayout tr.mceLast td {border-bottom:1px solid #CCC} +.defaultSkin table.mceToolbar, .defaultSkin tr.mceFirst .mceToolbar tr td, .defaultSkin tr.mceLast .mceToolbar tr td {border:0; margin:0; padding:0;} +.defaultSkin td.mceToolbar {padding-top:1px; vertical-align:top} +.defaultSkin .mceIframeContainer {border-top:1px solid #CCC; border-bottom:1px solid #CCC} +.defaultSkin .mceStatusbar {font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:9pt; line-height:16px; overflow:visible; color:#000; display:block; height:20px} +.defaultSkin .mceStatusbar div {float:left; margin:2px} +.defaultSkin .mceStatusbar a.mceResize {display:block; float:right; background:url(../../img/icons.gif) -800px 0; width:20px; height:20px; cursor:se-resize} +.defaultSkin .mceStatusbar a:hover {text-decoration:underline} +.defaultSkin table.mceToolbar {margin-left:3px} +.defaultSkin span.mceIcon, .defaultSkin img.mceIcon {display:block; width:20px; height:20px} +.defaultSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px} +.defaultSkin td.mceCenter {text-align:center;} +.defaultSkin td.mceCenter table {margin:0 auto; text-align:left;} +.defaultSkin td.mceRight table {margin:0 0 0 auto;} + +/* Button */ +.defaultSkin .mceButton {display:block; border:1px solid #F0F0EE; width:20px; height:20px; margin-right:1px} +.defaultSkin a.mceButtonEnabled:hover {border:1px solid #0A246A; background-color:#B2BBD0} +.defaultSkin a.mceButtonActive, .defaultSkin a.mceButtonSelected {border:1px solid #0A246A; background-color:#C2CBE0} +.defaultSkin .mceButtonDisabled .mceIcon {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)} +.defaultSkin .mceButtonLabeled {width:auto} +.defaultSkin .mceButtonLabeled span.mceIcon {float:left} +.defaultSkin span.mceButtonLabel {display:block; font-size:10px; padding:4px 6px 0 22px; font-family:Tahoma,Verdana,Arial,Helvetica} +.defaultSkin .mceButtonDisabled .mceButtonLabel {color:#888} + +/* Separator */ +.defaultSkin .mceSeparator {display:block; background:url(../../img/icons.gif) -180px 0; width:2px; height:20px; margin:2px 2px 0 4px} + +/* ListBox */ +.defaultSkin .mceListBox, .defaultSkin .mceListBox a {display:block} +.defaultSkin .mceListBox .mceText {padding-left:4px; width:70px; text-align:left; border:1px solid #CCC; border-right:0; background:#FFF; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; height:20px; line-height:20px; overflow:hidden} +.defaultSkin .mceListBox .mceOpen {width:9px; height:20px; background:url(../../img/icons.gif) -741px 0; margin-right:2px; border:1px solid #CCC;} +.defaultSkin table.mceListBoxEnabled:hover .mceText, .defaultSkin .mceListBoxHover .mceText, .defaultSkin .mceListBoxSelected .mceText {border:1px solid #A2ABC0; border-right:0; background:#FFF} +.defaultSkin table.mceListBoxEnabled:hover .mceOpen, .defaultSkin .mceListBoxHover .mceOpen, .defaultSkin .mceListBoxSelected .mceOpen {background-color:#FFF; border:1px solid #A2ABC0} +.defaultSkin .mceListBoxDisabled a.mceText {color:gray; background-color:transparent;} +.defaultSkin .mceListBoxMenu {overflow:auto; overflow-x:hidden} +.defaultSkin .mceOldBoxModel .mceListBox .mceText {height:22px} +.defaultSkin .mceOldBoxModel .mceListBox .mceOpen {width:11px; height:22px;} +.defaultSkin select.mceNativeListBox {font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:7pt; background:#F0F0EE; border:1px solid gray; margin-right:2px;} + +/* SplitButton */ +.defaultSkin .mceSplitButton {width:32px; height:20px; direction:ltr} +.defaultSkin .mceSplitButton a, .defaultSkin .mceSplitButton span {height:20px; display:block} +.defaultSkin .mceSplitButton a.mceAction {width:20px; border:1px solid #F0F0EE; border-right:0;} +.defaultSkin .mceSplitButton span.mceAction {width:20px; background-image:url(../../img/icons.gif);} +.defaultSkin .mceSplitButton a.mceOpen {width:9px; background:url(../../img/icons.gif) -741px 0; border:1px solid #F0F0EE;} +.defaultSkin .mceSplitButton span.mceOpen {display:none} +.defaultSkin table.mceSplitButtonEnabled:hover a.mceAction, .defaultSkin .mceSplitButtonHover a.mceAction, .defaultSkin .mceSplitButtonSelected a.mceAction {border:1px solid #0A246A; border-right:0; background-color:#B2BBD0} +.defaultSkin table.mceSplitButtonEnabled:hover a.mceOpen, .defaultSkin .mceSplitButtonHover a.mceOpen, .defaultSkin .mceSplitButtonSelected a.mceOpen {background-color:#B2BBD0; border:1px solid #0A246A;} +.defaultSkin .mceSplitButtonDisabled .mceAction, .defaultSkin .mceSplitButtonDisabled a.mceOpen {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)} +.defaultSkin .mceSplitButtonActive a.mceAction {border:1px solid #0A246A; background-color:#C2CBE0} +.defaultSkin .mceSplitButtonActive a.mceOpen {border-left:0;} + +/* ColorSplitButton */ +.defaultSkin div.mceColorSplitMenu table {background:#FFF; border:1px solid gray} +.defaultSkin .mceColorSplitMenu td {padding:2px} +.defaultSkin .mceColorSplitMenu a {display:block; width:9px; height:9px; overflow:hidden; border:1px solid #808080} +.defaultSkin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px} +.defaultSkin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px; border:1px solid #FFF} +.defaultSkin .mceColorSplitMenu a.mceMoreColors:hover {border:1px solid #0A246A; background-color:#B6BDD2} +.defaultSkin a.mceMoreColors:hover {border:1px solid #0A246A} +.defaultSkin .mceColorPreview {margin-left:2px; width:16px; height:4px; overflow:hidden; background:#9a9b9a} +.defaultSkin .mce_forecolor span.mceAction, .defaultSkin .mce_backcolor span.mceAction {overflow:hidden; height:16px} + +/* Menu */ +.defaultSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid #D4D0C8} +.defaultSkin .mceNoIcons span.mceIcon {width:0;} +.defaultSkin .mceNoIcons a .mceText {padding-left:10px} +.defaultSkin .mceMenu table {background:#FFF} +.defaultSkin .mceMenu a, .defaultSkin .mceMenu span, .defaultSkin .mceMenu {display:block} +.defaultSkin .mceMenu td {height:20px} +.defaultSkin .mceMenu a {position:relative;padding:3px 0 4px 0} +.defaultSkin .mceMenu .mceText {position:relative; display:block; font-family:Tahoma,Verdana,Arial,Helvetica; color:#000; cursor:default; margin:0; padding:0 25px 0 25px; display:block} +.defaultSkin .mceMenu span.mceText, .defaultSkin .mceMenu .mcePreview {font-size:11px} +.defaultSkin .mceMenu pre.mceText {font-family:Monospace} +.defaultSkin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:22px;} +.defaultSkin .mceMenu .mceMenuItemEnabled a:hover, .defaultSkin .mceMenu .mceMenuItemActive {background-color:#dbecf3} +.defaultSkin td.mceMenuItemSeparator {background:#DDD; height:1px} +.defaultSkin .mceMenuItemTitle a {border:0; background:#EEE; border-bottom:1px solid #DDD} +.defaultSkin .mceMenuItemTitle span.mceText {color:#000; font-weight:bold; padding-left:4px} +.defaultSkin .mceMenuItemDisabled .mceText {color:#888} +.defaultSkin .mceMenuItemSelected .mceIcon {background:url(img/menu_check.gif)} +.defaultSkin .mceNoIcons .mceMenuItemSelected a {background:url(img/menu_arrow.gif) no-repeat -6px center} +.defaultSkin .mceMenu span.mceMenuLine {display:none} +.defaultSkin .mceMenuItemSub a {background:url(img/menu_arrow.gif) no-repeat top right;} + +/* Progress,Resize */ +.defaultSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=50)'; filter:alpha(opacity=50); background:#FFF} +.defaultSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px} +.defaultSkin .mcePlaceHolder {border:1px dotted gray} + +/* Formats */ +.defaultSkin .mce_formatPreview a {font-size:10px} +.defaultSkin .mce_p span.mceText {} +.defaultSkin .mce_address span.mceText {font-style:italic} +.defaultSkin .mce_pre span.mceText {font-family:monospace} +.defaultSkin .mce_h1 span.mceText {font-weight:bolder; font-size: 2em} +.defaultSkin .mce_h2 span.mceText {font-weight:bolder; font-size: 1.5em} +.defaultSkin .mce_h3 span.mceText {font-weight:bolder; font-size: 1.17em} +.defaultSkin .mce_h4 span.mceText {font-weight:bolder; font-size: 1em} +.defaultSkin .mce_h5 span.mceText {font-weight:bolder; font-size: .83em} +.defaultSkin .mce_h6 span.mceText {font-weight:bolder; font-size: .75em} + +/* Theme */ +.defaultSkin span.mce_bold {background-position:0 0} +.defaultSkin span.mce_italic {background-position:-60px 0} +.defaultSkin span.mce_underline {background-position:-140px 0} +.defaultSkin span.mce_strikethrough {background-position:-120px 0} +.defaultSkin span.mce_undo {background-position:-160px 0} +.defaultSkin span.mce_redo {background-position:-100px 0} +.defaultSkin span.mce_cleanup {background-position:-40px 0} +.defaultSkin span.mce_bullist {background-position:-20px 0} +.defaultSkin span.mce_numlist {background-position:-80px 0} +.defaultSkin span.mce_justifyleft {background-position:-460px 0} +.defaultSkin span.mce_justifyright {background-position:-480px 0} +.defaultSkin span.mce_justifycenter {background-position:-420px 0} +.defaultSkin span.mce_justifyfull {background-position:-440px 0} +.defaultSkin span.mce_anchor {background-position:-200px 0} +.defaultSkin span.mce_indent {background-position:-400px 0} +.defaultSkin span.mce_outdent {background-position:-540px 0} +.defaultSkin span.mce_link {background-position:-500px 0} +.defaultSkin span.mce_unlink {background-position:-640px 0} +.defaultSkin span.mce_sub {background-position:-600px 0} +.defaultSkin span.mce_sup {background-position:-620px 0} +.defaultSkin span.mce_removeformat {background-position:-580px 0} +.defaultSkin span.mce_newdocument {background-position:-520px 0} +.defaultSkin span.mce_image {background-position:-380px 0} +.defaultSkin span.mce_help {background-position:-340px 0} +.defaultSkin span.mce_code {background-position:-260px 0} +.defaultSkin span.mce_hr {background-position:-360px 0} +.defaultSkin span.mce_visualaid {background-position:-660px 0} +.defaultSkin span.mce_charmap {background-position:-240px 0} +.defaultSkin span.mce_paste {background-position:-560px 0} +.defaultSkin span.mce_copy {background-position:-700px 0} +.defaultSkin span.mce_cut {background-position:-680px 0} +.defaultSkin span.mce_blockquote {background-position:-220px 0} +.defaultSkin .mce_forecolor span.mceAction {background-position:-720px 0} +.defaultSkin .mce_backcolor span.mceAction {background-position:-760px 0} +.defaultSkin span.mce_forecolorpicker {background-position:-720px 0} +.defaultSkin span.mce_backcolorpicker {background-position:-760px 0} + +/* Plugins */ +.defaultSkin span.mce_advhr {background-position:-0px -20px} +.defaultSkin span.mce_ltr {background-position:-20px -20px} +.defaultSkin span.mce_rtl {background-position:-40px -20px} +.defaultSkin span.mce_emotions {background-position:-60px -20px} +.defaultSkin span.mce_fullpage {background-position:-80px -20px} +.defaultSkin span.mce_fullscreen {background-position:-100px -20px} +.defaultSkin span.mce_iespell {background-position:-120px -20px} +.defaultSkin span.mce_insertdate {background-position:-140px -20px} +.defaultSkin span.mce_inserttime {background-position:-160px -20px} +.defaultSkin span.mce_absolute {background-position:-180px -20px} +.defaultSkin span.mce_backward {background-position:-200px -20px} +.defaultSkin span.mce_forward {background-position:-220px -20px} +.defaultSkin span.mce_insert_layer {background-position:-240px -20px} +.defaultSkin span.mce_insertlayer {background-position:-260px -20px} +.defaultSkin span.mce_movebackward {background-position:-280px -20px} +.defaultSkin span.mce_moveforward {background-position:-300px -20px} +.defaultSkin span.mce_media {background-position:-320px -20px} +.defaultSkin span.mce_nonbreaking {background-position:-340px -20px} +.defaultSkin span.mce_pastetext {background-position:-360px -20px} +.defaultSkin span.mce_pasteword {background-position:-380px -20px} +.defaultSkin span.mce_selectall {background-position:-400px -20px} +.defaultSkin span.mce_preview {background-position:-420px -20px} +.defaultSkin span.mce_print {background-position:-440px -20px} +.defaultSkin span.mce_cancel {background-position:-460px -20px} +.defaultSkin span.mce_save {background-position:-480px -20px} +.defaultSkin span.mce_replace {background-position:-500px -20px} +.defaultSkin span.mce_search {background-position:-520px -20px} +.defaultSkin span.mce_styleprops {background-position:-560px -20px} +.defaultSkin span.mce_table {background-position:-580px -20px} +.defaultSkin span.mce_cell_props {background-position:-600px -20px} +.defaultSkin span.mce_delete_table {background-position:-620px -20px} +.defaultSkin span.mce_delete_col {background-position:-640px -20px} +.defaultSkin span.mce_delete_row {background-position:-660px -20px} +.defaultSkin span.mce_col_after {background-position:-680px -20px} +.defaultSkin span.mce_col_before {background-position:-700px -20px} +.defaultSkin span.mce_row_after {background-position:-720px -20px} +.defaultSkin span.mce_row_before {background-position:-740px -20px} +.defaultSkin span.mce_merge_cells {background-position:-760px -20px} +.defaultSkin span.mce_table_props {background-position:-980px -20px} +.defaultSkin span.mce_row_props {background-position:-780px -20px} +.defaultSkin span.mce_split_cells {background-position:-800px -20px} +.defaultSkin span.mce_template {background-position:-820px -20px} +.defaultSkin span.mce_visualchars {background-position:-840px -20px} +.defaultSkin span.mce_abbr {background-position:-860px -20px} +.defaultSkin span.mce_acronym {background-position:-880px -20px} +.defaultSkin span.mce_attribs {background-position:-900px -20px} +.defaultSkin span.mce_cite {background-position:-920px -20px} +.defaultSkin span.mce_del {background-position:-940px -20px} +.defaultSkin span.mce_ins {background-position:-960px -20px} +.defaultSkin span.mce_pagebreak {background-position:0 -40px} +.defaultSkin span.mce_restoredraft {background-position:-20px -40px} +.defaultSkin .mce_spellchecker span.mceAction {background-position:-540px -20px} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css new file mode 100644 index 0000000..36f38ab --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css @@ -0,0 +1,35 @@ +body, td, pre {color:#000; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; margin:8px;} +body {background:#FFF;} +body.mceForceColors {background:#FFF; color:#000;} +h1 {font-size: 2em} +h2 {font-size: 1.5em} +h3 {font-size: 1.17em} +h4 {font-size: 1em} +h5 {font-size: .83em} +h6 {font-size: .75em} +.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;} +a.mceItemAnchor {display:inline-block; width:11px !important; height:11px !important; background:url(img/items.gif) no-repeat 0 0;} +td.mceSelected, th.mceSelected {background-color:#3399ff !important} +img {border:0;} +table {cursor:default} +table td, table th {cursor:text} +ins {border-bottom:1px solid green; text-decoration: none; color:green} +del {color:red; text-decoration:line-through} +cite {border-bottom:1px dashed blue} +acronym {border-bottom:1px dotted #CCC; cursor:help} +abbr {border-bottom:1px dashed #CCC; cursor:help} + +/* IE */ +* html body { +scrollbar-3dlight-color:#F0F0EE; +scrollbar-arrow-color:#676662; +scrollbar-base-color:#F0F0EE; +scrollbar-darkshadow-color:#DDD; +scrollbar-face-color:#E0E0DD; +scrollbar-highlight-color:#F0F0EE; +scrollbar-shadow-color:#F0F0EE; +scrollbar-track-color:#F5F5F5; +} + +img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px} +font[face=mceinline] {font-family:inherit !important} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css new file mode 100644 index 0000000..f012226 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css @@ -0,0 +1,117 @@ +/* Generic */ +body { +font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px; +scrollbar-3dlight-color:#F0F0EE; +scrollbar-arrow-color:#676662; +scrollbar-base-color:#F0F0EE; +scrollbar-darkshadow-color:#DDDDDD; +scrollbar-face-color:#E0E0DD; +scrollbar-highlight-color:#F0F0EE; +scrollbar-shadow-color:#F0F0EE; +scrollbar-track-color:#F5F5F5; +background:#F0F0EE; +padding:0; +margin:8px 8px 0 8px; +} + +html {background:#F0F0EE;} +td {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;} +textarea {resize:none;outline:none;} +a:link, a:visited {color:black;} +a:hover {color:#2B6FB6;} +.nowrap {white-space: nowrap} + +/* Forms */ +fieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;} +legend {color:#2B6FB6; font-weight:bold;} +label.msg {display:none;} +label.invalid {color:#EE0000; display:inline;} +input.invalid {border:1px solid #EE0000;} +input {background:#FFF; border:1px solid #CCC;} +input, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;} +input, select, textarea {border:1px solid #808080;} +input.radio {border:1px none #000000; background:transparent; vertical-align:middle;} +input.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;} +.input_noborder {border:0;} + +/* Buttons */ +#insert, #cancel, input.button, .updateButton { +border:0; margin:0; padding:0; +font-weight:bold; +width:94px; height:26px; +background:url(img/buttons.png) 0 -26px; +cursor:pointer; +padding-bottom:2px; +float:left; +} + +#insert {background:url(img/buttons.png) 0 -52px} +#cancel {background:url(img/buttons.png) 0 0; float:right} + +/* Browse */ +a.pickcolor, a.browse {text-decoration:none} +a.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;} +.mceOldBoxModel a.browse span {width:22px; height:20px;} +a.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;} +a.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)} +a.browse:hover span.disabled {border:1px solid white; background-color:transparent;} +a.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;} +.mceOldBoxModel a.pickcolor span {width:21px; height:17px;} +a.pickcolor:hover span {background-color:#B2BBD0;} +a.pickcolor:hover span.disabled {} + +/* Charmap */ +table.charmap {border:1px solid #AAA; text-align:center} +td.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;} +#charmap a {display:block; color:#000; text-decoration:none; border:0} +#charmap a:hover {background:#CCC;color:#2B6FB6} +#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center} +#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center} + +/* Source */ +.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;} +.mceActionPanel {margin-top:5px;} + +/* Tabs classes */ +.tabs {width:100%; height:18px; line-height:normal; background:url(img/tabs.gif) repeat-x 0 -72px;} +.tabs ul {margin:0; padding:0; list-style:none;} +.tabs li {float:left; background:url(img/tabs.gif) no-repeat 0 0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block;} +.tabs li.current {background:url(img/tabs.gif) no-repeat 0 -18px; margin-right:2px;} +.tabs span {float:left; display:block; background:url(img/tabs.gif) no-repeat right -36px; padding:0px 10px 0 0;} +.tabs .current span {background:url(img/tabs.gif) no-repeat right -54px;} +.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;} +.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;} + +/* Panels */ +.panel_wrapper div.panel {display:none;} +.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;} +.panel_wrapper {border:1px solid #919B9C; border-top:0px; padding:10px; padding-top:5px; clear:both; background:white;} + +/* Columns */ +.column {float:left;} +.properties {width:100%;} +.properties .column1 {} +.properties .column2 {text-align:left;} + +/* Titles */ +h1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;} +h3 {font-size:14px;} +.title {font-size:12px; font-weight:bold; color:#2B6FB6;} + +/* Dialog specific */ +#link .panel_wrapper, #link div.current {height:125px;} +#image .panel_wrapper, #image div.current {height:200px;} +#plugintable thead {font-weight:bold; background:#DDD;} +#plugintable, #about #plugintable td {border:1px solid #919B9C;} +#plugintable {width:96%; margin-top:10px;} +#pluginscontainer {height:290px; overflow:auto;} +#colorpicker #preview {float:right; width:50px; height:14px;line-height:1px; border:1px solid black; margin-left:5px;} +#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;} +#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;} +#colorpicker #light div {overflow:hidden;} +#colorpicker #previewblock {float:right; padding-left:10px; height:20px;} +#colorpicker .panel_wrapper div.current {height:175px;} +#colorpicker #namedcolors {width:150px;} +#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;} +#colorpicker #colornamecontainer {margin-top:5px;} +#colorpicker #picker_panel fieldset {margin:auto;width:325px;} diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/all-wcprops b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/all-wcprops new file mode 100644 index 0000000..d99e682 --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/all-wcprops @@ -0,0 +1,41 @@ +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img +END +buttons.png +K 25 +svn:wc:ra_dav:version-url +V 112 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png +END +menu_arrow.gif +K 25 +svn:wc:ra_dav:version-url +V 115 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif +END +items.gif +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif +END +menu_check.gif +K 25 +svn:wc:ra_dav:version-url +V 115 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif +END +progress.gif +K 25 +svn:wc:ra_dav:version-url +V 113 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif +END +tabs.gif +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/1050/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/entries b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/entries new file mode 100644 index 0000000..69a270f --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/entries @@ -0,0 +1,232 @@ +10 + +dir +1061 +http://django-grappelli.googlecode.com/svn/trunk/grappelli/media/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img +http://django-grappelli.googlecode.com/svn + + + +2010-03-11T06:34:08.843135Z +780 +haineault + + + + + + + + + + + + + + +35d8ae9e-4555-0410-bd5f-97af217b58d9 + +buttons.png +file + + + + +2010-06-04T12:51:47.385199Z +1e0acdc2135897e6a95bb40cfde2fbc6 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +3274 + +menu_arrow.gif +file + + + + +2010-06-04T12:51:47.385199Z +e21752451a9d80e276fef7b602bdbdba +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +68 + +items.gif +file + + + + +2010-06-04T12:51:47.388534Z +5cb42865ce70a58d420786854fed4ae1 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +70 + +menu_check.gif +file + + + + +2010-06-04T12:51:47.388534Z +c7d003885737f94768eecae49dcbca63 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +70 + +progress.gif +file + + + + +2010-06-04T12:51:47.388534Z +50c5e3e79b276c92df6cc52caeb464f0 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +1787 + +tabs.gif +file + + + + +2010-06-04T12:51:47.388534Z +93f97588a35da1f45fdcb975d4380913 +2010-03-11T06:34:08.843135Z +780 +haineault +has-props + + + + + + + + + + + + + + + + + + + + +1326 + diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/buttons.png.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/buttons.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/buttons.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/items.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/items.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/items.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_arrow.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_arrow.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_arrow.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_check.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_check.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/menu_check.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/progress.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/progress.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/progress.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/tabs.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/tabs.gif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/prop-base/tabs.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/buttons.png.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/buttons.png.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..7dd58418ba7cfe58ae7efdf174e0b223fe3aa6a0 GIT binary patch literal 3274 zcmV;*3^ntKP)vhvWz=ElHVTU+(h$oTm7rnFw= z#lG_L@z>Yab%+@B(Z}@j@}#p|h#d-Ha21r3lI-j0?ajsc`T6PS=IZI^?Ca|2$-?Z+ z#H%L@czAgD`1gZ@gX+q{=f}bK_x5aTZ1(o``1trpNJ!-4;q&tH-P_pe%f#ZsyXeTl z;^5vYDk=vD2k`Ll^6~KO%foAHYuvlE`uh6h#J%Up!SnO-^YZcM$G_phy57FF>B_@2 zG&J}3_vhy1;NIKl=jBRDN&x`@?dHyV<$1d3kwydU{JsOZD~j?##m9zqnmp zU4)q(-rU*i>gdkR%iP-6>Bzt4<>Tby;C6O)g+u7Fi^Yd9*S@7=d<>TRzqB->R^6~NS=;q{L zU|{$5_HJ%&j-5pI_VnZ97cymWMQsi>#$@a~zJm+b24>*?s`Kw_>-YEd@9ysC=jQ6jz~|-U_V)Jf?d;9X z&BMdN$uR=*^77r?-S6-3%uUYo000UBNklbM`ydMEin*+}whKg169D1bTAel#7r%w?GyUy@b*pMzXSyzY?h@ z3-N}8g51;~G~P<{m+Z|*(~X5P1-aeb(_^{eT^B}ch?tY zrBh#z)8LR*SPxv0!r@BdYYB7ULp;eMaut}B_J#FVuVkeMSfGbo7?foJiWR%d&AM{+ zs^x08)P*FXmS8r^_C58*7PqCixUdj?MS6NHS?Eksi!D8XyhZr=Ul1r3RCu*V{soi3 zzJ^?Tvstfq>vehyT!DW8#RRvmM-f(7XmRUwdY!u(w$X#+dUw5Iw6NIiz9Kb&!jyfs zz7wIdNc;t;*LCX96)%>lcXukOE>3f|baq;ZjG(Zu)>R>@_lO)o=&L%#B#GkczAA~% zJ;h4u>#M7(4qz2p-+=>`?3BIRtq%iL?xv=uYQ!E$>I_#&Nz$GyO&+B4c*3Gp3X9(3 zL1Jlz)e3vPUgz-w9vz_+(dP}js|kB#^j=K3^ni>w0`h8!(x#?9g}qC!cX=BCuM6&( zm{HZxpeuFbq|$0R$Ae@IeR~u%VLT0CqICm0PlIHiXU^_(xm;m9ufe020DG5mHvqWk zv8uF52_Ex?yhN-=D+`4b_He8EJfV;`4BcMHBKDz>m?ehj(7M1T6bhHhxbb3vhLBf} z9#$(b1<%2aSe0yhH{@9U)I&%AWYc zIPAg;vm2`V`mnv%C6P*i?he;)tN|CS4xL=c0F1H~_U7zAY%|$rv%=n-z1^6le`)u{ z*YKg5npCT%<`6pW+f3fp-AGO5i6%8Q_rbns?(Gjhd^-bx>l`XX=5}O=IaG*bwv76? zaniYw5uB5aA5)Fa?>_}jyz}mUk-uY3yhAwr!JRvQ6WP1>uUjLl_ha3iJ0Bo^bT(3x z7shViUd;fvZ=bv{NjcZYe!3W2THIdm#iiKApH8kjsg28H7e9%Wmv?oQ%M>AeU0sQy zqVhx+;KMzQTOkP=!J(@tMeLJ{CogYM8|!1Sn9o;6(`6+}%AqHLvdS15u$HTVqTf<( zC4o%FO%i@{>j<}Qaa>DK_yY38EQ4X%z$FDGltFX@PM5-W%5-&YXdpW@-~q5_&i|GNqZ~+av^y0n>~v!INtH&lx1Wh1SQibqf3B52jwA zjZ&#LRET@3d*jjGHV8YzLKN8($JME3AND@PQnp20B^V;tx-WWXLCoUijgQ|`DeQwm z?d(xt7Vcj1(W6HcLO41@sR%D$YD7#&F*8)1j5xA<^r5I$or2lC!v2BD6us^MW};dk ziCK1hrNueasZ-KKjplzy<`6Ur$k43g%Tq-DD4EoL?NHc%6pco|9108#4LzPk&qNS~ z@IymU5|pGwz$FNxA&0ar0v@vs%@FZFwc6#ch60lPrPZA8zFQV%Ba!Q$2jCz?AD{>m zABo%u27~f$#FXoiNTioa2Ms=s%z!aWFqu9F$&75jxYE{k<3?K~{tMssI3ADuf;JP4 z^6_{t&ItyUDPPCq@sE<}z@RA-p9y05jX*pem=#tQMf;`syXaAiOwI5-e>6Td^_UkR zVfopVjqHO&pbPeEGRaR(Ju{`8e?{Fe8htkP5OfcsHZZu(FW;SCB7e1)VzJe`-~MS^ z`S$K=EQakbUxL@k{7TNYvN8{^lNazhajyS(k}%djNZ!ZSjt{oC501Tn!wJH>z+uAs z*P#3G`Ja68Ud1PYo)nG&HZjU$oynf$VXWmLfl4;LhW7;=BP>X*f$Q?+>3y zm6jmg29B0i2HM2L?pADHyD$O!GO&h3IxI^|O#`aZI25KttkOis1efk`Zb7u4IESjV z4GwmPfid_p&J9l1GOSaja&pS)3G6@e;EDw5## zNmZJ(A5x{!DLc>`uo9qQq30%Q$+e$2XEbV!Mk8BEAO(yeX`~ckG*oGzF(xS|s?tzX z%ciO{SeVhsiAp?Owtw%KkyL4{1iE9DT0xu2LTswiQqfSQv4X&28CfHD>^<3DrR5Qn zM&rb#1uB*H2Qg`m?Z6qRrzi3 zK~m{Taw4qO??+<1JSSX0g+08D{Wid_tT+UljgqS;38RfbrBcNa-eyay(q#K%1L#KK z>dR(KRcXA#u|<{Ue^Zs_ci2wJRgc#17&s=|3t(>xARK=DOyDXl5HN18(zIB$Rh1U7 z$wd$E2n1yNBLnDG`R#UxEdU3Uh2ZUW9_OT2X%4&H?%$$HbJ%S}4J)jEB<5wG8q|kKzxu41Cw-5|H{*E`4`XOxxoD9Y}F^Z SLTQbO*E^TJI;F+RU=09Vu@yA{ literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/menu_check.gif.svn-base b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/.svn/text-base/menu_check.gif.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..adfdddccd7cac62a17d68873fa53c248bff8351a GIT binary patch literal 70 zcmZ?wbhEHb6k!lyXkcUjg8%>jEB<5wG8q|kKzxu41Cwk||H{*E`4`XG(j;}D)%x|1 U%)82UlRJ8EoZ9xTT7&iJhvXcHF*h)T1OnEW1i^?zgDfop1p?usL*#PMGT;HQkSO{q6FlJyb$PWkPf|h*eTST}7h8z$}MF(XD(aQ)ZLZ zM?v0rT<1C4XHn<6PbNA{XL@>1^)apdD_@tcYDrW#m`k#MmslI7p^P;Az74wGs`!SI zLs$GEZHsafXsu1i-WleMzAL(yw$-LK{0hv;6hrx8kx!!4$``dAyBnY9Jz&DqJo2$A z!(L$H=KqBeY~CF_viHPz^tTglc?D97CqEBjzUwH}7GI zapg8YZM~>2Wk%E$d&r@9ly9b4Q zJpM7T@}r63I(OExUlG%Xcjz3MU+9U^r!SkpjNThDtaP)7>j6L5z%o5|^hlVOyI*uY zt^UU6NTuY?(Lb4ZIU2Zb5Vz}Pb7KF%ivf&j^CL>$cDz?rMNTQQ|NqDVD7mhghUp%h zhIA{gi{S8y9YhIIbSv$`B!JiPi!0#4#Jge0)p&YVPHchWcyAn zQhvb8ggXGXs9;k`u9Uq*YB>O+Q3Rq=2hlLFcG{Q3ORH_}JnY8C+r%@}6|%ySP%bWG zV~mA;?P`Q2L_Ss})nrJ{$TmeA9Tt*4=}X5x%RioM@_?ZsKSEST-f+GBv~Ya)xX3O{ z8!d=YthI-13OI;RN~`>|6u5L{z20oBp%9MIj)n$!Aw{Wpq&Rtr4~*_74Gjo@3el>B zz(Rk;;>2lp73<2;d=r*8z%WkdsG=vRuG_fvxO#uN^El|+5Qoz^X!2MfxJ3m}vyi?> zMLLDi8+${Z6YbUg?8GNR>-+SwHKdFyr%HqWcs|X_l*-DAC^bG&KCqWg7-_`UlwQ`EdOp_LJkr`L$mHHs75uP?fSgVfsDjuE#ft2b8HDt0yFt!+;C zEgL=)G9ZFt4wa+N3Xg7FGc0~`&EEt6_%7tyzmnb9B_h1~7~GD4V-Bhx7~QKRkF>&aT>(-!Us@aJxAY@8E?HW$G8g zSz@7Jcp>iCp;lU1ieF6n7!oAa-1E!rS0 zF1lBFVS%G#ZO}b@*+bIk+7@Q|iG60vIDVpV%4tW8rKyzwRo_<25;8*Ky@n z-sX>W*b;M){5lB_Edc@m1`VHy0@dg$PTR9uE$O2&a?KAe?xRlCj&Z$iZYw>o1FUl`^eGF(ALoK@apvR@ALES^78HR@$B&M>-P5Y_4V=e^zifZ@AC5Q z@$v2U_Ve}i^85Sw`1tnr_VoSz{QUg;`uh3!`1kSe-|p?^>+0k0?&$36oE*q;kn@I-k&}bV{vSuh^^>3n?4| z;IMd1E}PHjw0g~MyWjA*d`_>=7l@jE&+q&HfPsR8goTEOh>41ejE#(BTJr4xw7TUm@OOFuz`c;&!9t#9!C>oFt6t5zwd>cgW6Pc$+rZ!o zxO3~?&AYen-@tNG7S|k~SJ3z>`o$Ddm(@N@>THSZ1l^mRxq}B^ypwDdw0~ zere{JXr`&=nrnnf=9^WrDd(JY)@f%NZo;W2ly~;&=bwOLndhE*25RV`h$b4qpoG4u z=%bKEiYB9tjw$J-m}V*mrIp61>8GHE8V0AGPATfCs76X^sZplt>Z^dR%IcG_)@rMq zvd((zuDp7gE33T*D{LLV&T8zj$R?}ovdlK?EUU#nEA6z@R%`9G*b0Edw%m5>?YH2D zEAF`DmTT_0=%%ax?z-%@>+ZYox~sqgCd6y+z4+#<@4o!@>u8O)@dg`oiyn5@f zOZvhvWz=ElHVTU+(h$oTm7rnFw= z#lG_L@z>Yab%+@B(Z}@j@}#p|h#d-Ha21r3lI-j0?ajsc`T6PS=IZI^?Ca|2$-?Z+ z#H%L@czAgD`1gZ@gX+q{=f}bK_x5aTZ1(o``1trpNJ!-4;q&tH-P_pe%f#ZsyXeTl z;^5vYDk=vD2k`Ll^6~KO%foAHYuvlE`uh6h#J%Up!SnO-^YZcM$G_phy57FF>B_@2 zG&J}3_vhy1;NIKl=jBRDN&x`@?dHyV<$1d3kwydU{JsOZD~j?##m9zqnmp zU4)q(-rU*i>gdkR%iP-6>Bzt4<>Tby;C6O)g+u7Fi^Yd9*S@7=d<>TRzqB->R^6~NS=;q{L zU|{$5_HJ%&j-5pI_VnZ97cymWMQsi>#$@a~zJm+b24>*?s`Kw_>-YEd@9ysC=jQ6jz~|-U_V)Jf?d;9X z&BMdN$uR=*^77r?-S6-3%uUYo000UBNklbM`ydMEin*+}whKg169D1bTAel#7r%w?GyUy@b*pMzXSyzY?h@ z3-N}8g51;~G~P<{m+Z|*(~X5P1-aeb(_^{eT^B}ch?tY zrBh#z)8LR*SPxv0!r@BdYYB7ULp;eMaut}B_J#FVuVkeMSfGbo7?foJiWR%d&AM{+ zs^x08)P*FXmS8r^_C58*7PqCixUdj?MS6NHS?Eksi!D8XyhZr=Ul1r3RCu*V{soi3 zzJ^?Tvstfq>vehyT!DW8#RRvmM-f(7XmRUwdY!u(w$X#+dUw5Iw6NIiz9Kb&!jyfs zz7wIdNc;t;*LCX96)%>lcXukOE>3f|baq;ZjG(Zu)>R>@_lO)o=&L%#B#GkczAA~% zJ;h4u>#M7(4qz2p-+=>`?3BIRtq%iL?xv=uYQ!E$>I_#&Nz$GyO&+B4c*3Gp3X9(3 zL1Jlz)e3vPUgz-w9vz_+(dP}js|kB#^j=K3^ni>w0`h8!(x#?9g}qC!cX=BCuM6&( zm{HZxpeuFbq|$0R$Ae@IeR~u%VLT0CqICm0PlIHiXU^_(xm;m9ufe020DG5mHvqWk zv8uF52_Ex?yhN-=D+`4b_He8EJfV;`4BcMHBKDz>m?ehj(7M1T6bhHhxbb3vhLBf} z9#$(b1<%2aSe0yhH{@9U)I&%AWYc zIPAg;vm2`V`mnv%C6P*i?he;)tN|CS4xL=c0F1H~_U7zAY%|$rv%=n-z1^6le`)u{ z*YKg5npCT%<`6pW+f3fp-AGO5i6%8Q_rbns?(Gjhd^-bx>l`XX=5}O=IaG*bwv76? zaniYw5uB5aA5)Fa?>_}jyz}mUk-uY3yhAwr!JRvQ6WP1>uUjLl_ha3iJ0Bo^bT(3x z7shViUd;fvZ=bv{NjcZYe!3W2THIdm#iiKApH8kjsg28H7e9%Wmv?oQ%M>AeU0sQy zqVhx+;KMzQTOkP=!J(@tMeLJ{CogYM8|!1Sn9o;6(`6+}%AqHLvdS15u$HTVqTf<( zC4o%FO%i@{>j<}Qaa>DK_yY38EQ4X%z$FDGltFX@PM5-W%5-&YXdpW@-~q5_&i|GNqZ~+av^y0n>~v!INtH&lx1Wh1SQibqf3B52jwA zjZ&#LRET@3d*jjGHV8YzLKN8($JME3AND@PQnp20B^V;tx-WWXLCoUijgQ|`DeQwm z?d(xt7Vcj1(W6HcLO41@sR%D$YD7#&F*8)1j5xA<^r5I$or2lC!v2BD6us^MW};dk ziCK1hrNueasZ-KKjplzy<`6Ur$k43g%Tq-DD4EoL?NHc%6pco|9108#4LzPk&qNS~ z@IymU5|pGwz$FNxA&0ar0v@vs%@FZFwc6#ch60lPrPZA8zFQV%Ba!Q$2jCz?AD{>m zABo%u27~f$#FXoiNTioa2Ms=s%z!aWFqu9F$&75jxYE{k<3?K~{tMssI3ADuf;JP4 z^6_{t&ItyUDPPCq@sE<}z@RA-p9y05jX*pem=#tQMf;`syXaAiOwI5-e>6Td^_UkR zVfopVjqHO&pbPeEGRaR(Ju{`8e?{Fe8htkP5OfcsHZZu(FW;SCB7e1)VzJe`-~MS^ z`S$K=EQakbUxL@k{7TNYvN8{^lNazhajyS(k}%djNZ!ZSjt{oC501Tn!wJH>z+uAs z*P#3G`Ja68Ud1PYo)nG&HZjU$oynf$VXWmLfl4;LhW7;=BP>X*f$Q?+>3y zm6jmg29B0i2HM2L?pADHyD$O!GO&h3IxI^|O#`aZI25KttkOis1efk`Zb7u4IESjV z4GwmPfid_p&J9l1GOSaja&pS)3G6@e;EDw5## zNmZJ(A5x{!DLc>`uo9qQq30%Q$+e$2XEbV!Mk8BEAO(yeX`~ckG*oGzF(xS|s?tzX z%ciO{SeVhsiAp?Owtw%KkyL4{1iE9DT0xu2LTswiQqfSQv4X&28CfHD>^<3DrR5Qn zM&rb#1uB*H2Qg`m?Z6qRrzi3 zK~m{Taw4qO??+<1JSSX0g+08D{Wid_tT+UljgqS;38RfbrBcNa-eyay(q#K%1L#KK z>dR(KRcXA#u|<{Ue^Zs_ci2wJRgc#17&s=|3t(>xARK=DOyDXl5HN18(zIB$Rh1U7 z$wd$E2n1yNBLnDG`R#UxEdU3Uh2ZUW9_OT2X%4&H?%$$HbJ%S}4J)jEB<5wG8q|kKzxu41Cw-5|H{*E`4`XOxxoD9Y}F^Z SLTQbO*E^TJI;F+RU=09Vu@yA{ literal 0 HcmV?d00001 diff --git a/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif b/assets/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif new file mode 100644 index 0000000000000000000000000000000000000000..adfdddccd7cac62a17d68873fa53c248bff8351a GIT binary patch literal 70 zcmZ?wbhEHb6k!lyXkcUjg8%>jEB<5wG8q|kKzxu41Cwk||H{*E`4`XG(j;}D)%x|1 U%)82UlRJ8EoZ9xTT7&iJhvXcHF*h)T1OnEW1i^?zgDfop1p?usL*#PMGT;HQkSO{q6FlJyb$PWkPf|h*eTST}7h8z$}MF(XD(aQ)ZLZ zM?v0rT<1C4XHn<6PbNA{XL@>1^)apdD_@tcYDrW#m`k#MmslI7p^P;Az74wGs`!SI zLs$GEZHsafXsu1i-WleMzAL(yw$-LK{0hv;6hrx8kx!!4$``dAyBnY9Jz&DqJo2$A z!(L$H=KqBeY~CF_viHPz^tTglc?D97CqEBjzUwH}7GI zapg8YZM~>2Wk%E$d&r@9ly9b4Q zJpM7T@}r63I(OExUlG%Xcjz3MU+9U^r!SkpjNThDtaP)7>j6L5z%o5|^hlVOyI*uY zt^UU6NTuY?(Lb4ZIU2Zb5Vz}Pb7KF%ivf&j^CL>$cDz?rMNTQQ|NqDVD7mhghUp%h zhIA{gi{S8y9YhIIbSv$`B!JiPi!0#4#Jge0)p&YVPHchWcyAn zQhvb8ggXGXs9;k`u9Uq*YB>O+Q3Rq=2hlLFcG{Q3ORH_}JnY8C+r%@}6|%ySP%bWG zV~mA;?P`Q2L_Ss})nrJ{$TmeA9Tt*4=}X5x%RioM@_?ZsKSEST-f+GBv~Ya)xX3O{ z8!d=YthI-13OI;RN~`>|6u5L{z20oBp%9MIj)n$!Aw{Wpq&Rtr4~*_74Gjo@3el>B zz(Rk;;>2lp73<2;d=r*8z%WkdsG=vRuG_fvxO#uN^El|+5Qoz^X!2MfxJ3m}vyi?> zMLLDi8+${Z6YbUg?8GNR>-+SwHKdFyr%HqWcs|X_l*-DAC^bG&KCqWg7-_`UlwQ`EdOp_LJkr`L$mHHs75uP?fSgVfsDjuE#ft2b8HDt0yFt!+;C zEgL=)G9ZFt4wa+N3Xg7FGc0~`&EEt6_%7tyzmnb9B_h1~7~GD4V-Bhx7~QKRkF>&aT>(-!Us@aJxAY@8E?HW$G8g zSz@7Jcp>iCp;lU1ieF6n7!oAa-1E!rS0 zF1lBFVS%G#ZO}b@*+bIk+7@Q|iG60vIDVpV%4tW8rKyzwRo_<25;8*Ky@n z-sX>W*b;M){5lB_Edc@m1`VHy0@dg$PTR9uE$O2&a?KAe?xRlCj&Z$iZYw>o1FUl`^eGF(ALoK@apvR@ALES^78HR@$B&M>-P5Y_4V=e^zifZ@AC5Q z@$v2U_Ve}i^85Sw`1tnr_VoSz{QUg;`uh3!`1kSe-|p?^>+0k0?&$36oE*q;kn@I-k&}bV{vSuh^^>3n?4| z;IMd1E}PHjw0g~MyWjA*d`_>=7l@jE&+q&HfPsR8goTEOh>41ejE#(BTJr4xw7TUm@OOFuz`c;&!9t#9!C>oFt6t5zwd>cgW6Pc$+rZ!o zxO3~?&AYen-@tNG7S|k~SJ3z>`o$Ddm(@N@>THSZ1l^mRxq}B^ypwDdw0~ zere{JXr`&=nrnnf=9^WrDd(JY)@f%NZo;W2ly~;&=bwOLndhE*25RV`h$b4qpoG4u z=%bKEiYB9tjw$J-m}V*mrIp61>8GHE8V0AGPATfCs76X^sZplt>Z^dR%IcG_)@rMq zvd((zuDp7gE33T*D{LLV&T8zj$R?}ovdlK?EUU#nEA6z@R%`9G*b0Edw%m5>?YH2D zEAF`DmTT_0=%%ax?z-%@>+ZYox~sqgCd6y+z4+#<@4o!@>u8O)@dg`oiyn5@f zOZ